Filed by the triage seat (objectstack-wide, seat post #6015, session_01AavokzJ5DndAwitDXvKy4U) as the one carrier the maintainer's 「4311 关」 creates. ⛔ Not a claim, ⛔ not a dispatch. Graded here: tooling · priority:p3 · domain:cli · area:devpath · pm:queue.
Where #4311 ended
#4311 (July) measured 66 of 77 packages building with tsup and no tsc reading them, with 380 code-tier errors across 18 packages. Its three proposals have all landed on main (read at 41dcf11884):
- The coverage ratchet.
pnpm check:type-check-coverage fails any package that neither declares typecheck nor carries a measured DEBT/EXEMPT ledger entry; check:type-check-debt re-measures each ledger number. 70 of 74 workspace packages under packages/ now declare typecheck (2 in July).
- The test-layer template. Per-package
tsconfig.test.json files named by the typecheck script; 20 packages hold a per-file test-typecheck-debt.json.
- The code-tier burn-down.
driver-sql (241 of the 380) and the other big entries graduated.
What is left (this card)
Three packages still have no typecheck script and sit in the DEBT ledger of scripts/check-type-check-coverage.mjs. All three are domain:cli surfaces:
| package |
ledgered |
ledger note |
@objectstack/cloud-connection |
13 |
code-tier 11 (TS2493 tuple indexing) + 2 config-tier |
@objectstack/observability |
11 |
all code-tier (TS2554 wrong arity ×10, TS2552) |
@objectstack/hono (packages/adapters/hono) |
3 |
all code-tier (TS2769 / TS18046) |
Direction, per package (the road #15048 / #15050 took):
- Add a
tsconfig.test.json over the test layer and a typecheck script that names it.
- Re-measure first and say both readings (the build config vs the test config), so config-tier and code-tier are separated before anything is fixed.
- Fix each code-tier error at its cause: a mock typed to the call site it stubs, the call's real arity. ⛔ No cast, ⛔ no
@ts-expect-error, ⛔ no widened source signature to make a test compile.
- Delete the
DEBT entry, don't lower it. The gate's RECONCILED direction then holds the package.
A package whose errors turn out to be a real source defect (not a test shape) is split to its own card instead of being fixed under this one.
Not here:
@objectstack/console is EXEMPT (a published objectui build artifact with no TypeScript sources). That is correct and stays.
- The
spec-monorepo root entry (26, almost all one missing types:["node"] on the root program). It is not a package and moves with scripts/; it is not this card's.
Why p3. Each package is covered by the ratchet, so nothing can regress silently; what remains is 27 ledgered errors in three small packages, and no user is measured waiting on them.
Filed by the triage seat (objectstack-wide, seat post #6015,
session_01AavokzJ5DndAwitDXvKy4U) as the one carrier the maintainer's 「4311 关」 creates. ⛔ Not a claim, ⛔ not a dispatch. Graded here:tooling·priority:p3·domain:cli·area:devpath·pm:queue.Where #4311 ended
#4311 (July) measured 66 of 77 packages building with
tsupand notscreading them, with 380 code-tier errors across 18 packages. Its three proposals have all landed onmain(read at41dcf11884):pnpm check:type-check-coveragefails any package that neither declarestypechecknor carries a measured DEBT/EXEMPT ledger entry;check:type-check-debtre-measures each ledger number. 70 of 74 workspace packages underpackages/now declaretypecheck(2 in July).tsconfig.test.jsonfiles named by thetypecheckscript; 20 packages hold a per-filetest-typecheck-debt.json.driver-sql(241 of the 380) and the other big entries graduated.What is left (this card)
Three packages still have no
typecheckscript and sit in theDEBTledger ofscripts/check-type-check-coverage.mjs. All three aredomain:clisurfaces:@objectstack/cloud-connection@objectstack/observability@objectstack/hono(packages/adapters/hono)Direction, per package (the road #15048 / #15050 took):
tsconfig.test.jsonover the test layer and atypecheckscript that names it.@ts-expect-error, ⛔ no widened source signature to make a test compile.DEBTentry, don't lower it. The gate's RECONCILED direction then holds the package.A package whose errors turn out to be a real source defect (not a test shape) is split to its own card instead of being fixed under this one.
Not here:
@objectstack/consoleisEXEMPT(a published objectui build artifact with no TypeScript sources). That is correct and stays.spec-monoreporoot entry (26, almost all one missingtypes:["node"]on the root program). It is not a package and moves withscripts/; it is not this card's.Why p3. Each package is covered by the ratchet, so nothing can regress silently; what remains is 27 ledgered errors in three small packages, and no user is measured waiting on them.