8 20 Architecture Decisions
Nimmo edited this page 2026-09-12 17:06:19 +01:00

Architecture Decisions

  • Type: Index
  • Status: Current
  • Scope: Fleet and repository architecture
  • Canonical sources: Repository history, completed Forgejo issues, current implementation, and verified project memories
  • Last verified: Source commit 556df88494686003b1c4f20c8e0b99b5afc16a6e (2026-09-12)
  • Review triggers: Acceptance, supersession, or discovery of a consequential architectural decision

Architecture Decision Records preserve why consequential choices were made, which alternatives were rejected, and which constraints follow. They do not replace current-state reference or operating procedures.

Decision register

ADR Decision Status Supersession
ADR-001 Electra hardware-presence specialisations and the single-generation model Accepted None
ADR-002 Workload placement among native NixOS services, containers, and wrapper repositories Accepted None
ADR-003 Network exposure, loopback binding, mesh access, and relay/ingress topology Accepted None
ADR-004 Engram as durable cross-session agent memory Accepted None
ADR-005 Auto-update as a fleet reliability and control-plane system Accepted None
ADR-006 Service- and host-scoped secrets instead of a monolithic encrypted file Accepted with transitional exceptions None

The initial register was reconstructed under issue #221. Current implementation remains authoritative for what exists; an ADR owns only the rationale, constraints, and consequences of the choice.