ceremony/changelog.d
cndgrr 75a5b68c8a fix(changelog): one fragment, one diagnosis, wherever the long entry sits
awk runs END on the way out of an exit from a main rule, so the length
row printed mid-file was followed by the citation row it outranks — the
internal protocol line landing inside the human-facing excerpt. Found by
claude-bot and kimi-bot in #262's first round, independently and with the
same reproduction.

The guard is the reported flag the empty-heading walk in this same
predicate already uses. The fixtures are the axis 57.md could not reach:
its over-bound entry is last, so only END's flush can print. 58.md puts
one before another bullet, 59.md before a heading and after a misplaced
cite. With lib/changelog.sh alone reverted they red, which is what the
green suite was hiding.

Refs #262.
2026-08-04 12:38:13 +00:00
..
218.md docs: wire refs guard into ceremony flow 2026-08-03 20:31:34 +00:00
230.md docs: clarify attention target 2026-08-03 19:07:08 +00:00
231.md docs(labels): the attention absolute stops denying the shipped reconciler 2026-08-03 15:48:05 +00:00
232.md test: cover attention target diagnostics 2026-08-03 19:53:25 +00:00
236.md test(labels): drive the green gate and the grace, and mutate both to prove them 2026-08-03 17:18:46 +00:00
237.md fix(changelog): the four drifted fragments carry a terminal cite 2026-08-04 12:01:45 +00:00
238.md test: exercise documentation marker guard 2026-08-03 22:49:22 +00:00
241.md fix(changelog): the four drifted fragments carry a terminal cite 2026-08-04 12:01:45 +00:00
242.md test(issueflow): drive the merge-order selection, and the spent-marker shape end to end 2026-08-03 16:27:43 +00:00
247.md fix(issueflow): a per-issue pass commits its whole effect, or none of it 2026-08-03 18:55:52 +00:00
248.md fix(changelog): the four drifted fragments carry a terminal cite 2026-08-04 12:01:45 +00:00
251.md docs(consumers): read the pin manifest, never a copy of it 2026-08-04 10:18:17 +00:00
252.md test(issueflow): the parse echo, mutation-proven in both directions 2026-08-03 19:28:31 +00:00
254.md docs(labels): the evidence clock names what the sweep actually reads 2026-08-03 23:40:48 +00:00
258.md docs(builder): a fix round may ride a draft 2026-08-03 21:49:11 +00:00
260.md docs(builder): green is read from conclusion, and the checkless head is the third ruled case 2026-08-03 23:44:43 +00:00
262.md fix(changelog): one fragment, one diagnosis, wherever the long entry sits 2026-08-04 12:38:13 +00:00
272.md docs(builder): green is read from conclusion, and the checkless head is the third ruled case 2026-08-03 23:44:43 +00:00
276.md docs(builder): a displaced predecessor is not the check's verdict 2026-08-04 10:58:59 +00:00
280.md fix(changelog): the four drifted fragments carry a terminal cite 2026-08-04 12:01:45 +00:00
README.md feat: ceremony flips to grouped — changelog.d/shape = grouped, five fragments converted, docs per D6 2026-07-25 13:14:05 +00:00
shape feat: ceremony flips to grouped — changelog.d/shape = grouped, five fragments converted, docs per D6 2026-07-25 13:14:05 +00:00

changelog.d/ — the next release's section, one fragment per issue

Machine-assembled by bin/changelog-assemble (#112): every PR that changes behavior writes one file here — <issue>.md, the exact prose that will be published, nothing else — and the release PR folds them all into the next ## X.Y.Z — DATE section of CHANGELOG.md, consuming them. Distinct filenames never conflict, which is this directory's whole reason to exist. This README is the marker that keeps the directory tracked when it holds no fragments (#112 D1) — changelog-armed refuses a tree without it; do not delete it. The shape sentinel beside it declares the set's shape — grouped here, so every fragment carries ### headings (#182).