From ea1707206ac171da3adc152ab8fde64ede37430b Mon Sep 17 00:00:00 2001 From: Bonanza Date: Tue, 18 Aug 2026 00:55:31 -0700 Subject: [PATCH] fix(lint): exclude consumer fixtures from the root tsc program MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit npm run lint (root tsc --noEmit) exited 2 with 3x TS2578 "Unused '@ts-expect-error' directive" at packages/plugin-types/fixtures/globals/jsc-with-globals/main.ts:59,64,67. Root cause: the root tsconfig.json has no include, so tsc sweeps the fn-182 globals consumer fixtures under the DEFAULT lib (which pulls in lib.dom, making URL fully typed) — so the fixture's deliberate @ts-expect-error lines stop erroring and trip TS2578. The fixtures are designed to compile ONLY under their own per-fixture tsconfigs (lib ES2020, types: []), driven by fixtures/globals/run.mjs. Fix: add packages/*/fixtures to the root exclude so the lint program never sweeps consumer fixtures. The per-fixture harness (npm test -> node fixtures/globals/run.mjs) still exercises all 4 cases under their own tsconfigs, so the fn-182 contract stays enforced. Introduced by PR #8 (feat/url-globals-subpath); unseen by CI because the only workflow (docs.yml) runs docs checks, not root lint. --- tsconfig.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tsconfig.json b/tsconfig.json index 02f81ad..33f360e 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -20,5 +20,5 @@ { "path": "packages/view-builders" }, { "path": "packages/plugin-utils" } ], - "exclude": ["node_modules", "dist", "docs-site"] + "exclude": ["node_modules", "dist", "docs-site", "packages/*/fixtures"] }