ci(x): typecheck test files — the gap vitest and the build tsconfigs both miss

Test files were typechecked by nothing: tsconfig.build.json excludes
them (correctly — they must not land in dist), and vitest transforms
with esbuild, which strips types without checking them. That gap is
where the review's two tsc breaks and the fixture drift accumulated.

Adds 'typecheck' scripts per package (dev tsconfigs, which include
src/**/*.test.ts; renderer reuses its existing tsc -b), a root
orchestrator mirroring the test script, and a CI step in the vitest
job. All three packages are currently clean.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Ramnique Singh 2026-07-10 16:27:06 +05:30
parent 02912ba9ef
commit 6a8e67878d
6 changed files with 15 additions and 1 deletions

View file

@ -5,6 +5,7 @@
"scripts": {
"dev": "vite",
"build": "tsc -b && vite build",
"typecheck": "tsc -b",
"lint": "eslint .",
"preview": "vite preview",
"test": "vitest run",

View file

@ -16,7 +16,11 @@
"test": "npm run shared && npm run test:shared && npm run test:core && npm run test:renderer",
"test:shared": "cd packages/shared && npm test",
"test:core": "cd packages/core && npm test",
"test:renderer": "cd apps/renderer && npm test"
"test:renderer": "cd apps/renderer && npm test",
"typecheck": "npm run shared && npm run typecheck:shared && npm run typecheck:core && npm run typecheck:renderer",
"typecheck:shared": "cd packages/shared && npm run typecheck",
"typecheck:core": "cd packages/core && npm run typecheck",
"typecheck:renderer": "cd apps/renderer && npm run typecheck"
},
"devDependencies": {
"@eslint/js": "^9.39.2",

View file

@ -7,6 +7,7 @@
"scripts": {
"build": "rm -rf dist && tsc -p tsconfig.build.json",
"dev": "tsc -w -p tsconfig.build.json",
"typecheck": "tsc --noEmit -p tsconfig.json",
"test": "vitest run",
"test:watch": "vitest",
"inspect-turn": "node dist/runtime/turns/inspect-cli.js",

View file

@ -7,6 +7,7 @@
"scripts": {
"build": "rm -rf dist && tsc -p tsconfig.build.json",
"dev": "tsc -w",
"typecheck": "tsc --noEmit -p tsconfig.json",
"test": "vitest run",
"test:watch": "vitest"
},