Files
ersatztv/docs/decisions/archive/README.md
T
timothyandClaude Opus 4.8 eada44deb1 feat(521): reconcile #390/#406 + #411 + append-only supersession; seed exemplars [decisions-edit]
Migrate #406 (ci.runner-placement) and #412 (ci.peak-anon-measurement) to the lifecycle
schema as exemplars; #390 and #411 confirmed prose-only (no standalone record). Dogfood the
append-only->lifecycle supersession: docs.append-only-guard moved to archive/, superseded by
new active docs.decision-lifecycle. Stand up docs/decisions/archive/ + migration-map.md.

Refs #521

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-21 03:00:15 +02:00

23 lines
1.5 KiB
Markdown

# Archive — superseded / retired decision records
This directory holds decision records whose `status` is `superseded` or `retired`. They are kept
verbatim (rationale prose untouched — see `docs/decisions.md` header and `scripts/decisions_lib.py`)
for history: *why we changed our mind* is the point, never silently rewritten.
They are **out of the active startup path**: `scripts/decisions_lib.py active_files()` /
`all_active_records()` do not glob this directory, `docs/decisions/README.md` (the active catalog)
never lists a record from here, and an agent doing task-router discovery should not need to read
this directory to find the *current* rule — follow a record's `superseded-by` key to the active
successor instead.
The lifecycle validator (`scripts/decisions_validate.py`) still enforces invariants here:
- a `superseded`/`retired` record MUST live under this directory, never in an active file;
- an `active` record MUST NOT live under this directory;
- `supersedes`/`superseded-by` keys must resolve reciprocally to a record in the active set OR here;
- a record moved here must not have its rationale prose changed in the same commit (unless the
commit message carries the `[decisions-edit]` token, reserved for genuine rationale edits).
One file per topic cluster (e.g. `ci.md`, `release-ci-governance.md`), mirroring the active
`docs/decisions/*.md` topic-file split. See `docs/decisions/migration-map.md` for the legacy
heading → key → status → location mapping produced during the #521 lifecycle migration.