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
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.
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
- Copy
TEMPLATE.mdtoADR-NNNN-short-slug.md(next free number). - Fill in Context, Options (if more than one was real), Decision, Consequences.
- Add a row to the index above.
- 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.