This directory contains Architectural Decision Records (ADRs) documenting significant architectural decisions made for the Ambient Code Platform.
An ADR captures:
- Context: What problem were we solving?
- Options: What alternatives did we consider?
- Decision: What did we choose and why?
- Consequences: What are the trade-offs?
ADRs are immutable once accepted. If a decision changes, we create a new ADR that supersedes the old one.
Create an ADR for decisions that:
- Affect the overall architecture
- Are difficult or expensive to reverse
- Impact multiple components or teams
- Involve significant trade-offs
- Will be questioned in the future ("Why did we do it this way?")
Examples:
- Choosing a programming language or framework
- Selecting a database or messaging system
- Defining authentication/authorization approach
- Establishing API design patterns
- Multi-tenancy architecture decisions
Not ADR-worthy:
- Trivial implementation choices
- Decisions easily reversed
- Component-internal decisions with no external impact
- Propose: Copy
template.mdtoNNNN-title.mdwith status "Proposed" - Discuss: Share with team, gather feedback
- Decide: Update status to "Accepted" or "Rejected"
- Implement: Reference ADR in PRs
- Learn: Update "Implementation Notes" with gotchas discovered
- Proposed: Decision being considered, open for discussion
- Accepted: Decision made and being implemented
- Deprecated: Decision no longer relevant but kept for historical context
- Superseded by ADR-XXXX: Decision replaced by a newer ADR
| ADR | Title | Status | Date |
|---|---|---|---|
| 0001 | Kubernetes-Native Architecture | Accepted | 2024-11-21 |
| 0002 | User Token Authentication for API Operations | Accepted | 2024-11-21 |
| 0003 | Multi-Repository Support in AgenticSessions | Accepted | 2024-11-21 |
| 0004 | Go Backend with Python Claude Runner | Accepted | 2024-11-21 |
| 0005 | Next.js with Shadcn UI and React Query | Accepted | 2024-11-21 |
- ADR GitHub Organization - ADR best practices
- Documenting Architecture Decisions - Original proposal by Michael Nygard