From 12a7fcb6880a4531bc76ef5decb42d467d1c407c Mon Sep 17 00:00:00 2001 From: claude-lead-andresmgsl Date: Wed, 26 Aug 2026 13:40:37 +0000 Subject: [PATCH] docs: record the 0.6.3 doors-unchanged drill ruling --- drills/0.6.3.md | 74 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 drills/0.6.3.md diff --git a/drills/0.6.3.md b/drills/0.6.3.md new file mode 100644 index 0000000..ad13e22 --- /dev/null +++ b/drills/0.6.3.md @@ -0,0 +1,74 @@ +# 0.6.3 — drill record + +Measured 2026-08-26 on the `release-0.6.3` candidate branch, canonical +candidate SHA `03cb69d`. All three measurements below were taken at that head, +not copied from an earlier record. + +## Scope ruling — doors unchanged, no disposable-repo rehearsal + +**The last rehearsed tag is `0.6.1`, not `0.6.2`.** `drills/0.6.2.md` is itself +a doors-unchanged assertion, and `drills/README.md` anchors the baseline to the +last *rehearsed* tag precisely so one such assertion cannot chain from another +while the doors drift a small diff at a time. The baseline used here is +therefore `0.6.1`, which widens the measured window rather than narrowing it. + +All three conditions hold at the candidate head: + +1. `git diff 0.6.1..HEAD -- $(sh .github/scripts/release-path.sh)` changes only + the `CEREMONY_SELF_REF` pin line in `.github/workflows/release.yml`, from + `0.6.1` to `0.6.3`: + + ```diff + @@ -129,7 +129,7 @@ env: + - CEREMONY_SELF_REF: "0.6.1" + + CEREMONY_SELF_REF: "0.6.3" + ``` + + No release-door logic, decision table, fact gathering, version handling, + changelog handling, forge adapter or publish step changed across two + releases. The measured diff is one line. + +2. The measured release path is exactly the output of + `.github/scripts/release-path.sh` at this head: + + ```text + .github/workflows/release.yml + bin/ + lib/version.sh + lib/decide.sh + lib/facts.sh + lib/changelog.sh + lib/forge.sh + ``` + +3. `drills/0.6.1.md` records a **full rehearsal** — run 2026-08-09 by + `codex-reviewer-andresmgsl` against release PR !226 — its release is + published, and `main` was re-armed to `0.6.2-dev` after it by + `5693bee chore: bump main to 0.6.2-dev`. + +## What this release contains + +Nine fragments consumed into `## 0.6.3`: #234, #240, #241, #243, #247, #251, +#253, #263, #265. None of them touches the release path; the list is +board-flow, labels-reconcile, docs and forge-adapter work. + +## What is NOT asserted + +This record asserts only that a fresh disposable-repo rehearsal would execute +the same release-door bytes as `0.6.1`'s did. It does not assert that the +doors were re-exercised, and it is not a substitute for the rehearsal owed at +the next release-path change. Per `drills/README.md`, the release PR's panel +verifies this claim like any other evidence, and **if any reviewer rules a full +drill owed, that verdict wins.** + +## Note on 0.6.2's red `self-guards` + +Recorded here because the next reader of `drills/` will see it. The `0.6.2` +tag's commit `5a8fce83` is red on `CI / self-guards` — `changelog-armed` +correctly refused a tree in which `changelog.d/238.md` was still unconsumed, +because that fragment landed on `main` after `changelog-assemble 0.6.2` had +already run in the release branch. The content shipped correct (the #238 entry +is in the published `0.6.2` notes) and the strand was consumed on `main` by +`f221647`. The systemic guard against the race landed in !255, *"refuse release +PRs that strand target fragments"*, which is why this candidate was checked +against it before opening.