The state-machine fixtures bound BOT1/BOT2/BOT3 to REQUIRED_BOTS by index off the shipped .github/labels.conf, so three fixtures silently required a four-member panel=. Shrinking it to three left the third slot unbound and set -u aborted the file before assertion 1: 217 assertions became 0, on main and on every branch cut from it. The fixtures now write their own conf, in test/labels.test.sh's shape, at all three load sites (top of file, the #205 re-drafted-round block, and the mutant_blockers subshell). One live-file case survives as a property — the shipped conf parses and recuses each member from its own panel — with no index and no expected size, and a copy whose panel= names nobody proves it still has teeth. Refs #304 |
||
|---|---|---|
| .. | ||
| 218.md | ||
| 230.md | ||
| 231.md | ||
| 232.md | ||
| 236.md | ||
| 237.md | ||
| 238.md | ||
| 241.md | ||
| 242.md | ||
| 247.md | ||
| 248.md | ||
| 251.md | ||
| 252.md | ||
| 253.md | ||
| 254.md | ||
| 257.md | ||
| 258.md | ||
| 260.md | ||
| 262.md | ||
| 264.md | ||
| 266.md | ||
| 267.md | ||
| 272.md | ||
| 276.md | ||
| 280.md | ||
| 281.md | ||
| 282.md | ||
| 284.md | ||
| 288.md | ||
| 304.md | ||
| README.md | ||
| shape | ||
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).