Skip to content

Latest commit

 

History

History
309 lines (228 loc) · 10.6 KB

File metadata and controls

309 lines (228 loc) · 10.6 KB

Code of Conduct

Our Pledge

We as members, contributors, and leaders pledge to make participation in Valence Shell a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, caste, color, religion, or sexual identity and orientation.

We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community.

We especially emphasize emotional safety: Contributors should feel psychologically safe to experiment, make mistakes, ask questions, and learn.

Our Standards

Positive Behaviors ✅

Examples of behavior that contributes to a positive environment:

In Technical Discussions:

  • Using welcoming and inclusive language
  • Being respectful of differing viewpoints and experiences
  • Gracefully accepting constructive criticism
  • Focusing on what is best for the community
  • Showing empathy towards other community members
  • Acknowledging uncertainty ("I'm not sure, but..." is valuable)
  • Celebrating others' contributions and successes

In Code Review:

  • Providing specific, actionable feedback
  • Separating code critique from personal critique
  • Assuming good intent
  • Asking questions before making judgments
  • Offering help, not just criticism
  • Recognizing that "perfect is the enemy of good"

In Collaboration:

  • Respecting time zones and response times
  • Being patient with newcomers
  • Sharing knowledge generously
  • Admitting when you don't know something
  • Asking for help when needed
  • Defaulting to transparency

Emotional Safety:

  • Creating space for mistakes ("I was wrong" is strength)
  • Avoiding blame culture
  • Recognizing burnout and encouraging breaks
  • Respecting "no" without requiring justification
  • Acknowledging anxiety around formal methods/proofs

Unacceptable Behaviors ❌

The following behaviors are considered harassment and are unacceptable:

Direct Harassment:

  • Violence, threats of violence, or violent language
  • Discriminatory jokes, language, or imagery
  • Posting (or threatening to post) others' private information ("doxxing")
  • Personal attacks, insults, or derogatory comments
  • Unwelcome sexual attention or advances
  • Stalking or following (online or in person)

Indirect Harassment:

  • Deliberate intimidation
  • Sustained disruption of discussions
  • "Trolling" or deliberately inflammatory comments
  • Pattern of inappropriate social contact
  • Advocating for, or encouraging, any of the above behaviors

Professional Misconduct:

  • Publishing others' work without attribution (violates Palimpsest License)
  • Sabotaging project infrastructure (CI/CD, repos, etc.)
  • Introducing malicious code
  • Deliberately wasting maintainers' time
  • Repeatedly ignoring maintainer decisions
  • Weaponizing the Code of Conduct itself

Subtle But Harmful:

  • "Well, actually..." corrections on trivial matters
  • Gatekeeping ("you're not a real programmer if...")
  • Subtle put-downs ("everyone knows that...")
  • Tone policing marginalized groups
  • "Just joking" after offensive comments
  • Persistent unwanted mentorship or advice

Emotional Safety & Reversibility Culture

The "Undo" Mindset: Valence Shell proves operations are reversible. Our community should embody this:

  • Mistakes are reversible: Code can be reverted, words can be apologized for
  • Experimentation is encouraged: If it's reversible, try it!
  • "I was wrong" is celebrated: Changing your mind is growth
  • Failure is information: Failed proofs teach us what's hard
  • Anxiety is normal: Formal verification is intimidating, we get it

Safe to:

  • Ask "basic" questions
  • Admit you don't understand formal methods
  • Submit imperfect pull requests
  • Say "I need help with this proof"
  • Take time to learn Coq/Lean/Agda
  • Step back when overwhelmed

Scope

This Code of Conduct applies:

Within project spaces:

  • GitHub/GitLab issues, pull/merge requests, discussions
  • Project chat/communication channels (if created)
  • Official social media accounts
  • Project events (online or in-person)
  • Email correspondence about the project

In public spaces when representing the project:

  • Using official project email
  • Acting as an appointed representative
  • Wearing/displaying project branding

Does NOT apply:

  • Personal social media (unless claiming to represent project)
  • Private correspondence unrelated to project
  • Other projects (they have their own CoCs)

Enforcement Responsibilities

Project maintainers are responsible for clarifying and enforcing standards of acceptable behavior and will take appropriate and fair corrective action in response to any behavior that they deem inappropriate, threatening, offensive, or harmful.

Maintainers have the right and responsibility to remove, edit, or reject:

  • Comments
  • Commits
  • Code
  • Wiki edits
  • Issues
  • Other contributions

that are not aligned with this Code of Conduct, and will communicate reasons for moderation decisions when appropriate.

Reporting

How to Report

