Contribution Guidelines
Whether open-source or internal, Solana repos need clear contribution rules: who reviews program changes, how to propose ADRs, and how this guide accepts article fixes.
Search across all documentation pages
Whether open-source or internal, Solana repos need clear contribution rules: who reviews program changes, how to propose ADRs, and how this guide accepts article fixes.
Quick-reference recipe card - copy-paste ready.
## PR checklist
- [ ] Tests pass (anchor test / LiteSVM)
- [ ] IDL updated if program interface changed
- [ ] ADR linked if architectural
- [ ] Runbook updated if ops changed
- [ ] No secrets in diffWhen to reach for this:
CONTRIBUTING.md# CONTRIBUTING.md (excerpt)
## Branches
- `main` protected; require 2 approvals on `programs/`
- Feature: `feat/withdraw-v2`
## Commits
feat(lending): add withdraw_v2 instruction
fix(client): bigint amount parsing
docs(incident): update pause runbook
## Security
security@company.com - do not open public issues for exploits# CODEOWNERS
programs/ @solana-team-leads
docs/runbooks/ @sre-oncall
site/solana/ @docs-maintainersWhat this demonstrates:
| Change | Reviewers | Extra gates |
|---|---|---|
| Program logic | 2 seniors + security | LiteSVM attacker tests |
| Client only | 1 senior | Simulate smoke |
| Docs guide | 1 maintainer | lint-docs |
| Runbook | Ops owner | Drill optional |
site/solana/lint-docs required check.cargo deny license allowlist.| Alternative | Use When | Don't Use When |
|---|---|---|
| Fork + PR only | Open source | Internal monorepo |
| Trunk merge | Solo maintainer | Fund-holding program |
| DCO sign-off | Apache projects | Small internal team |
Pick good first issue on client or docs; not program security.
Org policy; open source often yes.
Document in CONTRIBUTING - e.g. 2 business days first response.
Author cannot merge own program PR; on-call merge for hotfix with IC approval.
From conventional commits on tag; IDL version bump included.
English first; translate-es pipeline post-launch.
Human must verify Solana claims; reviewer accountability unchanged.
ADR + semver + sunset date in CHANGELOG.
GitHub discussion -> internal triage -> eng RFC if accepted.
Follow sme-content-article spine; see sibling pages in section.
Stack versions: This page was written for Agave 4.1.1, Solana CLI 3.0.10, Anchor 0.32.1, anchor-lang 0.32.1, Rust 1.91.1, @solana/kit 7.0.0, Surfpool 0.12.0, and LiteSVM 0.6.x.
Reviewed by Chris St. John·Last updated Jul 16, 2026