feat(HAI-088): add @types/node to dashboard and typecheck regression test

- Add @types/node ^22.0.0 to @hai/dashboard devDependencies
- Add typecheck regression test that runs tsc --noEmit --skipLibCheck false
- Update pnpm-lock.yaml with resolved dependencies
This commit is contained in:
Dustin Byrne
2026-03-26 01:00:50 -04:00
parent b065029066
commit a12550d625
3 changed files with 92 additions and 10 deletions

View File

@@ -26,6 +26,7 @@
"@testing-library/jest-dom": "^6.9.1",
"@testing-library/react": "^16.3.2",
"@types/express": "^5.0.0",
"@types/node": "^22.0.0",
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0",
"@vitejs/plugin-react": "^4.3.0",

View File

@@ -0,0 +1,16 @@
import { execFileSync } from "node:child_process";
import { resolve } from "node:path";
import { describe, it, expect } from "vitest";
describe("typecheck", () => {
it("passes tsc --noEmit --skipLibCheck false", () => {
const cwd = resolve(__dirname, "../..");
expect(() =>
execFileSync("npx", ["tsc", "--noEmit", "--skipLibCheck", "false"], {
cwd,
stdio: "pipe",
timeout: 60_000,
}),
).not.toThrow();
});
});

85
pnpm-lock.yaml generated
View File

