Short, immutable records of significant architectural decisions — the why behind choices that audits and new contributors keep re-asking about. Supersede an old decision with a new ADR rather than editing history.
| # | Title | Status |
|---|---|---|
| 0001 | State-management boundaries: Redux Toolkit vs Zustand | Accepted |
| 0002 | Local-AI stack layering and fallback chain | Accepted |
| 0003 | WorkerBus v2 hybrid routing and the Rust TaskSupervisor | Accepted |
| 0004 | CSP connect-src and the BYOK https: tradeoff |
Accepted |
| 0005 | WebLLM inference offloaded to a dedicated WorkerBus v2 pool | Accepted |
| 0006 | (reserved, never issued) | Superseded / void |
| 0007 | Plugin Sandbox Model | Accepted |
| 0008 | Local-first data model: Yjs document as source of truth | Accepted |
| 0009 | XState for complex workflow orchestration (Redux + RTK Query + XState) | Accepted |
Format: Context → Decision → Consequences (incl. rejected alternatives). Keep each ADR to one
decision. Link related records with [[slug]].