| Field | |
|---|---|
| Type | ADR |
| Author | <primary author> · supporting: <names> |
| Date | <created> |
| Last updated | <date> |
| Status | Draft · In Review · Accepted · Implemented · Rejected · Superseded |
1. Context
What exists today, and why this decision is on the table. Lead with the point — clear, clean, concise.
2. Problem statement
The concrete problems, grouped (e.g. flexibility, performance, roadmap blockers). Bold each sub-point.
3. Requirements
What a good solution must satisfy — in priority order, each with its rationale. These become the axes you judge options on.
4. Evaluation
Score the options against the dimensions that matter. Tie each dimension back to a requirement. Fix the dimensions before scoring — so the axes judge the options, not the other way around.
| Dimension (→ requirement) | A. <option> | B. <option> | C. <option> |
|---|---|---|---|
| <dimension> | 🔴 why | 🟡 why | 🟢 why |
| <dimension> |
5. Decision
We choose <option>.
Why it best balances the requirements — and why each alternative was eliminated.
6. Options