You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make the single offline dev tool (scripts/fpat/eval/check-fixtures.mjs) also drive scorecard conformance, per the epic's validation path ("Extended check-fixtures.mjs runs green offline") — direction D1, 63/70.
Scope
Additive case kind in check-fixtures.mjs that runs check-scorecard.mjs --manifest <fixture>, asserts an expected exit code, and diffs normalized output (absolute paths stripped) against goldens in __fixtures__/expected/ (scorecard.*.json).
Invalid-manifest cases (S3). Any behavior change to the existing 7 audit cases. CI wiring. Changes to check-scorecard.mjs itself beyond what exit-code assertion requires (target: none).
Regression of the existing 7 cases — gate: they stay green byte-identical before/after; the case kind is additive only. Golden volatility from the printed manifest path — normalized away.
Acceptance criteria
node scripts/fpat/eval/check-fixtures.mjs green offline, 9/9 cases, no network.
--update regolds the scorecard goldens; existing 7 goldens unchanged.
Why it matters now
This is the "durable validator" half of the epic title — without it the #107 fixtures validate nothing automatically.
Sub-issue of #74.
Purpose
Make the single offline dev tool (
scripts/fpat/eval/check-fixtures.mjs) also drive scorecard conformance, per the epic's validation path ("Extendedcheck-fixtures.mjsruns green offline") — direction D1, 63/70.Scope
check-fixtures.mjsthat runscheck-scorecard.mjs --manifest <fixture>, asserts an expected exit code, and diffs normalized output (absolute paths stripped) against goldens in__fixtures__/expected/(scorecard.*.json).--updateregolds scorecard cases too.valid-full,valid-minimal) as expected-exit-0 cases.Out of scope
check-scorecard.mjsitself beyond what exit-code assertion requires (target: none).Dependencies
#107 merged (fixture manifests).
Risks / blockers
Regression of the existing 7 cases — gate: they stay green byte-identical before/after; the case kind is additive only. Golden volatility from the printed manifest path — normalized away.
Acceptance criteria
node scripts/fpat/eval/check-fixtures.mjsgreen offline, 9/9 cases, no network.--updateregolds the scorecard goldens; existing 7 goldens unchanged.Why it matters now
This is the "durable validator" half of the epic title — without it the #107 fixtures validate nothing automatically.