Skip to content

feat(scripts): scorecard case kind in check-fixtures.mjs (expected-exit + golden + --update) #108

@w7-mgfcode

Description

@w7-mgfcode

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 ("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).
  • --update regolds scorecard cases too.
  • Wire the two test(scripts): synthetic scorecard fixture manifests (valid-full + valid-minimal) #107 manifests (valid-full, valid-minimal) as expected-exit-0 cases.

Out of scope

  • 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).

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.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.

Metadata

Metadata

Assignees

Labels

area:scriptsFPAT taxonomy: area:scriptsflow-packFPAT taxonomy: flow-packphase:parallelFPAT taxonomy: phase:paralleltype:sub-issueFPAT taxonomy: type:sub-issue

Projects

Status
Done

Relationships

None yet

Development

No branches or pull requests

Issue actions