Appearance
Architectural Decision Records
ADRs codify the scope invariants of nubos-pilot. Each ADR is authoritative for the constraint it documents. Decisions are superseded by new ADRs, never rewritten.
Status lifecycle
- Proposed: authored but not yet accepted; subject to revision during review.
- Accepted: the decision is binding; downstream work consumes the invariant as-is.
- Deprecated: superseded by a later ADR (referenced via
Supersedes NNNN); retained for history.
An ADR may enter directly as Accepted when it is ratified at authoring time. ADRs are append-only: a superseded ADR is never rewritten; instead a new ADR with a higher number references it via its Supersedes line.
Numbering
ADRs follow the pattern NNNN-kebab-title.md with a zero-padded four-digit sequence starting at 0001. Numbers are incremented monotonically, with no skips and no re-use, so cross-references (for example ADR-0003) stay stable. The index below is contiguous 0001-0019; every number is in use.
The Plan-side Trust Layer ADR was originally authored as a second 0013-plan-trust-layer.md, colliding with the earlier 0013-learnings-store-schema-evolution.md. The collision was resolved by keeping 0013 for the learnings-store ADR (authored first, 2026-05-03) and renumbering the Plan-side Trust Layer ADR to 0019-plan-trust-layer.md.
Index
| ADR | Title | Status |
|---|---|---|
| 0001 | No-Daemon Invariant | Accepted |
| 0002 | Zero Runtime Dependencies | Accepted (amended by 0006, 0014) |
| 0003 | Max Six Unit-Types | Accepted |
| 0004 | Atomic Commit per Unit | Accepted |
| 0005 | Three Orthogonal File-Trees | Accepted |
| 0006 | Accept yaml@^2.8 (Amendment to 0002) | Accepted |
| 0007 | Codebase Documentation Layer as Shared Agent Memory | Accepted |
| 0008 | Worktree Isolation per Slice (opt-in) | Accepted |
| 0009 | TUI Framework for Interactive Dashboard — Option D (no amendment; no TUI dependency adopted) | Accepted |
| 0010 | Nubosloop (Build / Verify / Critic-Schwarm / Route) | Accepted |
| 0011 | Researcher-Schwarm with Mehrheit / Union / Schnittmenge merge | Accepted |
| 0012 | Completeness Mandate as Pflicht-Boilerplate | Accepted |
| 0013 | Learnings-Store Schema Evolution Policy | Accepted |
| 0014 | Vector-Memory Layer (opt-in, local-default) | Accepted (amends 0002) |
| 0015 | Named-Agent-Messaging for in-task agent dialogue | Accepted |
| 0016 | Project-Level Close + Archive Lifecycle | Accepted |
| 0017 | Strict Output-Schema Enforcement at Write-Time | Accepted |
| 0018 | Researcher-Schwarm — Schema + Reconciler + Disagreement-Gate + Reasoning-Trace | Accepted (amends 0011) |
| 0019 | Plan-side Trust Layer — Mechanical PLAN.md Validation | Accepted |
