ceremony/drills/0.4.1.md

43 lines
2.6 KiB
Markdown
Raw Normal View History

# 0.4.1 — drill record
Run 2026-08-01 by `dan-claude-bot` against release PR (Refs #212), candidate
branch `build/212-release-0-4-1` on `heavy-duty/ceremony` main at `c2987fd`.
## Scope ruling — doors unchanged, no disposable-repo rehearsal
The 0.4.0 drill (drills/0.4.0.md) probed both release doors end-to-end in a
disposable repo, and the live 0.4.0 release then exercised the merge door for
real: one tag, one release, main re-armed to `0.4.1-dev`. Since that tag,
`release.yml`'s only delta is the `CEREMONY_SELF_REF` pin line — no door
logic, no decide table, no publish step changed. Re-running a full
disposable-repo drill would rehearse machinery this repo already proved both
in rehearsal and in production within the last three days. This record
therefore rests on the standing evidence below, and says so honestly rather
than staging a ceremony for a tree the doors cannot distinguish from the last
one. The panel reviews this claim like any other; if any reviewer rules a
full drill owed, that verdict wins.
## Standing evidence at the candidate head
| # | probe | where | result |
|---|---|---|---|
| 1 | decide + merge-door step-replay (dogfood) | `release-exercise / step-replay (dogfood)` on this PR | CI-gating; green required to merge |
| 2 | decide + merge-door step-replay (consumer) | `release-exercise / step-replay (consumer)` on this PR | CI-gating; green required to merge |
| 3 | fragment chain: armed → assemble → monotonic | `release-exercise / fixture-chain` on this PR | CI-gating; green required to merge |
| 4 | the real tree's own guards (armed, monotonic, drill-recorded, self-ref) | `self-guards` on this PR | CI-gating; green required to merge |
| 5 | the 0.4.1 payload live: split labels machinery dogfooding on this very PR | this PR's checks | `labels / scope` + `labels / trigger` green, and NO `labels / reconcile` check attached — the #209 acceptance shape, observed on the first post-split PR in this repo |
Probe 5 is the one piece 0.4.0's drill could not have covered: the sweep
split is 0.4.1's payload, and this repo adopted it on merge (#211 split
`self-labels.yml` / `self-labels-sweep.yml`). Every PR opened after that
merge — this one included — is a live consumer-shaped proof that PR checks
carry scope and trigger only, with sweeps dispatched to the detached
`self-labels-sweep` runs.
## Deviations
No candidate-ref deviation arises: this record stages no scratch caller, so
nothing needs to resolve `CEREMONY_SELF_REF: "0.4.1"` before the tag exists.
The sibling crew migration is the post-tag consumer proof, per #212's
acceptance criteria.