ProficientNowTechRFCs

8. Rationale Section Requirements

RFC Authoring Standards                                           Section 8
Category: Standards Track                          Rationale Requirements

8. Rationale Section Requirements

← Invariants | Index | Next →


8.1 Purpose

The rationale section documents why alternatives were rejected. This:

PurposeBenefit
Prevents re-litigationDecisions don't need to be justified again
Provides contextFuture architects understand constraints
Documents trade-offsShows what was considered
Links to invariantsExplains which rules drove decisions

8.2 Required Structure for Each Alternative

Each rejected alternative MUST include:

ComponentDescription
DescriptionWhat the alternative is
Why It Was AttractiveGenuine benefits considered
Why It Was RejectedSpecific failures or violations
Invariants ViolatedReference to specific invariants
ConclusionSummary judgment

Format

### N.N.N <Alternative Name>
 
**Description**: What the alternative is.
 
**Why It Was Attractive**:
- Genuine benefit 1
- Genuine benefit 2
 
**Why It Was Rejected**:
- Specific failure 1
- Specific failure 2
- Violates Invariant N
 
**Conclusion**: Summary judgment.

8.3 Example

### 9.1.2 Direct Azure AD Integration
 
**Description**: Each application integrates directly with Azure AD
without a platform identity layer.
 
**Why It Was Attractive**:
- Simpler initial setup—no Keycloak to maintain
- Native Microsoft tooling support
- One fewer component in the stack
 
**Why It Was Rejected**:
- Each application requires separate Azure AD configuration
- No centralized platform-level authorization
- Cannot add platform-specific claims or roles
- Violates Invariant 2 (Authentication Chain)
 
**Conclusion**: Direct integration prevents unified platform identity
and would require each team to implement authentication separately.

8.4 Intellectual Honesty

RuleDescription
Acknowledge benefitsAcknowledge genuine benefits of rejected alternatives
Context mattersExplain context where alternatives might be appropriate
No dismissivenessAvoid dismissive language
Document attemptsDocument if alternative was actually tried

End of Section 8 — RFC Authoring Standards

On this page