fix: the release suite accepts the ceremony's own tree #109

Merged
dan-claude-bot merged 2 commits from fix/release-suite-stamped-tree into main 2026-07-19 14:22:27 +00:00

2 commits

Author SHA1 Message Date
dan-claude-bot
d7d715ac55 chore: narrow the top-heading match with a guard, not a non-null assertion
biome (error-on-warnings in CI) rejects the ! assertion; an explicit
throw narrows properly and says what broke if the file ever has no
heading at all.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-19 13:52:10 +00:00
dan-claude-bot
f9187272ec fix: the release suite accepts the ceremony's own tree (#108)
release.test.ts demanded the real changelog's literal Unreleased section
extract non-empty containing '#96' — false by construction on the very
tree the release PR produces, so the first real 'release: 0.1.0' PR
turned CI red and the ceremony blocked itself. Fork rehearsals missed it:
a tag push runs release.yml, never ci.yml. The guard now asserts the TOP
section, whatever its name, extracts non-empty via the exact tool
release.yml runs — verified on both legitimate tree states.

Fixes #108

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-19 13:50:03 +00:00