RFC Process¶
Significant design changes to OIAF go through an RFC (Request for Comments) process to ensure alignment and review before implementation.
When to Write an RFC¶
- New adapters or major adapter changes
- Changes to the policy format or evaluation semantics
- New MFA methods or challenge flow changes
- Storage backend changes
- Breaking API changes
- Security-relevant design decisions
Process¶
- Draft — Copy the template below into
docs/rfcs/NNNN-title.md. - Open PR — Submit the RFC as a pull request for discussion.
- Review — Maintainers and community comment. Iterate on the design.
- Decision — A maintainer marks the RFC as
acceptedorrejected. - Implement — Accepted RFCs are implemented in subsequent PRs referencing the RFC.
Template¶
# RFC-NNNN: Title
- **Status:** draft | accepted | rejected | implemented
- **Author:** @username
- **Created:** YYYY-MM-DD
- **Updated:** YYYY-MM-DD
## Summary
One-paragraph summary of the proposal.
## Motivation
Why is this change needed? What problem does it solve?
## Proposal
Detailed design. Include data structures, API changes, configuration, and
interaction with existing components.
## Alternatives Considered
What other approaches were evaluated and why were they rejected?
## Security Considerations
How does this affect OIAF's security posture? Reference the threat model if
applicable.
## Compatibility
Is this backward-compatible? What migration is required?
## Implementation Plan
Phases, milestones, and testing strategy.
Numbering¶
RFCs are numbered sequentially starting at 0001. Reserve the next number by
checking existing files in docs/rfcs/.