RFCs are public design proposals for changes that affect project direction, public contracts, security behavior, or contributor expectations.
Use an RFC before changing:
- public schemas or wire formats
- decision effect semantics
- policy behavior
- approval or revocation behavior
- audit receipt structure
- adapter contracts
- storage source of truth
- security model
- compatibility guarantees
Small bug fixes and narrow tests usually do not need an RFC.
- Open an issue describing the problem.
- Add an RFC file under this directory.
- Discuss tradeoffs in the pull request.
- Update the RFC until the direction is clear.
- If accepted, implement the change and record lasting decisions as ADRs.
Use:
NNNN-short-title.md
Example:
0001-action-request-schema.md
Copy 0000-template.md for new RFCs.