This document defines the roles and responsibilities in the Stoolap Chain project following the CipherOcto Blueprint.
Humans govern. Agents implement.
| Activity | Human | Agent |
|---|---|---|
| Define Use Cases | ✓ | ✗ |
| Write RFCs | ✓ | ✗ |
| Accept RFCs | ✓ | ✗ |
| Create Missions | ✓ | ✓ |
| Claim Missions | ✓ | ✓ |
| Implement RFCs | ✓ | ✓ |
| Review PRs | ✓ | ✗ |
| Merge to main | ✓ | ✗ |
Responsibilities:
- Accept/reject RFCs
- Review and merge PRs
- Enforce the Blueprint workflow
- Guide project direction
Requirements:
- Deep understanding of the codebase
- Commitment to the Blueprint process
- Active participation in RFC discussions
Responsibilities:
- Write RFCs for proposed changes
- Claim and complete missions
- Submit PRs for review
- Participate in RFC discussions
Requirements:
- Follow the Blueprint workflow
- Implement according to RFC specs
- Write tests for all code
Responsibilities:
- Draft RFC from use case motivation
- Address community feedback
- Revise based on review
- Create missions after acceptance
| Capability | Description |
|---|---|
| Read Missions | Browse missions/open/ |
| Claim Missions | Move mission to missions/claimed/ |
| Implement Specs | Execute according to RFC |
| Write Tests | Ensure quality and coverage |
| Submit PRs | Standard contribution flow |
| Update Missions | Move through lifecycle (claimed → with-pr → archived) |
| Restriction | Reason |
|---|---|
| Create Use Cases | Human direction required for intent |
| Accept RFCs | Governance decision requires human judgment |
| Bypass Missions | Must follow Blueprint workflow |
| Skip RFC Process | Shortcuts create technical debt |
┌──────────────────┐
│ RFC Accepted │
└────────┬─────────┘
│
▼
┌──────────────────┐
│ Mission Created │ → missions/open/
└────────┬─────────┘
│
▼
┌──────────────────┐
│ Claimed │ → missions/claimed/ (Human or Agent)
└────────┬─────────┘
│
▼
┌──────────────────┐
│ PR Submitted │ → missions/with-pr/
└────────┬─────────┘
│
├─ Accept → Archive (completed)
└─ Reject → Return to claimed
| State | Timeout | Action |
|---|---|---|
| Claimed | 14 days | Return to open |
| With PR | 7 days | Follow up or close |
- Draft RFC from use case motivation
- Submit PR for discussion
- Add to
rfcs/asXXXX-title.md(draft number)
- Community discussion (7-day minimum)
- Maintainer feedback
- Revisions as needed
- At least 2 maintainer approvals
- No blocking objections
- Renumber to final RFC number
- Create missions from accepted RFC
| Outcome | Action |
|---|---|
| Accepted | Renumber, create missions |
| Rejected | Move to rfcs/archived/ with reasoning |
| Needs Work | Continue discussion |
- Reference the mission being completed
- Link to the RFC being implemented
- Include tests
- Ensure all CI checks pass
- Matches RFC specification
- Tests pass
- No unnecessary changes
- Follows coding standards
- At least 1 maintainer approval
- All CI checks pass
- No blocking review comments
| Question | Who Decides | Based On |
|---|---|---|
| Is this worth building? | Humans | Use Cases |
| What should we build? | Humans | RFCs |
| How do we build it? | Humans + Agents | Missions |
| Is the implementation correct? | Humans | Code Review |
| Is the RFC accepted? | Maintainers | RFC Process |
The Blueprint creates clarity:
- Use Cases tell us WHY
- RFCs tell us WHAT
- Missions tell us HOW
Humans provide direction. Agents (and humans) provide execution.
When in doubt, refer to the appropriate layer of the Blueprint.