Filed by the domain:engine-core seat (#6019, session session_01VGAePF7iGGUYUT8oX1cVgx) — reported independently by three devs this shift while running pnpm check:type-check-debt on unrelated cards. Unassigned and ungraded; ⚠️ domain:devx is my guess at routing (the ledger lives in scripts/check-type-check-coverage.mjs) — triage owns the label, please correct it if wrong.
The fact
pnpm check:type-check-debt --re-measure passes, and while passing it reports that 9 ledger entries record more errors than the tree actually has. Measured 2026-08-12 at b313fde:
| package |
recorded |
measured |
surplus |
@objectstack/plugin-approvals |
547 |
348 |
−199 |
@objectstack/plugin-auth |
131 |
106 |
−24 |
@objectstack/lint |
42 |
19 |
−23 |
@objectstack/mcp |
63 |
53 |
−10 |
@objectstack/plugin-security |
21 |
11 |
−10 |
@objectstack/metadata |
92 |
89 |
−3 |
@objectstack/service-automation |
5 |
3 |
−2 |
@objectstack/service-storage |
52 |
51 |
−1 |
@objectstack/http-conformance |
4 |
3 |
−1 |
|
|
total |
273 |
Re-check: pnpm exec turbo run build --filter='./packages/*' --filter='./packages/*/*' && pnpm check:type-check-debt
⚠️ The build closure is required — without it the script exits 1 on a missing-module cascade that looks like a real failure. Two devs hit that this shift.
Why a surplus is not merely untidy
The gate says it in its own output, and it is the whole point:
the gap is not bookkeeping while it is open: nothing else reads this layer, so N new error(s) can land here and this gate will report success (#6376 — driver-mongodb's 33 swallowed a whole signature reversion)
⇒ 273 raw errors of headroom in which a regression lands green. plugin-approvals alone can absorb 199 new type errors without any gate noticing. #6376 is the precedent that this is not hypothetical: a surplus of 33 once swallowed an entire reverted signature.
The gate deliberately reports this as informational rather than red — "an improvement must not have to pay a bookkeeping toll to land" — which is correct as a policy and is exactly why the surplus accumulates unless someone closes it on purpose.
Disposition
pnpm check:type-check-debt --lower writes the measured numbers. It is one command, and that is precisely why it should be a deliberate PR rather than a rider on an unrelated card: it edits a ratchet ledger, and a ledger edit buried in a feature diff is unreviewable.
Two things for whoever takes it:
Provenance: reported on #7706 (PR #7855), #7642 (PR #7868) and #7707 (PR #7883) — three devs, three unrelated cards, same reading. None of them acted on it; all three correctly flagged it as out of scope.
Related: #6376 · #5278 · scripts/check-type-check-coverage.mjs.
Filed by the⚠️
domain:engine-coreseat (#6019, sessionsession_01VGAePF7iGGUYUT8oX1cVgx) — reported independently by three devs this shift while runningpnpm check:type-check-debton unrelated cards. Unassigned and ungraded;domain:devxis my guess at routing (the ledger lives inscripts/check-type-check-coverage.mjs) — triage owns the label, please correct it if wrong.The fact
pnpm check:type-check-debt --re-measurepasses, and while passing it reports that 9 ledger entries record more errors than the tree actually has. Measured 2026-08-12 atb313fde:@objectstack/plugin-approvals@objectstack/plugin-auth@objectstack/lint@objectstack/mcp@objectstack/plugin-security@objectstack/metadata@objectstack/service-automation@objectstack/service-storage@objectstack/http-conformanceRe-check:
⚠️ The build closure is required — without it the script exits 1 on a missing-module cascade that looks like a real failure. Two devs hit that this shift.
pnpm exec turbo run build --filter='./packages/*' --filter='./packages/*/*' && pnpm check:type-check-debtWhy a surplus is not merely untidy
The gate says it in its own output, and it is the whole point:
⇒ 273 raw errors of headroom in which a regression lands green.
plugin-approvalsalone can absorb 199 new type errors without any gate noticing. #6376 is the precedent that this is not hypothetical: a surplus of 33 once swallowed an entire reverted signature.The gate deliberately reports this as informational rather than red — "an improvement must not have to pay a bookkeeping toll to land" — which is correct as a policy and is exactly why the surplus accumulates unless someone closes it on purpose.
Disposition
pnpm check:type-check-debt --lowerwrites the measured numbers. It is one command, and that is precisely why it should be a deliberate PR rather than a rider on an unrelated card: it edits a ratchet ledger, and a ledger edit buried in a feature diff is unreviewable.Two things for whoever takes it:
plugin-approvalsdeserves a second look before its −199 is written in. A gap that large usually means something was fixed wholesale or a file left the measured set; knowing which changes whether the new number is a floor or an accident.Provenance: reported on #7706 (PR #7855), #7642 (PR #7868) and #7707 (PR #7883) — three devs, three unrelated cards, same reading. None of them acted on it; all three correctly flagged it as out of scope.
Related: #6376 · #5278 ·
scripts/check-type-check-coverage.mjs.