release: 0.3.0 — record the drill
Both doors rehearsed live on a disposable private repo, caller pinned to the fork scaffold carrying the candidate tree with CEREMONY_SELF_REF rewritten to the candidate SHA; all six probes as specified, every refusal creating nothing. Scratch repo archived, delete is the operator's (#135). Refs #160
This commit is contained in:
parent
5f0686b395
commit
30b49c4ade
1 changed files with 53 additions and 0 deletions
53
drills/0.3.0.md
Normal file
53
drills/0.3.0.md
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
# 0.3.0 — drill record
|
||||
|
||||
Run 2026-07-24 by `claude-bot-andresmgsl` against the release candidate at
|
||||
PR #165 head `5f0686b3950d6adc699e750ef5858a20eb084f6f`.
|
||||
|
||||
Where: disposable private repo
|
||||
`claude-bot-andresmgsl/ceremony-drill-0.3.0`, carrying the
|
||||
`docs/CONSUMERS.md` release caller and a fragment-mode fixture armed at
|
||||
`0.3.0-dev`. The fixture had `changelog.d/README.md`, one release fragment,
|
||||
and a non-blank drill record. The repository is archived (observed
|
||||
`archived: true` after the run), pending the operator's delete.
|
||||
|
||||
## Candidate-ref deviation
|
||||
|
||||
The pure consumer path still cannot resolve `CEREMONY_SELF_REF: "0.3.0"`
|
||||
before the candidate creates that tag. No `0.3.0` branch was created in
|
||||
`heavy-duty/ceremony` — `git ls-remote --heads origin 0.3.0` was empty
|
||||
before and after the drill. The scratch caller instead used
|
||||
`claude-bot-andresmgsl/ceremony@drill/0.3.0`, whose parent is the candidate
|
||||
tree itself and whose only additional commit (`64af424`) rewrites both
|
||||
`CEREMONY_SELF_REF` carriers to candidate SHA
|
||||
`5f0686b3950d6adc699e750ef5858a20eb084f6f`. All runtime machinery was
|
||||
therefore fetched from the 0.3.0 candidate tree.
|
||||
|
||||
## Probes
|
||||
|
||||
| # | probe | run | result |
|
||||
|---|---|---|---|
|
||||
| 1 | merge-door ceremony | 30112209127 (attempt 1) | ✅ one `0.3.0` release; tag equals merge commit; main re-armed to `0.3.1-dev` with only `changelog.d/README.md` |
|
||||
| 2 | mislabeled ordinary PR | 30112073479 | ✅ green NOTICE no-op; no tag or release |
|
||||
| 3 | bare-version PR without `release` | 30112112006 | ✅ refused at decide ("no merged, release-labeled PR is behind this commit"); no tag or release |
|
||||
| 4 | re-run completed ceremony | 30112209127 (attempt 2) | ✅ refused because tag `0.3.0` already existed; release count stayed one |
|
||||
| 5 | manual matching tag | 30112294804 | ✅ `0.4.0` published with its changelog section from a side-branch tree; main untouched at `0.3.1-dev` |
|
||||
| 6 | mismatched tag | 30112327723 | ✅ refused ("tag '9.9.9' does not match the tree's version '0.4.0'"); no `9.9.9` release |
|
||||
|
||||
The merge-door `0.3.0` tag and PR #3 merge commit were both
|
||||
`78586bce3b7a40872fa844173d5b60a213917b3b`. Its release body was exactly
|
||||
the two fragments the fixture held at the cut — probe 2's ordinary PR had
|
||||
banked one more fragment before the ceremony, so the section assembled two:
|
||||
|
||||
```text
|
||||
- A harmless doc touch for probe 2 (mislabeled ordinary PR).
|
||||
- Fragment mode is exercised by the 0.3.0 drill.
|
||||
```
|
||||
|
||||
## Failures and setup corrections
|
||||
|
||||
None. Two shapes from the 0.2.0 record were designed out rather than
|
||||
re-hit: the fixture's first push carried the armed root commit plus a
|
||||
baseline commit in one push, so fact gathering always had a parent to read
|
||||
a base version from (discussion #132); and probe 3's refused merge was
|
||||
reverted before probe 1, the revert landing as a green "still a dev tree"
|
||||
no-op, restoring the armed fixture the ceremony then consumed.
|
||||
Loading…
Reference in a new issue