Session checkpoint — part of the session journal. Checkpoints live outside
ROADMAP.mdper ADR-0036.
- Done in this session — added the in-repo bug ledger and the agent triage protocol that governs it (PR #89, merged), plus a one-line
.gitignorechore (PR #90, merged). The ledger: one Markdown record per defect atdocs/bugs/<YYYY>/<MM>/BUG-NNNN-<slug>.md— a globally-monotonic stable id combined with the journal's date-tree foldering — withdocs/bugs/README.md(index + lifecycle) anddocs/bugs/template.md. The ledger is the source of truth (a GitHub issue is referenced, not authoritative). Decision recorded in ADR-0039; governance indocs/workflow/maintenance.md(defect-lifecycle section); agent rule inAGENTS.md§7.7. A newbugscheck intools/consistency_lint.pyenforces frontmatter, vocabularies, filename↔id and path↔discovered agreement, monotonic ids, the index bijection, andfixed⇒fixed-in(no-op on an empty ledger)..markdownlint.jsonrelaxesMD025.front_matter_titleso a record may carry both a frontmattertitleand a visible H1. - Library state on
master— unchanged. This session is documentation / process / tooling only; no code, public C ABI, C++ surface, or build change. Thev1.1.0static archive is byte-identical. TheCHANGELOG[Unreleased]block now carries the bug-ledgerAddedentry, pending the next release. - ADRs accepted to date — 0001–0039. Total: 36 (this session added 0039).
- Patterns catalogue — unchanged: eleven Implemented; no new pattern (the ledger is a process/tooling change, not a code pattern).
- Spec Coverage Map — unchanged: fifteen rows ✅ (no spec row maps to this maintenance work).
- Versions —
v1.1.0is the latest released version; these changes sit unreleased onmaster. PerAGENTS.md§7.3 / ADR-0037 this is a maintenance change, not a milestone — recorded in theCHANGELOG, justified by ADR-0039, no roadmap item. - Open issues / follow-ups — none blocking. The bug ledger is empty (no defects recorded yet — green by design). Standing note: the pre-1.0 milestone GitHub Releases
v0.4.0/v0.5.0/v0.6.0remain Draft (old, likely intentional — do not publish without asking). - Resume the next session with — the bug ledger is live. When asked to hunt for bugs, create a
docs/bugs/record only for a verified, reproducible defect; when a third party reports a bug, reproduce and root-cause first, recording an unconfirmed report ascannot-reproduce/rejected— perAGENTS.md§7.7. Runpython tools/consistency_lint.py(now with thebugscheck) before drafting any PR. Maintained-product governance otherwise unchanged (docs/workflow/maintenance.md).