Files
msd-core/.changeset/merry-badgers-tumble.md
Tom Boucher 6e59f97dd5 feat(#1955): flag coincidental reliance in goal-backward verification (#3250)
* test(#1955): failing-first contract for verifier coincidental-reliance advisory

* test(#1955): anchor coincidental-reliance assertions on the frontmatter block

* feat(#1955): flag coincidental reliance in goal-backward verification

* chore(#1955): correct stale workflow tier high-water comment

* fix(#1955): close the verify-phase divergence and state the endogeneity limit

* docs(#1955): backfill changeset pr number

---------

Co-authored-by: sim <sim@local>
2026-08-09 12:07:41 -04:00

1.3 KiB

type, pr
type pr
Changed 3250

gsd-verifier now says why a verified truth holds, not just that it does — a truth that reaches ✓ VERIFIED is additionally classified against three incidental-reliance patterns (an undeclared precondition, an ordering or side effect nothing enforces, a truth that is only true under the test fixture) and, when one matches, is reported as ✓ VERIFIED (coincidental-reliance) with an entry in the new coincidental_reliance_items frontmatter list naming what to harden. Purely advisory: the base ✓ VERIFIED token is unchanged, the truth still counts toward the score, the overall status is unaffected, and no human-verification item is emitted — a passing phase still passes. Only a consumer matching the truth-row verdict cell for exact equality (rather than as a substring) needs to tolerate the suffix. Two limits stated up front: the check is endogenous, and so measurably weaker than the exogenous backstop tag gsd-core/references/honest-verifier.md routes on — advisory status is the consequence, and its precision is unmeasured; and gsd-core/workflows/verify-phase.md is not edited, receiving the rule through its eager import of the verification-report template rather than a second inline copy, because it sits 29 bytes under its size hard cap. (#1955)