If you experience or witness unacceptable behavior, or have any other concerns, please report it by:

  1. Email: [To be added - maintainer contact]
  2. Private message: To any maintainer (see MAINTAINERS.md)
  3. GitHub: Private vulnerability report (for serious issues)

What to Include

Please include in your report:

  • What happened: Specific details of the incident(s)
  • When: Date(s) and time(s)
  • Where: Link(s) to issue/PR/comment
  • Who: Username(s) of those involved
  • Impact: How this affected you or others
  • Evidence: Screenshots, quotes, logs (if available)
  • Desired outcome: What would help resolve this?

Confidentiality

All reports will be handled with discretion. We will:

  • Keep reporter identity confidential (unless you request otherwise)
  • Not share details publicly
  • Only involve people who need to be involved
  • Protect reporters from retaliation

Enforcement Guidelines

Maintainers will follow these Community Impact Guidelines:

1. Correction

Community Impact: Minor, first-time inappropriate behavior.

Consequence:

  • Private written warning
  • Explanation of violation
  • Request for public apology (if public offense)

Example: Using gendered language, mild put-down, "well actually" pattern

2. Warning

Community Impact: Violation through single incident or series of actions.

Consequence:

  • Formal warning with consequences for continued behavior
  • Temporary ban from interaction (1-4 weeks)
  • No direct contact with people involved during ban
  • Violating terms may lead to permanent ban

Example: Repeated gatekeeping, sustained trolling, dismissive behavior

3. Temporary Ban

Community Impact: Serious violation, including sustained inappropriate behavior.

Consequence:

  • Temporary ban from any interaction or public communication (1-6 months)
  • No public or private interaction with community
  • Violating terms may lead to permanent ban

Example: Harassment, doxxing threat, deliberate intimidation pattern

4. Permanent Ban

Community Impact: Pattern of violations, severe single incident, or refusal to reform.

Consequence:

  • Permanent ban from all project spaces
  • Contributions removed (if violate license or introduced malice)
  • May be reported to platform (GitHub/GitLab)

Example: Sexual harassment, sustained trolling, malicious code, doxxing

Appeals

If you believe an enforcement decision was made in error:

  1. Submit appeal to maintainers (different from one who made decision if possible)
  2. Include:
    • Original incident details
    • Enforcement decision you're appealing
    • Why you believe it was in error
    • What you've learned (if applicable)
  3. Timeline: Maintainers will respond within 14 days
  4. Final decision: Maintainers' decision on appeal is final

Acknowledgment of Harm

If you've been informed that your behavior violated this Code of Conduct:

What helps:

  • Acknowledge the impact (even if intent was good)
  • Apologize sincerely
  • Commit to changed behavior
  • Learn from the experience
  • Move forward constructively

What doesn't help:

  • Defending intent ("but I didn't mean...")
  • Minimizing impact ("you're too sensitive")
  • Blaming the reporter
  • Demanding forgiveness immediately
  • Relitigating the decision publicly

Remember: Impact matters more than intent.

Attribution & License

This Code of Conduct is adapted from:

Available under CC BY 4.0.

Special Acknowledgment: Formal Methods Community

Formal verification can be intimidating. We acknowledge:

  • Proof assistants have steep learning curves
  • "Trivial" proofs can take hours
  • Everyone struggles with tactics
  • Asking for help is strength, not weakness
  • Some find formal methods anxiety-inducing

Our community commits to:

  • Patient teaching for newcomers
  • Celebrating small proof victories
  • Sharing "I was stuck too" stories
  • Pointing to learning resources
  • Normalizing proof iteration

Reversibility Applies Here Too

Just as our software proves reversibility, our community embraces:

  • Revertible mistakes: Apologize, learn, grow
  • Changeable minds: "I was wrong" is encouraged
  • Undo-able decisions: Policy can be updated
  • Recoverable trust: Reformed behavior is recognized

We're all human. We all make mistakes. The key is learning and improving.

Questions?

If you have questions about this Code of Conduct:

  • General: Open a GitHub discussion (TBD) or issue with question label
  • Specific incident: Contact maintainers privately
  • Suggestions: Submit PR to improve this document!

Enforcement Transparency

We will:

  • Publish anonymized enforcement statistics annually (number of reports, outcomes)
  • Update this policy based on community feedback
  • Acknowledge when we make mistakes in enforcement

We will NOT:

  • Name reporters or subjects publicly (unless they request and consent)
  • Share private report details
  • Use CoC enforcement for technical disputes (that's for maintainer decisions)

Last Updated: 2025-11-22 Version: 1.0 Based on: Contributor Covenant 2.1 + CCCP Manifesto + Rust CoC Contact: See MAINTAINERS.md

Summary: Be kind. Be professional. Assume good intent. Focus on ideas, not people. Mistakes are reversible. We're all learning together.