Files
swarm-house/docs/adr/README.md
T
eSlider 10a18f1321
CI & Release / Verify documentation (push) Skipped
CI & Release / Verify simulator (push) Skipped
CI & Release / Trivy scan (push) Skipped
CI & Release / Semantic Release (push) Skipped
CI & Release / Verify documentation (pull_request) Successful in 6s
CI & Release / Verify simulator (pull_request) Failing after 10s
CI & Release / Trivy scan (pull_request) Skipped
CI & Release / Semantic Release (pull_request) Skipped
fix: revert ADR edits and enforce immutable accepted records
Restore docs/adr to main; add check_adrs.py CI gate so existing ADR-*.md
files cannot be modified — supersede with a new numbered ADR instead.
2026-07-10 10:57:39 +01:00

2.4 KiB

Architecture Decision Records

This directory records the significant decisions behind Swarm House, in the order they were made. Each record is immutable once Accepted — a later decision that changes course gets a new number and supersedes the old one rather than editing it.

ADR vs ASR

Kind What it captures Where it lives
ADR (Architecture Decision Record) A point-in-time decision for this repository, with the options considered and their consequences Here, in docs/adr/
ASR (Architecture Standard Record) A standing, cross-repository policy every project must obey (Go-first, secrets, layout) The ecosystem inventar repo, not here

The rules in ../../AGENTS.md are this repo's local standing constraints; anything ecosystem-wide belongs in inventar as an ASR. Design decisions specific to the platform are ADRs and belong here.

Index

ADR Decision Status
ADR-0001 No swarm-wide orchestrator; coordinate through data Accepted
ADR-0002 One storage format on every tier — Parquet + DuckDB, Hive layout Accepted
ADR-0003 Sync derived state only; raw telemetry stays local Accepted
ADR-0004 Read-only SQL-over-SSH as the peer query contract; no debug API Accepted
ADR-0005 WireGuard beneath SSH for the mesh transport Accepted
ADR-0006 IaC split: Ansible hosts, Terraform ground, Flux ground-only, fleet manifest for drones Accepted
ADR-0007 Run the simulator image as a non-root user Accepted
ADR-0008 Shared var/t1 / var/t3 runtime paths; state out of Git Accepted
ADR-0009 Bound observability lake scans to a flight window and cache Accepted

Writing a new ADR

  1. Copy TEMPLATE.md to ADR-NNNN-short-slug.md (next free number).
  2. Fill in Context, Options (if more than one was real), Decision, Consequences.
  3. Add a row to the index above.
  4. Cross-link the ADR from the design doc it affects (and vice versa).

Keep the tone laconic: state the decision and why, skip the narrative.