fix: kb page references by title, not by moved path; Iteration and Cost Limits cites existing sections (#147 follow-up)
CI / verify (push) Successful in 1m46s
Release / release (push) Successful in 37s

gates.md named kb/concepts/<Title>.md for two pages that live under
kb/concepts/workflows/; run_budget.py carried the same stale path. The
concept page pointed at AGENTS.md sections that do not exist, the same
defect #147 fixed in the refusal messages.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2

Files changed:
- CHANGES.md
- VERSION
- instructions/gates.md
- kb/concepts/INDEX.md
- kb/concepts/workflows/Iteration and Cost Limits.md
- kb/index.md
- kb/log.md
- tools/chemenu/commands/run_budget.py
This commit is contained in:
torben committed 2026-09-26 22:31:18 +02:00
1 parent bc314e5c8c
commit b8ed8bd610
8 files changed
+27 -9

No files matched your search

+12 -1
View File
@@ -59,7 +59,7 @@ concern - readable here, never shipped as something to parse.
---
## 7.1.0-beta.27 - 2026-09-26 - Budget gate and loop-breaker refusals exit without a traceback
## 7.1.0-beta.28 - 2026-09-26 - gates.md and a run_budget comment name kb pages by title, not by a path that moved
**Author:** Torben Nehmer
@@ -96,8 +96,19 @@ concern - readable here, never shipped as something to parse.
- log append: unreadable --body-file is an ERROR line, not a traceback
- Command records: three more mismatches from #142 aligned to code
- docs contract: the merged-stream test pins its own ON FAILURE line
- gates.md and a run_budget comment name kb pages by title, not by a path that moved
<!-- /wikitool:bumps -->
### gates.md and a run_budget comment name kb pages by title, not by a path that moved
`instructions/gates.md` pointed at `kb/concepts/Mass-Update Gate.md` and
`kb/concepts/Iteration and Cost Limits.md`, and a comment in `run_budget.py` at the second - both
pages live under `kb/concepts/workflows/`, where `types/concept.md` places a workflow concept. A
page's title is its only stable identifier, and its directory is whatever the type-spec computes,
so the three references now name the page by title and no longer carry a path. The comment also
says why the page still quotes the old 15-25 band: deliberately, as a sourced claim about the
field, next to the band measured here. Text only.
### Budget gate and loop-breaker refusals exit without a traceback
`cli.main()` calls `run_budget.record_and_check()` before Typer ever dispatches to a subcommand,