forked from heavy-duty/ceremony
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
612 B
612 B
Fixed
- A roster edit no longer reds the whole suite: the labels-reconcile
state-machine fixtures name their own panel instead of binding
.github/labels.confby slot (#304). - Shrinking
panel=to three had left that binding's third slot unbound, andset -uaborted the file before its first assertion — 217 assertions became 0, onmainand on every branch cut from it (#304). - The one case still reading the shipped roster asserts a property, not a
size: it parses, and each member is recused from its own panel. Any
panel=of one or more members leavestest/run.shgreen (#304).