fix(grounding): a named self-claim in the simple past is still a claim #553

Closed
coilyco-ops wants to merge 1 commit from fix/a-self-claim-in-the-simple-past into main
Member

closes #241

Measured by Quail (QA), who re-ran the whole reply path rather than one check and found twelve surviving shapes across four families. This closes the family they said they would fix first, for the reason they gave.

The two characters

- `\s+(?:has|have)\s+`
+ `\s+(?:(?:has|have)\s+)?`

Sirens Echo has filed a correction. was caught. Sirens Echo filed a correction. was not — by the check that exists specifically for the named self-claim. Simple past is at least as natural a thing for a model to write as the perfect.

Why only this family

It does not touch passiveActionClaim, so it cannot regress the false fire QA demonstrated:

FALSE FIRE  "The issue was created in June, before the wipe."

Families 3 and 4 run straight into that and need notAClaim to disqualify time expressions first, which is its own piece of work. Family 2 contains a genuine question — whether Deep catching a claim attributed to Echo is a guard or a false positive — that I would rather have decided than assume.

Both directions

A widening that starts reading ordinary prose as a claim is a worse defect than the one it fixes, so the negatives are pinned too: a capability statement, a refusal, the name in isolation, a comma between the name and the verb, and someone else acting all stay permitted. A tracker write the runtime actually performed still permits the claim, in either tense.

One rename

TestOnlyOneMissedShapeSurvivesTheWholeReplyPath is now TestBothCharacterizedShapesBehaveThroughTheWholeReplyPath. QA's note was fair: it measures a two-element corpus and its name made a claim about the check. Twelve survive. It is my test and the name was mine.

Quail's twelve-shape corpus is coming as its own characterization file. When it lands it should fail on the shape this fixes — that failure is the file working.

ward exec gate green.

closes #241 **Measured by Quail (QA)**, who re-ran the whole reply path rather than one check and found twelve surviving shapes across four families. This closes the family they said they would fix first, for the reason they gave. ## The two characters ```go - `\s+(?:has|have)\s+` + `\s+(?:(?:has|have)\s+)?` ``` `Sirens Echo has filed a correction.` was caught. **`Sirens Echo filed a correction.` was not** — by the check that exists specifically for the named self-claim. Simple past is at least as natural a thing for a model to write as the perfect. ## Why only this family It does not touch `passiveActionClaim`, so it **cannot** regress the false fire QA demonstrated: ``` FALSE FIRE "The issue was created in June, before the wipe." ``` Families 3 and 4 run straight into that and need `notAClaim` to disqualify time expressions first, which is its own piece of work. Family 2 contains a genuine question — whether Deep catching a claim attributed to Echo is a guard or a false positive — that I would rather have decided than assume. ## Both directions A widening that starts reading ordinary prose as a claim is a worse defect than the one it fixes, so the negatives are pinned too: a capability statement, a refusal, the name in isolation, a comma between the name and the verb, and someone else acting all stay permitted. A tracker write the runtime actually performed still permits the claim, in either tense. ## One rename `TestOnlyOneMissedShapeSurvivesTheWholeReplyPath` is now `TestBothCharacterizedShapesBehaveThroughTheWholeReplyPath`. QA's note was fair: it measures a two-element corpus and its name made a claim about the check. Twelve survive. It is my test and the name was mine. Quail's twelve-shape corpus is coming as its own characterization file. When it lands it should fail on the shape this fixes — that failure is the file working. `ward exec gate` green.
fix(grounding): a named self-claim in the simple past is still a claim
All checks were successful
ci / image-build (pull_request) Successful in 21s
ci / test (pull_request) Successful in 36s
ci / publish-echo-image (pull_request) Has been skipped
ci / publish-observed (pull_request) Has been skipped
7129797afb
The check built specifically for a reply naming this service as the actor
required the perfect. Sirens Echo has filed a correction was caught. Sirens
Echo filed a correction was not, and simple past is at least as natural a thing
for a model to write.

Two characters, and the guard the suite presents as covering that shape did not
cover its own case.

QA measured twelve surviving shapes across four families. This is family one
only, taken first for their reason rather than a different one: it does not
touch passiveActionClaim, so it cannot regress the issue-was-created-in-June
false fire that families three and four run into.

The tests hold both directions, because a widening that starts reading ordinary
prose as a claim would be a worse defect than the one it fixed. A capability
statement, a refusal, a name in isolation, a comma between the name and the
verb, and someone else acting all stay permitted.

The pipeline characterization test is renamed. It measures two shapes and its
name asserted that only one survived the whole path, which was true of its own
corpus and not of the check.

Co-authored-by: Kai Siren <coilysiren@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>
coilyco-ops 2026-08-13 15:48:36 +00:00
  • closed this pull request
  • requested review from coilysiren
All checks were successful
ci / image-build (pull_request) Successful in 21s
ci / test (pull_request) Successful in 36s
ci / publish-echo-image (pull_request) Has been skipped
ci / publish-observed (pull_request) Has been skipped

Pull request closed

Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
coilyco-gaming/sirens-echo!553
No description provided.