1.2 KiB
1.2 KiB
Architecture Decision Records (ADR)
ADRs are short, versioned documents that capture why we made a major architectural/product decision. They prevent “tribal knowledge” and make reversals/migrations explicit.
Phase: Phase 0 (Planning)
Status: Draft — adopt in Phase 1
Owner: Tech Leads
When to write an ADR
Create an ADR whenever a decision is:
- hard to reverse later,
- affects multiple modules/teams,
- has meaningful trade‑offs,
- changes default recommendations in
/docs.
Examples:
- modular monolith vs microservices,
- Postgres +
pgvectorvs external vector DB, - billing model (subscription vs usage),
- RAG vs non‑RAG architecture,
- auth provider choice.
Where ADRs live
One file per decision in docs/adr/.
Naming convention:
0001-short-title.md0002-another-decision.md
Status lifecycle:
proposed → accepted → (superseded | rejected)
How ADRs relate to RECOMMENDATIONS.md
RECOMMENDATIONS.mdis the current snapshot of locked decisions and constraints.- ADRs are the history and rationale behind those decisions.
Link every ADR from
RECOMMENDATIONS.mdonce accepted.
Template
Start from docs/adr/0000-template.md.