Page:
20 Architecture Decisions
Pages
00 Documentation Map and Scope
00 Documentation Standards
00 Start Here and Governance
10 System Atlas
11 Fleet Overview
12 Host Inventory
13 Service Catalogue
14 Network and Access Topology
15 Storage and Data Map
16 Automation and Control Plane
20 Architecture Decisions
21 ADR 001 Electra Hardware Specialisations
22 ADR 002 Workload Placement
23 ADR 003 Network Exposure
23 Project Tracking
24 ADR 004 Engram Durable Agent Memory
24 Security Baseline
25 ADR 005 Auto Update Control Plane
26 ADR 006 Scoped Secret Files
30 Operations and Runbooks
31 Routine Fleet Operations
32 Safe Testing and Deployment
33 Host Provisioning
34 Monitoring and Service Investigation
35 Backup Verification and Partial Restore
36 Full Host Recovery
37 Electra Boot Trust Recovery
38 Secret Editing and Recipient Rotation
39 Auto Update Incident Response
39a Service Migration and Cutover
39b Wrapper Repository Packaging
40 Engineering Handbook
41 Repository Structure and Import Chain
42 Configuration Ownership Boundaries
43 Adding Packages and Flake Inputs
44 Adding a Module or Profile
45 Adding a Host
46 Adding or Migrating a Service
47 Testing and CI Contracts
48 Secrets Implementation Conventions
49 Documentation Maintenance
50 NixOS Learning Path
51 Guided Repository Tour
52 Nix Language Essentials
53 Declarative Configuration Store and Generations
54 Flakes and Inputs
55 NixOS Modules and Option Merging
56 SpecialArgs and Home Manager Argument Flow
57 Electra Specialisations Worked Example
58 Nix Troubleshooting Primer
90 Historical Material
91 Electra Secure Boot Hardening Record
Home
No results
8
20 Architecture Decisions
Nimmo edited this page 2026-09-12 17:06:19 +01:00
Table of contents
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.