backlog: file #1068, a -Force claim release leaves no record of who released whose claim - #258
Open
wshallwshall wants to merge 1 commit into
Open
backlog: file #1068, a -Force claim release leaves no record of who released whose claim#258wshallwshall wants to merge 1 commit into
wshallwshall wants to merge 1 commit into
Conversation
…eleased whose claim (BACKLOG #1068)
wshallwshall
enabled auto-merge (squash)
August 6, 2026 16:49
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Files BACKLOG #1068. Docs-only, one file, +22.
THE DEFECT.
scripts/coord/claim.ps1:164gates a non-holder release behind-not $Force, so-Forcelets any session release a claim it does not hold. The release isRemove-Item -LiteralPath $file -Forceand NOTHING ELSE -- no log, no audit line, no record of whoreleased whose claim, when, or why.
⛔ THE ITEM EXPLICITLY SAYS DO NOT REMOVE
-Force. The hatch has a real job and was needed the samenight: claim 1041 was held by a worktree whose session had ended, and
claim.ps1:141already prints[HOLDER GONE -- release with -Force]for exactly that case. Removing it would strand claims andpush people toward deleting claim files by hand, which leaves even less evidence. What is asked for
is a record, not a refusal.
MEASURED, and only known because the lane self-reported: a build lane ran
-Release 1021 -Forceonanother worktree's claim and left no commit. Remediated correctly -- the original holder released its
own claim WITHOUT
-Force, the item was re-taken on the lane worktree, the work committed there.Nothing was lost. But the release itself left nothing behind to find.
A SIBLING WAS CONSIDERED AND DECLINED, and the item records why rather than dropping it. The claim
gate reads the commit SUBJECT only (
claim_check.py:106), so a body-placed token evades it -- and alane did exactly that, self-documented, since remediated. NOT filed: the subject-only scope is a
documented design decision with a stated reason ("a body may reference other items freely ...
enforcing on the body would fire on every one of those"), and the obvious fix would deny every
ordinary commit citing a superseded item. It is recorded in the item because it is the obvious next
proposal and the next reader will have it.
BOTH claims were verified against the source before filing, not taken from the incident reports:
-Forcegenuinely bypasses the holder check, and the release genuinely records nothing.VERIFICATION. Number allocated atomically via alloc.ps1 from the committing worktree. Based on
afdc5cb, merge-tree clean. Headings 142 -> 143, exactly one added. backlog_status_check: 338 items,
each declaring exactly one status. Glyph audit on the added lines: only house-style characters
(em-dash, middot, the open-banner glyph, and one already used 24 times) -- no new vocabulary.
had uncommitted
docs/BACKLOG.mdchanges. The override was declined both times and the item waiteduntil that session committed (#1066, #1067). Its insert point was re-measured immediately before
writing rather than trusted from the earlier reading.