42 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# Architecture Decision Records (ADRs)
 | 
						||
 | 
						||
Architecture Decision Records document long-lived choices that shape StellaOps architecture, security posture, and operator experience. They complement RFCs by capturing the final call and the context that led to it.
 | 
						||
 | 
						||
## When to file an ADR
 | 
						||
- Decisions that affect cross-module contracts, persistence models, or external interfaces.
 | 
						||
- Security or compliance controls with on-going operational ownership.
 | 
						||
- Rollout strategies that require coordination across guilds or sprints.
 | 
						||
- Reversals or deprecations of previously accepted ADRs.
 | 
						||
 | 
						||
Small, module-local refactors that do not modify public behaviour can live in commit messages instead.
 | 
						||
 | 
						||
## Workflow at a glance
 | 
						||
1. Copy `docs/adr/0000-template.md` to `docs/adr/NNNN-short-slug.md` with a zero-padded sequence (see **Numbering**).
 | 
						||
2. Fill in context, decision, consequences, and alternatives. Include links to RFCs, issues, benchmarks, or experiments.
 | 
						||
3. Request async review from the impacted guilds. Capture sign-offs in the **Deciders** field.
 | 
						||
4. Merge the ADR with the code/config changes (or in a preparatory PR).
 | 
						||
5. Announce the accepted ADR in the Docs Guild channel or sprint notes so downstream teams can consume it.
 | 
						||
 | 
						||
## Numbering and status
 | 
						||
- Use zero-padded integers (e.g., `0001`, `0002`) in file names and the document header. Increment from the highest existing number.
 | 
						||
- Valid statuses: `Proposed`, `Accepted`, `Rejected`, `Deprecated`, `Superseded`. Update the status when follow-up work lands.
 | 
						||
- When an ADR supersedes another, link them in both documents’ **References** sections.
 | 
						||
 | 
						||
## Review expectations
 | 
						||
- Highlight edge-case handling, trade-offs, and determinism requirements.
 | 
						||
- Include operational checklists for any new runtime path (quota updates, schema migrations, credential rotation, etc.).
 | 
						||
- Attach diagrams under `docs/adr/assets/` when visuals improve comprehension.
 | 
						||
- Add TODO tasks for follow-up work in the relevant module’s `TASKS.md` and link them from the ADR.
 | 
						||
 | 
						||
## Verification checklist
 | 
						||
- [ ] `Status`, `Date`, `Authors`, and `Deciders` populated.
 | 
						||
- [ ] Links to code/config PRs or experiments recorded under **References**.
 | 
						||
- [ ] Consequences call out migration or rollback steps.
 | 
						||
- [ ] Announcement posted to Docs Guild updates (or sprint log).
 | 
						||
 | 
						||
## Related resources
 | 
						||
- [Docs Guild Task Board](../TASKS.md)
 | 
						||
- [High-Level Architecture Overview](../07_HIGH_LEVEL_ARCHITECTURE.md)
 | 
						||
- [Coding Standards](../18_CODING_STANDARDS.md)
 | 
						||
- [Release Engineering Playbook](../13_RELEASE_ENGINEERING_PLAYBOOK.md)
 |