2.7 KiB
Governance
Overview
career-ops is maintained by @santifer under a BDFL (Benevolent Dictator for Life) model with a clear path for community members to earn trust and take on responsibilities.
The goal is to build a self-sustaining community where the project thrives even when the maintainer is offline.
Decision Making
- Architecture decisions (CLAUDE.md, scoring system, data contract) — maintainer only
- New features — require an approved issue before PR submission
- Bug fixes — can be submitted directly with a clear description
- Documentation and translations — welcome from anyone, low barrier
Contributor Ladder
Anyone can grow their role in the project. Roles are earned through sustained, quality contributions — not requested or assigned.
Participant
Everyone starts here.
- Follow the Code of Conduct
- Open issues, comment on PRs, help others in Discord
- Submit bug reports with reproduction steps
Contributor
Earned after 2+ merged PRs.
- Listed in release notes when their contributions ship
- Input is weighted more heavily in issue discussions
- Can be tagged for review on PRs in their area of expertise
Triager
Earned after sustained contribution + demonstrated understanding of the project's architecture.
- Can label and categorize issues
- Can close duplicates and redirect support questions
- Can request changes on PRs (non-binding)
- Nominated by the maintainer based on observed behavior
Reviewer
Earned after 5+ quality PRs merged + track record of helpful code reviews.
- Can approve PRs (maintainer still merges)
- Listed in CONTRIBUTORS.md
- Invited to architectural discussions before major changes
Maintainer
Earned after 6+ months of sustained contribution + demonstrated alignment with project values.
- Can merge PRs
- Can release new versions
- Participates in governance decisions
- Voted in by existing maintainers
How to Level Up
You don't apply for roles. They emerge naturally:
- Start contributing — fix a bug, translate a mode, improve docs
- Be consistent — one quality PR per month beats ten rushed ones
- Help others — answer questions in Discord, review PRs, triage issues
- Understand the project — read CLAUDE.md, DATA_CONTRACT.md, the architecture docs
- The maintainer will notice — and reach out when the time is right
Values
- Quality over quantity — we'd rather have 10 great features than 100 mediocre ones
- User files are sacred — the data contract is non-negotiable
- Human in the loop — the system recommends, the human decides
- Respect everyone's time — maintainers, contributors, and users alike