Commit ad308fc
fix(scripts): floor the derived population in the engine-double and type-check gates (#17099)
Both gates could report a clean tree over a scan that read almost none of it.
Their only protection was emergent — the engine gate's zero-checks catch a total
collapse but not a partial one, and the type-check gate's only guard is its
ledgers reconciling, which disappears when a ratchet reaches zero. Two of that
gate's six ledgers are already empty.
Adds the `floorProblem()` shape check-dual-build-cjs-loads.mjs carries, over the
DERIVED population in each gate — never over a ledger, whose shrinking is the
goal — plus a provenance line on every green run so the record cannot silently
stop describing the tree. Both refuse with a distinct exit code 2.
Measured on 854639b:
engine testFiles 3503 · productionFiles 2596 · discoveredFiles 911 · pinnedRows 779
type-check packages 80 · walkedTestFiles 3503 · walkedSourceFiles 2521
Claude-Session: https://claude.ai/code/session_012GKcPZbMoGq7WPzKLfRBTU
Co-authored-by: Claude <noreply@anthropic.com>1 parent 4215417 commit ad308fc
2 files changed
Lines changed: 615 additions & 5 deletions
0 commit comments