@@ -94,6 +94,9 @@ importers:
'@types/express':
specifier: ^5.0.0
version: 5.0.6
'@types/node':
specifier: ^22.0.0
version: 22.19.15
'@types/react':
specifier: ^19.0.0
version: 19.2.14
@@ -102,7 +105,7 @@ importers:
version: 19.2.3(@types/react@19.2.14)
'@vitejs/plugin-react':
specifier: ^4.3.0
version: 4.7.0(vite@6.4.1(@types/node@25.5.0)(tsx@4.21.0)(yaml@2.8.3))
version: 4.7.0(vite@6.4.1(@types/node@22.19.15)(tsx@4.21.0)(yaml@2.8.3))
jsdom:
specifier: ^29.0.1
version: 29.0.1
@@ -111,10 +114,10 @@ importers:
version: 5.9.3
vite:
specifier: ^6.0.0
version: 6.4.1(@types/node@25.5.0)(tsx@4.21.0)(yaml@2.8.3)
version: 6.4.1(@types/node@22.19.15)(tsx@4.21.0)(yaml@2.8.3)
vitest:
specifier: ^4.1.1
version: 4.1.1(@types/node@25.5.0)(jsdom@29.0.1)(vite@6.4.1(@types/node@25.5.0)(tsx@4.21.0)(yaml@2.8.3))
version: 4.1.1(@types/node@22.19.15)(jsdom@29.0.1)(vite@6.4.1(@types/node@22.19.15)(tsx@4.21.0)(yaml@2.8.3))
packages/engine:
dependencies:
@@ -1419,6 +1422,9 @@ packages:
'@types/node@12.20.55':
resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==}
'@types/node@22.19.15':
resolution: {integrity: sha512-F0R/h2+dsy5wJAUe3tAU6oqa2qbWY5TpNfL/RGmo1y38hiyO1w3x2jPtt76wmuaJI4DQnOBu21cNXQ2STIUUWg==}
'@types/node@25.5.0':
resolution: {integrity: sha512-jp2P3tQMSxWugkCUKLRPVUpGaL5MVFwF8RDuSRztfwgN1wmqJeMSbKlnEtQqU8UrhTmzEmZdu2I6v2dpp7XIxw==}
@@ -3100,6 +3106,9 @@ packages:
resolution: {integrity: sha512-rvKSBiC5zqCCiDZ9kAOszZcDvdAHwwIKJG33Ykj43OKcWsnmcBRL09YTU4nOeHZ8Y2a7l1MgTd08SBe9A8Qj6A==}
engines: {node: '>=18'}
undici-types@6.21.0:
resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==}
undici-types@7.18.2:
resolution: {integrity: sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==}
@@ -4894,7 +4903,7 @@ snapshots:
'@types/body-parser@1.19.6':
dependencies:
'@types/connect': 3.4.38
'@types/node': 25.5.0
'@types/node': 22.19.15
'@types/chai@5.2.3':
dependencies:
@@ -4903,7 +4912,7 @@ snapshots:
'@types/connect@3.4.38':
dependencies:
'@types/node': 25.5.0
'@types/node': 22.19.15
'@types/debug@4.1.13':
dependencies:
@@ -4919,7 +4928,7 @@ snapshots:
'@types/express-serve-static-core@5.1.1':
dependencies:
'@types/node': 25.5.0
'@types/node': 22.19.15
'@types/qs': 6.15.0
'@types/range-parser': 1.2.7
'@types/send': 1.2.1
@@ -4950,6 +4959,10 @@ snapshots:
'@types/node@12.20.55': {}
'@types/node@22.19.15':
dependencies:
undici-types: 6.21.0
'@types/node@25.5.0':
dependencies:
undici-types: 7.18.2
@@ -4970,12 +4983,12 @@ snapshots:
'@types/send@1.2.1':
dependencies:
'@types/node': 25.5.0
'@types/node': 22.19.15
'@types/serve-static@2.2.0':
dependencies:
'@types/http-errors': 2.0.5
'@types/node': 25.5.0
'@types/node': 22.19.15
'@types/unist@2.0.11': {}
@@ -4988,7 +5001,7 @@ snapshots:
'@ungap/structured-clone@1.3.0': {}
'@vitejs/plugin-react@4.7.0(vite@6.4.1(@types/node@25.5.0)(tsx@4.21.0)(yaml@2.8.3))':
'@vitejs/plugin-react@4.7.0(vite@6.4.1(@types/node@22.19.15)(tsx@4.21.0)(yaml@2.8.3))':
dependencies:
'@babel/core': 7.29.0
'@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.29.0)
@@ -4996,7 +5009,7 @@ snapshots:
'@rolldown/pluginutils': 1.0.0-beta.27
'@types/babel__core': 7.20.5
react-refresh: 0.17.0
vite: 6.4.1(@types/node@25.5.0)(tsx@4.21.0)(yaml@2.8.3)
vite: 6.4.1(@types/node@22.19.15)(tsx@4.21.0)(yaml@2.8.3)
transitivePeerDependencies:
- supports-color
@@ -5025,6 +5038,14 @@ snapshots:
optionalDependencies:
vite: 6.4.1(@types/node@25.5.0)(tsx@4.21.0)(yaml@2.8.3)
'@vitest/mocker@4.1.1(vite@6.4.1(@types/node@22.19.15)(tsx@4.21.0)(yaml@2.8.3))':
dependencies:
'@vitest/spy': 4.1.1
estree-walker: 3.0.3
magic-string: 0.30.21
optionalDependencies:
vite: 6.4.1(@types/node@22.19.15)(tsx@4.21.0)(yaml@2.8.3)
'@vitest/mocker@4.1.1(vite@6.4.1(@types/node@25.5.0)(tsx@4.21.0)(yaml@2.8.3))':
dependencies:
'@vitest/spy': 4.1.1
@@ -6958,6 +6979,8 @@ snapshots:
uint8array-extras@1.5.0: {}
undici-types@6.21.0: {}
undici-types@7.18.2: {}
undici@7.24.6: {}
@@ -7040,6 +7063,20 @@ snapshots:
- tsx
- yaml
vite@6.4.1(@types/node@22.19.15)(tsx@4.21.0)(yaml@2.8.3):
dependencies:
esbuild: 0.25.12
fdir: 6.5.0(picomatch@4.0.4)
picomatch: 4.0.4
postcss: 8.5.8
rollup: 4.60.0
tinyglobby: 0.2.15
optionalDependencies:
'@types/node': 22.19.15
fsevents: 2.3.3
tsx: 4.21.0
yaml: 2.8.3
vite@6.4.1(@types/node@25.5.0)(tsx@4.21.0)(yaml@2.8.3):
dependencies:
esbuild: 0.25.12
@@ -7097,6 +7134,34 @@ snapshots:
- tsx
- yaml
vitest@4.1.1(@types/node@22.19.15)(jsdom@29.0.1)(vite@6.4.1(@types/node@22.19.15)(tsx@4.21.0)(yaml@2.8.3)):
dependencies:
'@vitest/expect': 4.1.1
'@vitest/mocker': 4.1.1(vite@6.4.1(@types/node@22.19.15)(tsx@4.21.0)(yaml@2.8.3))
'@vitest/pretty-format': 4.1.1
'@vitest/runner': 4.1.1
'@vitest/snapshot': 4.1.1
'@vitest/spy': 4.1.1
'@vitest/utils': 4.1.1
es-module-lexer: 2.0.0
expect-type: 1.3.0
magic-string: 0.30.21
obug: 2.1.1
pathe: 2.0.3
picomatch: 4.0.4
std-env: 4.0.0
tinybench: 2.9.0
tinyexec: 1.0.4
tinyglobby: 0.2.15
tinyrainbow: 3.1.0
vite: 6.4.1(@types/node@22.19.15)(tsx@4.21.0)(yaml@2.8.3)
why-is-node-running: 2.3.0
optionalDependencies:
'@types/node': 22.19.15
jsdom: 29.0.1
transitivePeerDependencies:
- msw
vitest@4.1.1(@types/node@25.5.0)(jsdom@29.0.1)(vite@6.4.1(@types/node@25.5.0)(tsx@4.21.0)(yaml@2.8.3)):
dependencies:
'@vitest/expect': 4.1.1