The next release must carry a real drill record, not a waiver #155
Labels
No labels
blocked
blocker:ci-red
blocker:conflict
blocker:drill-pending
blocker:unrequested
bug
claimed
documentation
enhancement
epic
merge-next
needs-triage
ready
release
scope:cli
scope:drill
scope:host
scope:installer
scope:templates
scope:tiers
stale
state:addressing
state:bots-reviewing
state:building
state:needs-human
No milestone
No project
No assignees
3 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: heavy-duty/box#155
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The drill gate is in place and refuses a release with no record. Its first exercise was a waiver, not a drill — the record for this cycle says the drill was skipped and why. That is the gate working as designed, and it is also a debt.
This issue is the debt. The next release must carry a real drill record, not a waiver.
Why this release was waived
The drill harness is not in a state to produce a trustworthy run:
drill/drill.sh, ~85 probes) but the surrounding procedure — bringing up the substrate, pinning the candidate refs, capturing the result — was undocumented and manual.rig coolify install) have only ever been run by hand.A run assembled ad hoc under those conditions produces numbers nobody should trust, and
drills/is worth nothing if it fills up with records like that.What the next release needs
drills/<version>.mdA failed drill is still a valid record — the gate wants evidence, not success. What it must not be is another waiver.
What is NOT proven right now
Worth stating so it is not rediscovered later. CI covers the tiers' semantics; it explicitly does not cover:
ci.ymlsays so in its own words: "What container mode canNOT validate is the VM trust boundary itself; that stays a real-hardware ritual"Related
Dependencies
Blocked by: the opening of the next release cycle — not by an issue.
Stated here because the
blockedlabel's contract is that the body names theblocker, and this one has no
#Nto name. The deliverable is the nextrelease's record, so it cannot be picked off the queue like ordinary work, and
it is the maintainer's real-hardware ritual rather than a builder's task. When
the next ceremony opens, this flips to the front of it.
Enablers — on the board, none of them gating this issue (statuses current as
of 2026-08-21T15:30Z; the 2026-08-20 list this replaces called #153 and #154
ready, which stopped being true when the 14:43Z sweep flipped both):claimedby @codex-bot-andresmgsl, in flight as PR #159: open, not a draft,mergeable, approved at current heade1e4fc77bykimi-bot-andresmgsl.Parked on two open maintainer rulings, not one — the roster ruling
(comment 10309,
which supersedes the earlier roster escalation this line used to cite) and the
venue ruling (comment 11071).
The claim is live and is not reclaimable while the PR is open.
blockedsince 2026-08-21T14:43Z on the venue ruling: the probe floor landed upstream
as PR #185.
exists.
blockedsince 2026-08-21T14:43Z on the venue ruling: the READMEwas rewritten upstream as PR #196.
None of that changes this issue's own blocker, which is the opening of the next
release cycle and nothing else. It does change what a builder would find if they
followed these links expecting pickable work: two of the three are now parked on
the same ruling as everything else on this board.
Triage: labeled
release+scope:drill+blocked, with the blocker named since the body predates the label: this issue's deliverable is the next release's drill record, so it cannot be picked from the queue like ordinary work — it comes due when the next ceremony opens, and it is the human's real-hardware ritual, not a builder's task. The enablers that make that record cheap and trustworthy are on the board andready: #152 (the harness emits the record skeleton and the shared run ID), #153 (a truncated run can no longer report a clean sweep), #154 (the procedure documentation stops describing a drill that no longer exists). When the next release cycle opens, this flips to the front of it.Triage sweep: no label change —
blockedis still true and still the least-wrong of the three flow labels here (readywould claim a builder can pick this up and succeed, which is false: it is the maintainer's real-hardware ritual). What was missing is that LABELS.md definesblockedas "waiting on another issue or PR (Blocked by #Nin the body names it)", and this body named no blocker at all — the reason lived only in the triage comment above, so a scan of the issue itself could not tell why it was parked.Added a Dependencies section stating it: the blocker is the opening of the next release cycle, not an issue, and #152/#153/#154 are enablers rather than gates. No other change to the body.
Triage sweep —
blockedstands here, and upstream has already spent the cycle it was waiting forNo label change. The four release-cycle signals this issue's blocker is read
against are all still closed on this forge at
c33794c:VERSIONis0.9.1-dev, norelease/*branch exists,git tagstops at0.9.0, anddrills/holds only0.9.0.md. By the test that applies here, the next cyclehas not opened, so
blockedis true and this issue is still not builder-pickable— it is the maintainer's real-hardware ritual.
What the sweep found is that the cycle did open and close somewhere else, and
the commitment this issue tracks was overridden there:
drills/0.9.1.md:"WAIVED. No drill was run for this release." Waived by the maintainer
(@danmt) on #172 (D3) — the second consecutive waiver, over the 0.9.0 record's
commitment that "another waiver is not" a valid outcome. The waiver names this
issue: "the debt does not dissolve — #155 stays open and its commitment rolls
forward intact to the release after this one."
— same number, same title — open and labelled
readythere, organized underepic #182, "Release 0.10.0 — box
rejoins the family ceremony, and the drill stops being a waiver".
drill/drill.shwith arecord emitter, so the 0.9.0 waiver's "no harness in the family's other legs"
half no longer holds. The remaining gap is procedure, not tooling.
Which board's
0.9.1-devis real is the venue question escalated onPR #159 (comment 11071),
@claude-lead-andresmgsl. This issue is the one place on this board where the two
answers do not conflict: under either ruling the next box release owes a real
drill record, and under both it is still the maintainer who runs it.
Triage — body amendment, no label change.
blockedstill stands, and itsblocker is unchanged: the opening of the next release cycle.
What was wrong: the Enablers block was stamped "statuses current as of
2026-08-20" and called #153 and #154
ready. Both flipped toblockedin the14:43Z sweep an hour ago, so this issue's body was the one place on the board
still telling a builder those two were pickable. It also described PR #159 as
"parked on a roster ruling" — that is now the older of two open rulings it is
parked on.
Corrected in place, against the board as it reads at 15:37Z:
claimedby @codex-bot-andresmgsl. PR #159 is open, not a draft,mergeable, approved at current heade1e4fc77bykimi-bot-andresmgsl.Parked on two open maintainer rulings: the roster ruling
(comment 10309)
and the venue ruling
(comment 11071).
Live claim, open PR — explicitly not a reclaim candidate.
blocked, notready.blocked, notready.No other open issue's body asserts a state label for a sibling, so this was the
last stale status on the board. Nothing else changed here.