Split out of #14835 by the domain:devx execution seat (session session_012zGPuVVX3deAx9LdjK8jCk). The sibling half (AGENTS.md's exclude-shaped rule) went to the instruction-surface lane; this half stays here because it is the gate's own text.
The defect
check:type-check-coverage's TESTS_COVERED failure text tells an author how to fix a hidden-tests package by naming the sibling tsconfig.test.json route — but does not name the rootDir widening that route can require. So the remedy as written is incomplete for exactly the packages that need it most.
Measured on #14835: the include-narrowing shape puts tests outside the build config's rootDir, and onboarding one that way cost 116 × TS6059 inherited; even rootDir: "." still cost 3 (three packages/cli tests import fixtures from examples/app-showcase/src/**). PR #14833 resolved it with rootDir: "../..", the shape packages/client's test config already used — and a future author has no way to find that precedent from the gate's message.
⚠️ Today's population is 10/10 exclude-narrowing, all inside rootDir, so none of the ten needs the widening. That is why this is p3 and not urgent — and equally why it must not be dropped: the moment one include-narrower appears (the population was mixed until PR #14833 landed hours before the measurement), the remedy text sends its author down a route that does not work without a step the text omits.
Executable acceptance criterion
The TESTS_COVERED remedy names the rootDir consideration alongside the tsconfig.test.json route, and points at the rootDir: "../.." precedent. ⛔ Do not change what the gate accepts — this is remedy text, not predicate: the predicate at :1994 is already correct and already spelling-agnostic.
⛔ Serial hold — do not dispatch this until it clears
scripts/check-type-check-coverage.mjs is held by #13798 batch 3. Landing a remedy-text edit into that file while the batch-3 roster work is in flight collides on the same file, and check:ratchet-remedy-authority governs who may rewrite remedy text — so this waits rather than racing.
Blocked-by: #13798
Provenance
Measurement and verification: #14835 (devx seat, 2026-09-03T11:2xZ). Related: #14710, PR #14785, PR #14833.
domain:* and grading left for triage.
Generated by Claude Code
Split out of #14835 by the
domain:devxexecution seat (sessionsession_012zGPuVVX3deAx9LdjK8jCk). The sibling half (AGENTS.md's exclude-shaped rule) went to the instruction-surface lane; this half stays here because it is the gate's own text.The defect
check:type-check-coverage'sTESTS_COVEREDfailure text tells an author how to fix a hidden-tests package by naming the siblingtsconfig.test.jsonroute — but does not name therootDirwidening that route can require. So the remedy as written is incomplete for exactly the packages that need it most.Measured on #14835: the
include-narrowing shape puts tests outside the build config'srootDir, and onboarding one that way cost 116 × TS6059 inherited; evenrootDir: "."still cost 3 (threepackages/clitests import fixtures fromexamples/app-showcase/src/**). PR #14833 resolved it withrootDir: "../..", the shapepackages/client's test config already used — and a future author has no way to find that precedent from the gate's message.exclude-narrowing, all insiderootDir, so none of the ten needs the widening. That is why this is p3 and not urgent — and equally why it must not be dropped: the moment one include-narrower appears (the population was mixed until PR #14833 landed hours before the measurement), the remedy text sends its author down a route that does not work without a step the text omits.Executable acceptance criterion
The
TESTS_COVEREDremedy names therootDirconsideration alongside thetsconfig.test.jsonroute, and points at therootDir: "../.."precedent. ⛔ Do not change what the gate accepts — this is remedy text, not predicate: the predicate at:1994is already correct and already spelling-agnostic.⛔ Serial hold — do not dispatch this until it clears
scripts/check-type-check-coverage.mjsis held by #13798 batch 3. Landing a remedy-text edit into that file while the batch-3 roster work is in flight collides on the same file, andcheck:ratchet-remedy-authoritygoverns who may rewrite remedy text — so this waits rather than racing.Blocked-by: #13798
Provenance
Measurement and verification: #14835 (devx seat, 2026-09-03T11:2xZ). Related: #14710, PR #14785, PR #14833.
domain:*and grading left for triage.Generated by Claude Code