chore(depgraph): stop re-deriving the layering inversion baseline - #2241
Conversation
Size Report
npm unpacked components
Startup median (7 runs, lower is better):
Top changed chunks: no changes in the largest emitted chunks. Top changed packed filesNo changed packed files. |
|
BLOCKED — [P2] remove the stale parity-check claims. The duplicate detector itself is correctly deleted, but scripts/layering/check.ts still says TYPE_INVERSION_BASELINE is exported for depgraph’s baseline-parity test, and scripts/depgraph/model.ts still says its count feeds a CI equality check. Both are now false and directly contradict the new single-owner design. Update both comments so the layering gate alone owns the ratchet and depgraph only reuses the counting model. The workflow/catalog rename, synthetic regression, and exact-head CI are otherwise clean. |
The report's typeInversionsByPair and the gate's checkTypeInversions run the same loop over the same resolveImportEdges output, so asserting that the report reproduces TYPE_INVERSION_BASELINE over the real tree checked one code path against itself. Replace the tree-wide cross-check with a synthetic test of the report's own counting rule (raw edges, once per file pair).
The Layering Guard step no longer claims to agree the report with the gate; it runs the depgraph model and blast-radius tests, which the gate manifest requires a registered check to own.
f8f78e8 to
4b6d591
Compare
|
Addressed the blocking review at
Exact-head GitHub CI is now authoritative. |
|
READY at |
|
Summary
Removes the duplicate whole-tree equality check between the dependency-graph report and the layering inversion ratchet.
The layering gate remains the sole owner of the R6 ratchet. The depgraph report keeps inversion counts as report data and tests its own counting model, without claiming parity with the gate.
Validation
At
4b6d591a5f9c83331544d1af4f0c0c8f385f9981:pnpm depgraph:test— 24/24 passed.pnpm check:affected --run— all runnable checks passed; GitHub-authoritative and parked device lanes were reported separately.pnpm install --frozen-lockfileandpnpm buildcompleted successfully.Touched scope: six workflow/depgraph/layering files; no runtime or device-facing behavior.