docs(chronology): switch to manual maintenance; delete generator scripts; archive review report

Deleted scripts/audit/generate_chronology.py + chronology_quality_gate.py
after repeated corruption incidents (auto-classifier drifted from
user intent, silently rewrote rows). chronology.md is now maintained
by hand: add a row at the top when a track ships/abandons/is archived.

Updated conductor/workflow.md §Chronology Maintenance and
conductor/tracks.md §Archiving a track to reflect manual maintenance.

Added 40 rows to conductor/chronology.md for the 2026-07-05 archive
batch, with archive-folder paths and deferral notes where applicable.

Removed 12 archived-track rows from conductor/tracks.md Active Tracks
table (rows 2, 3, 7c, 16, 17, 23b, 23c, 23d, 25, 26, 29, 29c) and
their track-detail anchors.

Wrote docs/reports/ARCHIVE_REVIEW_20260705.md: a categorized index
of unfinished work items from the archived tracks' state.toml files
that remain relevant to the codebase, with a ranked follow-up list.
This commit is contained in:
ed
2026-07-05 16:17:13 -04:00
parent 2f3a8283f9
commit 4c9fc99cd4
6 changed files with 285 additions and 630 deletions
+3 -5
View File
@@ -624,17 +624,15 @@ The recommended execution order is the topological sort of the `blocked_by` grap
## Chronology Maintenance
**Chronology regeneration cadence.** After every track ships (completion commit + TRACK_COMPLETION report), the implementing agent must run `uv run python scripts/audit/generate_chronology.py --draft > conductor/chronology.md` to regenerate `conductor/chronology.md`. The regeneration is a single atomic commit (`docs(chronology): regenerate after <track-id> shipped`). If the regeneration produces a diff beyond the new row (e.g., status changes on other rows), the agent must investigate before committing — a status drift on an unrelated row indicates a stale classifier, not a chronology bug.
**Manual maintenance (changed 2026-07-05).** The chronology generator scripts (`scripts/audit/generate_chronology.py` + `scripts/audit/chronology_quality_gate.py`) were deleted on 2026-07-05 after repeated corruption incidents (the auto-classifier drifted from the user's intent and silently rewrote rows). `conductor/chronology.md` is now maintained **manually**: when a track ships, is abandoned, is superseded, or its folder is archived, the implementing agent adds a row to the top of the chronology table (newest-first) by hand. Fields: Date, ID, Status, one-line Summary, Folder path, commit Range. Commit with `docs(chronology): add row for <track-id> archive`.
**Quality gate.** `scripts/audit/chronology_quality_gate.py` runs as part of the regeneration. It fails (exit 1) if >30% of rows are classified as `Needs Review`. A failing quality gate blocks the regeneration commit. Run `uv run python -m scripts.audit.chronology_quality_gate --strict` before committing the regenerated chronology.
**When to regenerate:**
**When to add a row:**
- After a track ships (TRACK_COMPLETION report committed)
- After a track is abandoned (TRACK_ABORTED report committed)
- After a track is superseded (state.toml status = "superseded")
- After a track folder is archived (moved to `conductor/archive/`)
**When NOT to regenerate:**
**When NOT to add a row:**
- Mid-track (the chronology reflects filesystem state; a mid-track folder is correctly "In Progress" or "Active")
- After a plan.md edit (the chronology doesn't track plan content)