reflect: catch an evidence-order correction from the ledger transition, not from wording - #782
Conversation
|
This pull request is part of a Mergify stack:
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 97efd7e. Configure here.
97efd7e to
65902c9
Compare
Revision history
|
9473d50 to
ed08f60
Compare
65902c9 to
21fb367
Compare
|
Queued — the merge queue status continues in this comment ↓. |
|
Mergify repair stopped: GitHub reports merge conflict. The retry cap was reached for current head 21fb367. |
|
@Mergifyio queue |
Merge Queue Status🛑 Queue command has been cancelled |
…n, not from wording Both retraction detectors need a wrongness word. Two real corrections carry none, because the claim was true and only its order was wrong: "Correcting one claim and arming the check I implied:" "I was right - but I said it a turn before I checked it" Primary fix, no regex and no model: a ledger row going outstanding -> discharged IS the event "a claim was asserted before its check ran, and the check has now run". The Stop that discharges a row now reports it as a reflect trigger. It reads state, so the reply's wording is not consulted at all. Secondary fix: the judge dictionary's meaning now covers "right, but said before it was checked", and both real strings are eval cases. Run against the real judge, all six cases land where the dictionary says they should. The regex scan keeps its hole on purpose, pinned by three tests so the next author widens it knowingly rather than by accident. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Change-Id: I99190104b68d88f78aa9c8a706c9a6d23055aecc
21fb367 to
13ab621
Compare
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_649337ee-0879-45f7-861b-676c5a614429) |
🛑 The pull request has been removed from the queue
|
|
@Mergifyio queue |
Merge Queue Status
This pull request spent 27 minutes 41 seconds in the queue, including 27 minutes 3 seconds running CI. Required conditions to merge
|

Summary
A correction can be about order, not error. Saying "I was right, but I said it before I checked" admits nothing was wrong, so no wording-based detector sees it.
Both detectors here require a wrongness word, so that shape was invisible.
The exact signal already exists: a claim going from open to resolved is the event "this was asserted before its check ran, and the check has now run."
That transition now triggers the review nudge.
Review Claim
A claim closing in the ledger triggers the review nudge, with no wording match involved.
Review Lane
behavior
Review Unit
engine-runtime
Safety Invariant
The trigger is a state change the ledger already records, so it cannot fire on a claim that was never opened, and it fires at most once per claim. No phrase list gates it.
Slice Rationale
Rebased onto main; the wrong-check-reflect commit this once sat on already landed as #796. Kept separate because it changes what fires the nudge, not how claims are tracked.
Non-goals
Does not widen the regex retraction scan; three tests pin its gap on purpose. Does not change the nudge's wording. The wrong-check-reflect judge dictionary does gain the two real sentences as match cases, and its meaning now names "right, but said before it was checked" as a match.
Test Plan
Test Plan
Run at this commit:
Added cases pin the two real sentences from the session that motivated this, both of which the wording detectors stay silent on.
Revert Plan
Revert Plan
Revert this commit. Corrections about order go undetected again, as they do on main.