ceremony/drills/0.6.0.md

69 lines
2.8 KiB
Markdown
Raw Normal View History

# 0.6.0 — drill record
**IN PROGRESS — this record is being written as the rehearsal runs.** It is
committed early so the candidate carries evidence at every head rather than
appearing at the end; the release PR is a draft until it is complete, and no
probe row below is written before its run exists.
Run 2026-08-05 by `cndgrr` against the 0.6.0 release PR (Refs #249),
candidate branch `build/249-release-0-6-0`.
## Scope ruling — a full rehearsal is owed, and doors-unchanged is refused
This record's shape was measured, not chosen. `drills/README.md` allows the
doors-unchanged shape only when all three of its conditions hold at the
candidate head; the first one does not.
The baseline is the last **rehearsed** tag, never the previous tag:
`drills/0.4.1.md` and `drills/0.5.0.md` are both doors-unchanged records, so
the anchor is **`0.4.0`**, whose record is a full disposable-repo rehearsal,
whose release is published, and after which `main` was re-armed to
`0.4.1-dev` (`84bb1a4`). Condition 3 holds.
The release path is exactly the output of `.github/scripts/release-path.sh`
at this head — `.github/workflows/release.yml`, `bin/`, `lib/version.sh`,
`lib/decide.sh`, `lib/facts.sh`, `lib/changelog.sh`. Condition 2 holds.
Condition 1 fails. Measured at this candidate:
```console
$ git diff 0.4.0..HEAD -- $(.github/scripts/release-path.sh)
.github/workflows/release.yml | 2 +-
lib/changelog.sh | 83 ++++++++++++++++++++++++++++++++++++++---
```
`release.yml`'s two lines are the `CEREMONY_SELF_REF` pin, which the
condition exempts. **`lib/changelog.sh` is not exempt and is not empty**: it
carries `72fa3e0` (the terminal issue-citation rule joining the fragment
guard, #262) and `75a5b68` (one fragment, one diagnosis, #262). That file is
on the release path because the merge door sources it to assemble and read
the release section — this is a door byte, not a neighbouring library, and
the last-rehearsed anchor exists precisely so an accumulated change like
this forces a new rehearsal rather than chaining a third doors-unchanged
assertion off the second.
So this release owes the disposable-repo rehearsal, and this record is it.
## Where
_Pending — the scratch repo's full `owner/name` and its disposal state as
observed by this record's author are written here when the rehearsal runs._
## Candidate-ref deviation
_Pending — the fork ref carrying the candidate tree and the canonical
candidate SHA its `CEREMONY_SELF_REF` carriers are rewritten to._
## Probes
_Pending — one row per probe, written from its run, never before it._
| # | probe | run | result |
|---|---|---|---|
| 1 | merge-door ceremony | — | — |
| 2 | mislabeled ordinary PR | — | — |
| 3 | bare-version PR without `release` | — | — |
| 4 | re-run completed ceremony | — | — |
| 5 | manual matching tag | — | — |
| 6 | mismatched tag | — | — |