Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -168,4 +168,4 @@ When a roadmap item flips from ⏳ to ✅, update the corresponding cell(s) in t

The dated, end-of-session checkpoints — what got done, where the project stands, and how to resume — now live in [`docs/journal/`](docs/journal/), one file per session under `YYYY/MM/`, rather than inline in this file. Keeping them out of the roadmap leaves this document a forward-looking plan; the rationale and the agent rule are [ADR-0036](docs/adr/0036-session-journal-extraction.md) and [`AGENTS.md`](AGENTS.md) §7.6.

**Latest checkpoint:** [2026-06-14End of M8 release session (v1.1.0)](docs/journal/2026/06/2026-06-14-m8-release-v1.1.0.md) the planned roadmap (Milestones 0–8) is **complete**; the project is now in the maintained-product phase governed by [`docs/workflow/maintenance.md`](docs/workflow/maintenance.md). The full trail is in [`docs/journal/`](docs/journal/).
**Latest checkpoint:** [2026-06-15Bug ledger & triage protocol](docs/journal/2026/06/2026-06-15-bug-ledger.md) — the in-repo bug ledger (`docs/bugs/`, [ADR-0039](docs/adr/0039-bug-ledger-and-triage-protocol.md)) and the agent triage protocol ([`AGENTS.md`](AGENTS.md) §7.7) are now live; the planned roadmap (Milestones 0–8) remains **complete** and the project is in the maintained-product phase governed by [`docs/workflow/maintenance.md`](docs/workflow/maintenance.md). The full trail is in [`docs/journal/`](docs/journal/).
12 changes: 12 additions & 0 deletions docs/journal/2026/06/2026-06-15-bug-ledger.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# 2026-06-15 — Bug ledger & triage protocol (maintenance session)

> Session checkpoint — part of the [session journal](../../README.md). Checkpoints live outside `ROADMAP.md` per [ADR-0036](../../../adr/0036-session-journal-extraction.md).

- **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 `.gitignore` chore (PR #90, merged). The ledger: one Markdown record per defect at `docs/bugs/<YYYY>/<MM>/BUG-NNNN-<slug>.md` — a globally-monotonic stable id combined with the journal's date-tree foldering — with [`docs/bugs/README.md`](../../../bugs/README.md) (index + lifecycle) and [`docs/bugs/template.md`](../../../bugs/template.md). The ledger is the **source of truth** (a GitHub issue is referenced, not authoritative). Decision recorded in [ADR-0039](../../../adr/0039-bug-ledger-and-triage-protocol.md); governance in [`docs/workflow/maintenance.md`](../../../workflow/maintenance.md) (defect-lifecycle section); agent rule in [`AGENTS.md`](../../../../AGENTS.md) §7.7. A new `bugs` check in [`tools/consistency_lint.py`](../../../../tools/consistency_lint.py) enforces frontmatter, vocabularies, filename↔id and path↔discovered agreement, monotonic ids, the index bijection, and `fixed`⇒`fixed-in` (no-op on an empty ledger). `.markdownlint.json` relaxes `MD025.front_matter_title` so a record may carry both a frontmatter `title` and 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. The `v1.1.0` static archive is byte-identical. The `CHANGELOG` `[Unreleased]` block now carries the bug-ledger `Added` entry, 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.0` is the latest released version; these changes sit unreleased on `master`. Per [`AGENTS.md`](../../../../AGENTS.md) §7.3 / [ADR-0037](../../../adr/0037-new-feature-roadmap-placement.md) this is a maintenance change, not a milestone — recorded in the `CHANGELOG`, 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.0` remain 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 as `cannot-reproduce`/`rejected` — per [`AGENTS.md`](../../../../AGENTS.md) §7.7. Run `python tools/consistency_lint.py` (now with the `bugs` check) before drafting any PR. Maintained-product governance otherwise unchanged ([`docs/workflow/maintenance.md`](../../../workflow/maintenance.md)).
1 change: 1 addition & 0 deletions docs/journal/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ carrying an ever-growing log ([ADR-0036](../adr/0036-session-journal-extraction.

### June

- [2026-06-15 — Bug ledger & triage protocol (maintenance session)](2026/06/2026-06-15-bug-ledger.md)
- [2026-06-14 — End of M8 release session (v1.1.0) — planned roadmap complete](2026/06/2026-06-14-m8-release-v1.1.0.md)
- [2026-06-14 — Packaging patch release (v1.0.1)](2026/06/2026-06-14-packaging-patch-v1.0.1.md)
- [2026-06-14 — End of M7 release session (v1.0.0 — the stable release)](2026/06/2026-06-14-m7-release-v1.0.0.md)
Expand Down
Loading