merge queue: checking #415 on main (75162de), stacked on #396 - #436
Closed
mergify[bot] wants to merge 4 commits into
Closed
merge queue: checking #415 on main (75162de), stacked on #396#436mergify[bot] wants to merge 4 commits into
mergify[bot] wants to merge 4 commits into
Conversation
The parser lexed each line alone, so a multi-line quoted argument (a `git commit -m` with a body and trailers) looked like an unclosed quote and the hook reported "could not parse" on an ordinary commit. A line that leaves a quote open now joins the following lines until the quote closes; only a quote that never closes stays unparseable. Only the lexer's own incomplete-input errors mean "keep reading"; anything else propagates. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WSVNdBBo7dFqoR8Tx521EJ
Bare `UNVERIFIED:` silenced every check in the message it appeared in. It
cost four characters and bought a whole turn, so it got used to stop
checking rather than to report a check that could not run.
Six hooks read that marker, each with a private regex, and they had
drifted: hedge-runs-prove-it required a named blocker, diu-stop did not.
engine/hooks/_markers now holds one definition of
{{CAT-UNVERIFIED: <claim> -- cannot verify: <reason>}}, the names-a-blocker
test, and the retired bare marker. install.sh links it beside the hooks.
Every suppressor reads it: diu-stop, external-claim-gate (which borrows
diu-stop's matcher at detect.py:13), hedge-runs-prove-it,
history-claim-check, incidence-needs-repetition, named-verb-guard and
prove-it-ship-gate. A well-formed tag excuses its paragraph. A tag that
names no blocker excuses nothing. Bare UNVERIFIED: is prose, and the block
text names the tag that replaced it.
Same three messages through diu-stop, on 509b9cd and on this commit:
legacy marker in front of a real claim
before exit=2 contains an `UNVERIFIED:` claim...
after exit=2 unverified-shaped claim ("because")...
well-formed tag beside the claim
before exit=2 contains an `UNVERIFIED:` claim...
after exit=0 (silent)
tag naming no blocker
before exit=2 contains an `UNVERIFIED:` claim...
after exit=2 unverified-shaped claim ("because")...
Two bugs found by tests while building this, both now pinned:
- A hook directory is itself a symlink, so joining ".." onto it resolves
the link first and lands beside the checkout. Two textual dirnames reach
the sibling module; test_installed_layout builds the symlinked layout.
- Block texts are .format() templates, so a literal {{CAT-UNVERIFIED}}
rendered as {CAT-UNVERIFIED}. Every existing test passed through it,
because they asserted the substring CAT-UNVERIFIED. The tag is now a
format argument, and _markers tests assert on the braces.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VKsvxJk65w6q7KnPSRYvNg
4 tasks
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.
🎉 This pull request has been checked successfully and will be merged soon. 🎉
#415 is queued for merge on branch main (75162de).
Stacked behind 1 pull request queued ahead of this batch, not part of it. These checks run on a tip that also carries its commits, so a failure here can come from it as much as from #415.
Queued ahead of this batch:
This pull request has been created by Mergify to speculatively check the mergeability of #415.
You don't need to do anything. Mergify will close this pull request automatically when it is complete.
Required conditions of queue rule
admin-bypassfor merge:check-success = lintcheck-success = testRequired conditions to stay in the queue:
-draftbase=mainlabel=admin-bypass