chore(tooling): port upstream infra/tooling audit fixes
Ports the kept-file portions of the upstream infra audit-fix subset onto the clean-slate template branch (auth-only shape; workspaces feature never existed here, so its package.json edit is skipped): - resolve the root playwright config in pnpm test:visual (S8) - prune dead VERCEL_ENV from turbo.json globalEnv (S9) - drop the duplicate chromium install in the storybook CI job (S10) - wire scripts/**/*.test.mjs under a dedicated vitest runner (vitest.scripts.config.mjs + pnpm test:scripts + CI validate step); convert node:test imports to vitest keeping node:assert - ignore *.tsbuildinfo repo-wide and untrack the committed build state - align every @trpc/* range on ^11.18.0 so the workspace resolves to a single version (peer-warning-free install) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016j8z4VHjedXDTjEDNg7qHK
This commit is contained in:
6
.github/workflows/ci.yml
vendored
6
.github/workflows/ci.yml
vendored
@@ -65,6 +65,10 @@ jobs:
|
||||
- run: pnpm typecheck
|
||||
- run: pnpm lint
|
||||
- run: pnpm conformance
|
||||
# scripts/ is not a workspace package, so `pnpm test` (turbo) never
|
||||
# reaches its test files — they get their own vitest run.
|
||||
- name: Root scripts test suite
|
||||
run: pnpm test:scripts
|
||||
- name: Compliance manifest drift check
|
||||
run: |
|
||||
pnpm compliance:emit-all --check || {
|
||||
@@ -156,7 +160,5 @@ jobs:
|
||||
- name: Build Storybook
|
||||
run: pnpm --filter @repo/storybook build:storybook
|
||||
- run: pnpm test:stories
|
||||
- name: Install Playwright browsers
|
||||
run: pnpm exec playwright install chromium --with-deps
|
||||
- name: Visual regression
|
||||
run: pnpm test:visual
|
||||
|
||||
3
.gitignore
vendored
3
.gitignore
vendored
@@ -10,6 +10,9 @@ node_modules
|
||||
# Turbo
|
||||
.turbo
|
||||
|
||||
# TypeScript incremental build state
|
||||
*.tsbuildinfo
|
||||
|
||||
# Build outputs
|
||||
dist
|
||||
build
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -22,7 +22,7 @@
|
||||
"@sentry/nextjs": "^10.51.0",
|
||||
"@tailwindcss/postcss": "^4.3.0",
|
||||
"@tanstack/react-query": "^5.96.2",
|
||||
"@trpc/server": "^11.17.0",
|
||||
"@trpc/server": "^11.18.0",
|
||||
"inversify": "^6.2.0",
|
||||
"next": "^15.3.0",
|
||||
"payload": "^3.14.0",
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -13,8 +13,9 @@
|
||||
"test": "turbo run test",
|
||||
"test:coverage": "turbo run test -- --coverage",
|
||||
"test:e2e": "turbo run test:e2e",
|
||||
"test:scripts": "vitest run --config vitest.scripts.config.mjs",
|
||||
"test:stories": "turbo run test:stories",
|
||||
"test:visual": "pnpm --filter @repo/storybook exec concurrently -k -s first -n 'SB,VRT' -c 'magenta,blue' 'pnpm --filter @repo/storybook exec http-server storybook-static --port 6006 --silent' 'pnpm --filter @repo/storybook exec wait-on tcp:6006 && pnpm exec playwright test'",
|
||||
"test:visual": "pnpm --filter @repo/storybook exec concurrently -k -s first -n 'SB,VRT' -c 'magenta,blue' 'pnpm --filter @repo/storybook exec http-server storybook-static --port 6006 --silent' 'pnpm --filter @repo/storybook exec wait-on tcp:6006 && pnpm exec playwright test --config ../../playwright.config.ts'",
|
||||
"typecheck": "turbo run typecheck",
|
||||
"conformance": "node scripts/conformance.mjs",
|
||||
"coverage:diff": "node scripts/coverage/diff.mjs",
|
||||
@@ -46,6 +47,7 @@
|
||||
"prettier": "^3.5.0",
|
||||
"turbo": "^2.4.0",
|
||||
"typescript": "^5.8.0",
|
||||
"vitest": "^3.2.7",
|
||||
"zod": "^3.25.0"
|
||||
},
|
||||
"lint-staged": {
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@repo/core-shared": "workspace:*",
|
||||
"@trpc/server": "^11.0.0",
|
||||
"@trpc/server": "^11.18.0",
|
||||
"inversify": "^6.2.0",
|
||||
"payload": "^3.14.0",
|
||||
"reflect-metadata": "^0.2.2",
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
"@repo/core-consent": "workspace:*",
|
||||
"@repo/core-dsr": "workspace:*",
|
||||
"@repo/core-shared": "workspace:*",
|
||||
"@trpc/server": "^11.0.0"
|
||||
"@trpc/server": "^11.18.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@repo/core-eslint": "workspace:*",
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@repo/core-shared": "workspace:*",
|
||||
"@trpc/server": "^11.0.0",
|
||||
"@trpc/server": "^11.18.0",
|
||||
"zod": "^3.23.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@repo/core-shared": "workspace:*",
|
||||
"@trpc/server": "^11.0.0",
|
||||
"@trpc/server": "^11.18.0",
|
||||
"zod": "^3.24.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@repo/core-shared": "workspace:*",
|
||||
"@trpc/server": "^11.0.0",
|
||||
"@trpc/server": "^11.18.0",
|
||||
"payload": "^3.0.0",
|
||||
"zod": "^3.24.0"
|
||||
},
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
"@opentelemetry/semantic-conventions": "^1.27.0",
|
||||
"@sentry/nextjs": "^10.51.0",
|
||||
"@sentry/opentelemetry": "^10.51.0",
|
||||
"@trpc/server": "^11.0.0",
|
||||
"@trpc/server": "^11.18.0",
|
||||
"payload": "^3.14.0",
|
||||
"superjson": "^2.2.1",
|
||||
"zod": "^3.24.0"
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
"@testing-library/jest-dom": "^6.5.0",
|
||||
"@testing-library/react": "^16.0.0",
|
||||
"@testing-library/user-event": "^14.5.0",
|
||||
"@trpc/client": "^11.0.0",
|
||||
"@trpc/client": "^11.18.0",
|
||||
"react": "^19.0.0",
|
||||
"react-dom": "^19.0.0",
|
||||
"superjson": "^2.2.0",
|
||||
@@ -37,7 +37,7 @@
|
||||
"zod": "^3.23.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@trpc/server": "^11.0.0",
|
||||
"@trpc/server": "^11.18.0",
|
||||
"payload": "^3.0.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
|
||||
@@ -17,9 +17,9 @@
|
||||
"dependencies": {
|
||||
"@repo/core-api": "workspace:*",
|
||||
"@tanstack/react-query": "^5.66.0",
|
||||
"@trpc/client": "^11.17.0",
|
||||
"@trpc/server": "^11.17.0",
|
||||
"@trpc/tanstack-react-query": "^11.17.0",
|
||||
"@trpc/client": "^11.18.0",
|
||||
"@trpc/server": "^11.18.0",
|
||||
"@trpc/tanstack-react-query": "^11.18.0",
|
||||
"react": "^19.0.0",
|
||||
"superjson": "^2.2.1"
|
||||
},
|
||||
|
||||
286
pnpm-lock.yaml
generated
286
pnpm-lock.yaml
generated
@@ -18,7 +18,7 @@ importers:
|
||||
version: 8.7.1
|
||||
"@stryker-mutator/vitest-runner":
|
||||
specifier: ^8.7.0
|
||||
version: 8.7.1(@stryker-mutator/core@8.7.1)(vitest@3.2.4(@types/debug@4.1.13)(@types/node@22.19.17)(happy-dom@20.8.9)(jiti@2.7.0)(jsdom@25.0.1)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0))
|
||||
version: 8.7.1(@stryker-mutator/core@8.7.1)(vitest@3.2.7(@types/debug@4.1.13)(@types/node@22.19.17)(happy-dom@20.8.9)(jiti@2.7.0)(jsdom@25.0.1)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0))
|
||||
"@turbo/gen":
|
||||
specifier: ^2.4.0
|
||||
version: 2.9.10(@types/node@22.19.17)
|
||||
@@ -49,6 +49,9 @@ importers:
|
||||
typescript:
|
||||
specifier: ^5.8.0
|
||||
version: 5.9.3
|
||||
vitest:
|
||||
specifier: ^3.2.7
|
||||
version: 3.2.7(@types/debug@4.1.13)(@types/node@22.19.17)(happy-dom@20.8.9)(jiti@2.7.0)(jsdom@25.0.1)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0)
|
||||
zod:
|
||||
specifier: ^3.25.0
|
||||
version: 3.25.76
|
||||
@@ -198,8 +201,8 @@ importers:
|
||||
specifier: ^5.96.2
|
||||
version: 5.96.2(react@19.2.4)
|
||||
"@trpc/server":
|
||||
specifier: ^11.17.0
|
||||
version: 11.17.0(typescript@5.9.3)
|
||||
specifier: ^11.18.0
|
||||
version: 11.18.0(typescript@5.9.3)
|
||||
inversify:
|
||||
specifier: ^6.2.0
|
||||
version: 6.2.2(reflect-metadata@0.2.2)
|
||||
@@ -274,8 +277,8 @@ importers:
|
||||
specifier: workspace:*
|
||||
version: link:../core-shared
|
||||
"@trpc/server":
|
||||
specifier: ^11.0.0
|
||||
version: 11.16.0(typescript@5.9.3)
|
||||
specifier: ^11.18.0
|
||||
version: 11.18.0(typescript@5.9.3)
|
||||
inversify:
|
||||
specifier: ^6.2.0
|
||||
version: 6.2.2(reflect-metadata@0.2.2)
|
||||
@@ -360,8 +363,8 @@ importers:
|
||||
specifier: workspace:*
|
||||
version: link:../core-shared
|
||||
"@trpc/server":
|
||||
specifier: ^11.0.0
|
||||
version: 11.16.0(typescript@5.9.3)
|
||||
specifier: ^11.18.0
|
||||
version: 11.18.0(typescript@5.9.3)
|
||||
devDependencies:
|
||||
"@repo/core-eslint":
|
||||
specifier: workspace:*
|
||||
@@ -388,8 +391,8 @@ importers:
|
||||
specifier: workspace:*
|
||||
version: link:../core-shared
|
||||
"@trpc/server":
|
||||
specifier: ^11.0.0
|
||||
version: 11.16.0(typescript@5.9.3)
|
||||
specifier: ^11.18.0
|
||||
version: 11.18.0(typescript@5.9.3)
|
||||
zod:
|
||||
specifier: ^3.23.0
|
||||
version: 3.25.76
|
||||
@@ -474,8 +477,8 @@ importers:
|
||||
specifier: workspace:*
|
||||
version: link:../core-shared
|
||||
"@trpc/server":
|
||||
specifier: ^11.0.0
|
||||
version: 11.16.0(typescript@5.9.3)
|
||||
specifier: ^11.18.0
|
||||
version: 11.18.0(typescript@5.9.3)
|
||||
zod:
|
||||
specifier: ^3.24.0
|
||||
version: 3.25.76
|
||||
@@ -520,8 +523,8 @@ importers:
|
||||
specifier: workspace:*
|
||||
version: link:../core-shared
|
||||
"@trpc/server":
|
||||
specifier: ^11.0.0
|
||||
version: 11.16.0(typescript@5.9.3)
|
||||
specifier: ^11.18.0
|
||||
version: 11.18.0(typescript@5.9.3)
|
||||
payload:
|
||||
specifier: ^3.0.0
|
||||
version: 3.81.0(graphql@16.13.2)(typescript@5.9.3)
|
||||
@@ -630,8 +633,8 @@ importers:
|
||||
specifier: ^10.51.0
|
||||
version: 10.52.0(@opentelemetry/api@1.9.1)(@opentelemetry/core@2.7.1(@opentelemetry/api@1.9.1))(@opentelemetry/sdk-trace-base@1.30.1(@opentelemetry/api@1.9.1))(@opentelemetry/semantic-conventions@1.40.0)
|
||||
"@trpc/server":
|
||||
specifier: ^11.0.0
|
||||
version: 11.16.0(typescript@5.9.3)
|
||||
specifier: ^11.18.0
|
||||
version: 11.18.0(typescript@5.9.3)
|
||||
payload:
|
||||
specifier: ^3.14.0
|
||||
version: 3.81.0(graphql@16.13.2)(typescript@5.9.3)
|
||||
@@ -694,11 +697,11 @@ importers:
|
||||
specifier: ^14.5.0
|
||||
version: 14.6.1(@testing-library/dom@10.4.1)
|
||||
"@trpc/client":
|
||||
specifier: ^11.0.0
|
||||
version: 11.16.0(@trpc/server@11.16.0(typescript@5.9.3))(typescript@5.9.3)
|
||||
specifier: ^11.18.0
|
||||
version: 11.18.0(@trpc/server@11.18.0(typescript@5.9.3))(typescript@5.9.3)
|
||||
"@trpc/server":
|
||||
specifier: ^11.0.0
|
||||
version: 11.16.0(typescript@5.9.3)
|
||||
specifier: ^11.18.0
|
||||
version: 11.18.0(typescript@5.9.3)
|
||||
payload:
|
||||
specifier: ^3.0.0
|
||||
version: 3.81.0(graphql@16.13.2)(typescript@5.9.3)
|
||||
@@ -752,14 +755,14 @@ importers:
|
||||
specifier: ^5.66.0
|
||||
version: 5.96.2(react@19.2.4)
|
||||
"@trpc/client":
|
||||
specifier: ^11.17.0
|
||||
version: 11.17.0(@trpc/server@11.17.0(typescript@5.9.3))(typescript@5.9.3)
|
||||
specifier: ^11.18.0
|
||||
version: 11.18.0(@trpc/server@11.18.0(typescript@5.9.3))(typescript@5.9.3)
|
||||
"@trpc/server":
|
||||
specifier: ^11.17.0
|
||||
version: 11.17.0(typescript@5.9.3)
|
||||
specifier: ^11.18.0
|
||||
version: 11.18.0(typescript@5.9.3)
|
||||
"@trpc/tanstack-react-query":
|
||||
specifier: ^11.17.0
|
||||
version: 11.17.0(@tanstack/react-query@5.96.2(react@19.2.4))(@trpc/client@11.17.0(@trpc/server@11.17.0(typescript@5.9.3))(typescript@5.9.3))(@trpc/server@11.17.0(typescript@5.9.3))(react@19.2.4)(typescript@5.9.3)
|
||||
specifier: ^11.18.0
|
||||
version: 11.18.0(@tanstack/react-query@5.96.2(react@19.2.4))(@trpc/client@11.18.0(@trpc/server@11.18.0(typescript@5.9.3))(typescript@5.9.3))(@trpc/server@11.18.0(typescript@5.9.3))(react@19.2.4)(typescript@5.9.3)
|
||||
react:
|
||||
specifier: ^19.0.0
|
||||
version: 19.2.4
|
||||
@@ -1676,14 +1679,14 @@ packages:
|
||||
{
|
||||
integrity: sha512-sPRAnw9CdSsRmEtnsl2WXWdyquogVpB3yZ3dgwJfe8zrOzTsV7cJvmwrKVa+0ma5BoiGJ+BoqkMvawbayKUsqQ==,
|
||||
}
|
||||
deprecated: "Merged into tsx: https://tsx.is"
|
||||
deprecated: "Merged into tsx: https://tsx.hirok.io"
|
||||
|
||||
"@esbuild-kit/esm-loader@2.6.5":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-FxEMIkJKnodyA1OaCUoEvbYRkoZlLZ4d/eXFu9Fh8CbBBgP5EmZxrfTRyN0qpXZ4vOvqnE5YdRdcrmUUXuU+dA==,
|
||||
}
|
||||
deprecated: "Merged into tsx: https://tsx.is"
|
||||
deprecated: "Merged into tsx: https://tsx.hirok.io"
|
||||
|
||||
"@esbuild/aix-ppc64@0.25.12":
|
||||
resolution:
|
||||
@@ -6404,54 +6407,35 @@ packages:
|
||||
integrity: sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==,
|
||||
}
|
||||
|
||||
"@trpc/client@11.16.0":
|
||||
"@trpc/client@11.18.0":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-TxIzm7OoK3baKZ0XCbuMUbI3GhgjcbKHIc4nWVKaRpCRnbSh0T31BT6fTPYwtnA/Nur8pBCGqC2B4J5hEPiPFQ==,
|
||||
integrity: sha512-wOqeg3Fvl25V1ZisQhUD3K8G60ZJDlSGJNSyeXrLH24xAo5w6GSR2Kzb1cSNY9Y+IQ2YZvYGZstBU+V/ulo/ow==,
|
||||
}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
"@trpc/server": 11.16.0
|
||||
"@trpc/server": 11.18.0
|
||||
typescript: ">=5.7.2"
|
||||
|
||||
"@trpc/client@11.17.0":
|
||||
"@trpc/server@11.18.0":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-KpJBFrbKTDeVCFv/3ckL1XBBH5Yssn8hethI/rUy7GIpTj+VzjtPjykDqJpzobuVOz+d26cXCSu1t4I6MYI5Zg==,
|
||||
}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
"@trpc/server": 11.17.0
|
||||
typescript: ">=5.7.2"
|
||||
|
||||
"@trpc/server@11.16.0":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-XgGuUMddrUTd04+za/WE5GFuZ1/YU9XQG0t3VL5WOIu2JspkOlq6k4RYEiqS6HSJt+S0RXaPdIoE2anIP/BBRQ==,
|
||||
integrity: sha512-JAvXOuNTxgXjIDfQaOvDq1j66LMNfDJUH1IU7Slfn8EvRv2EkH6ehu3A7zpYhjO0syHHiYg77v2lG2JFJgvw7Q==,
|
||||
}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
typescript: ">=5.7.2"
|
||||
|
||||
"@trpc/server@11.17.0":
|
||||
"@trpc/tanstack-react-query@11.18.0":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-jbAOUe0PpUTCYqziyu+8vYXZdDXPudZgnEhWCQ2NjKnVEjfE93RqHTt1oycZJv/HNf51YlRXfEEwSIAbb161rw==,
|
||||
}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
typescript: ">=5.7.2"
|
||||
|
||||
"@trpc/tanstack-react-query@11.17.0":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-OFxjvCgisP0yaCj7lgP6qPaFwJvJDgnrAUxH3cNIPPR89TpYbndn5vsdKNkc7EnvER9b6wq9Yz8aCcPcOBpDXg==,
|
||||
integrity: sha512-dm5xIlN0SEzJAbQ34EHdb1Kgd/zWZ63ZMviQEw3WCWCIPz8MjLKAhquncPcn+YxFUJa+Qi4qatdGFymmM4HmAQ==,
|
||||
}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
"@tanstack/react-query": ^5.80.3
|
||||
"@trpc/client": 11.17.0
|
||||
"@trpc/server": 11.17.0
|
||||
"@trpc/client": 11.18.0
|
||||
"@trpc/server": 11.18.0
|
||||
react: ">=18.2.0"
|
||||
typescript: ">=5.7.2"
|
||||
|
||||
@@ -6957,6 +6941,12 @@ packages:
|
||||
integrity: sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig==,
|
||||
}
|
||||
|
||||
"@vitest/expect@3.2.7":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-E8eBXaKibuvH2pSZErOjdVb5vF4PbKYcrnluBTYxEk1l/VhhwZg1kZQsdtjq+CsF5CFydf2Rdkz7jDHKSisi3w==,
|
||||
}
|
||||
|
||||
"@vitest/mocker@3.2.4":
|
||||
resolution:
|
||||
{
|
||||
@@ -6971,36 +6961,80 @@ packages:
|
||||
vite:
|
||||
optional: true
|
||||
|
||||
"@vitest/mocker@3.2.7":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-Trr0hYO9CM3Wj6ksWHRhK9IZpIY6wTMO5u/MqXurMxT57sWBaOPEtP3Oq60ihZuh5JsiagKfz95OcxdEP6dBrA==,
|
||||
}
|
||||
peerDependencies:
|
||||
msw: ^2.4.9
|
||||
vite: ^5.0.0 || ^6.0.0 || ^7.0.0-0
|
||||
peerDependenciesMeta:
|
||||
msw:
|
||||
optional: true
|
||||
vite:
|
||||
optional: true
|
||||
|
||||
"@vitest/pretty-format@3.2.4":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==,
|
||||
}
|
||||
|
||||
"@vitest/pretty-format@3.2.7":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-KUHlwqVu0sRlhCdyPdQ/wBoTfRahjUky1MubOmYw9fWfIZy1gNoHpuaaQBPAaMaVYdQYHJLurzj8ECCj5OwTqA==,
|
||||
}
|
||||
|
||||
"@vitest/runner@3.2.4":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-oukfKT9Mk41LreEW09vt45f8wx7DordoWUZMYdY/cyAk7w5TWkTRCNZYF7sX7n2wB7jyGAl74OxgwhPgKaqDMQ==,
|
||||
}
|
||||
|
||||
"@vitest/runner@3.2.7":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-sB9y4ovltoQP+WaUPwmSxO9WIg9Ig694Di5PalVPsYHklAdE027mehpWF2SQSVq+k6sFgaivbTjTJwZLSHbedA==,
|
||||
}
|
||||
|
||||
"@vitest/snapshot@3.2.4":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-dEYtS7qQP2CjU27QBC5oUOxLE/v5eLkGqPE0ZKEIDGMs4vKWe7IjgLOeauHsR0D5YuuycGRO5oSRXnwnmA78fQ==,
|
||||
}
|
||||
|
||||
"@vitest/snapshot@3.2.7":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-7C+MwShwtBSI5Buwoyg3s/iY1eHL9PKAf+O1wVh/TdnjXUtkoL/9YQtre90i4MtNXM6edP1wJ2zOBpfCyhIS7g==,
|
||||
}
|
||||
|
||||
"@vitest/spy@3.2.4":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-vAfasCOe6AIK70iP5UD11Ac4siNUNJ9i/9PZ3NKx07sG6sUxeag1LWdNrMWeKKYBLlzuK+Gn65Yd5nyL6ds+nw==,
|
||||
}
|
||||
|
||||
"@vitest/spy@3.2.7":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-Q2eQGI6d2L/hBtZ0qNuKcAGid68XK6cv1xsoaIma6PaJhHPoqcEJhYpXZ/5myCMqkNgtP6UKuBhbc0nHKnrkuQ==,
|
||||
}
|
||||
|
||||
"@vitest/utils@3.2.4":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA==,
|
||||
}
|
||||
|
||||
"@vitest/utils@3.2.7":
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-x6BDOd7dyo3PFLY3I9/HJ25X/6OurhGXk2/B9gOZNPF7XDVjeBK4k01lQE5uvDpbuheErh91qYuE1E2OEjK3Rw==,
|
||||
}
|
||||
|
||||
"@webassemblyjs/ast@1.14.1":
|
||||
resolution:
|
||||
{
|
||||
@@ -13641,6 +13675,37 @@ packages:
|
||||
jsdom:
|
||||
optional: true
|
||||
|
||||
vitest@3.2.7:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-KrxIJ62Fd89gfysR4WotlgZABiz2dqFPgqGzX7s+CwsqLFomRH7777ZcrOD6+WVAh7khPQP41A+BKbpcJFrdEg==,
|
||||
}
|
||||
engines: { node: ^18.0.0 || ^20.0.0 || >=22.0.0 }
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
"@edge-runtime/vm": "*"
|
||||
"@types/debug": ^4.1.12
|
||||
"@types/node": ^18.0.0 || ^20.0.0 || >=22.0.0
|
||||
"@vitest/browser": 3.2.7
|
||||
"@vitest/ui": 3.2.7
|
||||
happy-dom: "*"
|
||||
jsdom: "*"
|
||||
peerDependenciesMeta:
|
||||
"@edge-runtime/vm":
|
||||
optional: true
|
||||
"@types/debug":
|
||||
optional: true
|
||||
"@types/node":
|
||||
optional: true
|
||||
"@vitest/browser":
|
||||
optional: true
|
||||
"@vitest/ui":
|
||||
optional: true
|
||||
happy-dom:
|
||||
optional: true
|
||||
jsdom:
|
||||
optional: true
|
||||
|
||||
w3c-xmlserializer@5.0.0:
|
||||
resolution:
|
||||
{
|
||||
@@ -17855,13 +17920,13 @@ snapshots:
|
||||
|
||||
"@stryker-mutator/util@8.7.1": {}
|
||||
|
||||
"@stryker-mutator/vitest-runner@8.7.1(@stryker-mutator/core@8.7.1)(vitest@3.2.4(@types/debug@4.1.13)(@types/node@22.19.17)(happy-dom@20.8.9)(jiti@2.7.0)(jsdom@25.0.1)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0))":
|
||||
"@stryker-mutator/vitest-runner@8.7.1(@stryker-mutator/core@8.7.1)(vitest@3.2.7(@types/debug@4.1.13)(@types/node@22.19.17)(happy-dom@20.8.9)(jiti@2.7.0)(jsdom@25.0.1)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0))":
|
||||
dependencies:
|
||||
"@stryker-mutator/api": 8.7.1
|
||||
"@stryker-mutator/core": 8.7.1
|
||||
"@stryker-mutator/util": 8.7.1
|
||||
tslib: 2.7.0
|
||||
vitest: 3.2.4(@types/debug@4.1.13)(@types/node@22.19.17)(happy-dom@20.8.9)(jiti@2.7.0)(jsdom@25.0.1)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0)
|
||||
vitest: 3.2.7(@types/debug@4.1.13)(@types/node@22.19.17)(happy-dom@20.8.9)(jiti@2.7.0)(jsdom@25.0.1)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0)
|
||||
|
||||
"@swc/core-darwin-arm64@1.15.33":
|
||||
optional: true
|
||||
@@ -18121,29 +18186,20 @@ snapshots:
|
||||
|
||||
"@tokenizer/token@0.3.0": {}
|
||||
|
||||
"@trpc/client@11.16.0(@trpc/server@11.16.0(typescript@5.9.3))(typescript@5.9.3)":
|
||||
"@trpc/client@11.18.0(@trpc/server@11.18.0(typescript@5.9.3))(typescript@5.9.3)":
|
||||
dependencies:
|
||||
"@trpc/server": 11.16.0(typescript@5.9.3)
|
||||
"@trpc/server": 11.18.0(typescript@5.9.3)
|
||||
typescript: 5.9.3
|
||||
|
||||
"@trpc/client@11.17.0(@trpc/server@11.17.0(typescript@5.9.3))(typescript@5.9.3)":
|
||||
dependencies:
|
||||
"@trpc/server": 11.17.0(typescript@5.9.3)
|
||||
typescript: 5.9.3
|
||||
|
||||
"@trpc/server@11.16.0(typescript@5.9.3)":
|
||||
"@trpc/server@11.18.0(typescript@5.9.3)":
|
||||
dependencies:
|
||||
typescript: 5.9.3
|
||||
|
||||
"@trpc/server@11.17.0(typescript@5.9.3)":
|
||||
dependencies:
|
||||
typescript: 5.9.3
|
||||
|
||||
"@trpc/tanstack-react-query@11.17.0(@tanstack/react-query@5.96.2(react@19.2.4))(@trpc/client@11.17.0(@trpc/server@11.17.0(typescript@5.9.3))(typescript@5.9.3))(@trpc/server@11.17.0(typescript@5.9.3))(react@19.2.4)(typescript@5.9.3)":
|
||||
"@trpc/tanstack-react-query@11.18.0(@tanstack/react-query@5.96.2(react@19.2.4))(@trpc/client@11.18.0(@trpc/server@11.18.0(typescript@5.9.3))(typescript@5.9.3))(@trpc/server@11.18.0(typescript@5.9.3))(react@19.2.4)(typescript@5.9.3)":
|
||||
dependencies:
|
||||
"@tanstack/react-query": 5.96.2(react@19.2.4)
|
||||
"@trpc/client": 11.17.0(@trpc/server@11.17.0(typescript@5.9.3))(typescript@5.9.3)
|
||||
"@trpc/server": 11.17.0(typescript@5.9.3)
|
||||
"@trpc/client": 11.18.0(@trpc/server@11.18.0(typescript@5.9.3))(typescript@5.9.3)
|
||||
"@trpc/server": 11.18.0(typescript@5.9.3)
|
||||
react: 19.2.4
|
||||
typescript: 5.9.3
|
||||
|
||||
@@ -18516,6 +18572,14 @@ snapshots:
|
||||
chai: 5.3.3
|
||||
tinyrainbow: 2.0.0
|
||||
|
||||
"@vitest/expect@3.2.7":
|
||||
dependencies:
|
||||
"@types/chai": 5.2.3
|
||||
"@vitest/spy": 3.2.7
|
||||
"@vitest/utils": 3.2.7
|
||||
chai: 5.3.3
|
||||
tinyrainbow: 2.0.0
|
||||
|
||||
"@vitest/mocker@3.2.4(vite@6.4.2(@types/node@22.19.17)(jiti@2.7.0)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0))":
|
||||
dependencies:
|
||||
"@vitest/spy": 3.2.4
|
||||
@@ -18524,40 +18588,66 @@ snapshots:
|
||||
optionalDependencies:
|
||||
vite: 6.4.2(@types/node@22.19.17)(jiti@2.7.0)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0)
|
||||
|
||||
"@vitest/mocker@3.2.4(vite@6.4.2(@types/node@25.5.2)(jiti@2.7.0)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0))":
|
||||
"@vitest/mocker@3.2.7(vite@6.4.2(@types/node@22.19.17)(jiti@2.7.0)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0))":
|
||||
dependencies:
|
||||
"@vitest/spy": 3.2.4
|
||||
"@vitest/spy": 3.2.7
|
||||
estree-walker: 3.0.3
|
||||
magic-string: 0.30.21
|
||||
optionalDependencies:
|
||||
vite: 6.4.2(@types/node@25.5.2)(jiti@2.7.0)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0)
|
||||
vite: 6.4.2(@types/node@22.19.17)(jiti@2.7.0)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0)
|
||||
|
||||
"@vitest/pretty-format@3.2.4":
|
||||
dependencies:
|
||||
tinyrainbow: 2.0.0
|
||||
|
||||
"@vitest/pretty-format@3.2.7":
|
||||
dependencies:
|
||||
tinyrainbow: 2.0.0
|
||||
|
||||
"@vitest/runner@3.2.4":
|
||||
dependencies:
|
||||
"@vitest/utils": 3.2.4
|
||||
pathe: 2.0.3
|
||||
strip-literal: 3.1.0
|
||||
|
||||
"@vitest/runner@3.2.7":
|
||||
dependencies:
|
||||
"@vitest/utils": 3.2.7
|
||||
pathe: 2.0.3
|
||||
strip-literal: 3.1.0
|
||||
|
||||
"@vitest/snapshot@3.2.4":
|
||||
dependencies:
|
||||
"@vitest/pretty-format": 3.2.4
|
||||
magic-string: 0.30.21
|
||||
pathe: 2.0.3
|
||||
|
||||
"@vitest/snapshot@3.2.7":
|
||||
dependencies:
|
||||
"@vitest/pretty-format": 3.2.7
|
||||
magic-string: 0.30.21
|
||||
pathe: 2.0.3
|
||||
|
||||
"@vitest/spy@3.2.4":
|
||||
dependencies:
|
||||
tinyspy: 4.0.4
|
||||
|
||||
"@vitest/spy@3.2.7":
|
||||
dependencies:
|
||||
tinyspy: 4.0.4
|
||||
|
||||
"@vitest/utils@3.2.4":
|
||||
dependencies:
|
||||
"@vitest/pretty-format": 3.2.4
|
||||
loupe: 3.2.1
|
||||
tinyrainbow: 2.0.0
|
||||
|
||||
"@vitest/utils@3.2.7":
|
||||
dependencies:
|
||||
"@vitest/pretty-format": 3.2.7
|
||||
loupe: 3.2.1
|
||||
tinyrainbow: 2.0.0
|
||||
|
||||
"@webassemblyjs/ast@1.14.1":
|
||||
dependencies:
|
||||
"@webassemblyjs/helper-numbers": 1.13.2
|
||||
@@ -22947,7 +23037,7 @@ snapshots:
|
||||
dependencies:
|
||||
"@types/chai": 5.2.3
|
||||
"@vitest/expect": 3.2.4
|
||||
"@vitest/mocker": 3.2.4(vite@6.4.2(@types/node@25.5.2)(jiti@2.7.0)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0))
|
||||
"@vitest/mocker": 3.2.4(vite@6.4.2(@types/node@22.19.17)(jiti@2.7.0)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0))
|
||||
"@vitest/pretty-format": 3.2.4
|
||||
"@vitest/runner": 3.2.4
|
||||
"@vitest/snapshot": 3.2.4
|
||||
@@ -22987,6 +23077,50 @@ snapshots:
|
||||
- tsx
|
||||
- yaml
|
||||
|
||||
vitest@3.2.7(@types/debug@4.1.13)(@types/node@22.19.17)(happy-dom@20.8.9)(jiti@2.7.0)(jsdom@25.0.1)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0):
|
||||
dependencies:
|
||||
"@types/chai": 5.2.3
|
||||
"@vitest/expect": 3.2.7
|
||||
"@vitest/mocker": 3.2.7(vite@6.4.2(@types/node@22.19.17)(jiti@2.7.0)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0))
|
||||
"@vitest/pretty-format": 3.2.7
|
||||
"@vitest/runner": 3.2.7
|
||||
"@vitest/snapshot": 3.2.7
|
||||
"@vitest/spy": 3.2.7
|
||||
"@vitest/utils": 3.2.7
|
||||
chai: 5.3.3
|
||||
debug: 4.4.3
|
||||
expect-type: 1.3.0
|
||||
magic-string: 0.30.21
|
||||
pathe: 2.0.3
|
||||
picomatch: 4.0.4
|
||||
std-env: 3.10.0
|
||||
tinybench: 2.9.0
|
||||
tinyexec: 0.3.2
|
||||
tinyglobby: 0.2.15
|
||||
tinypool: 1.1.1
|
||||
tinyrainbow: 2.0.0
|
||||
vite: 6.4.2(@types/node@22.19.17)(jiti@2.7.0)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0)
|
||||
vite-node: 3.2.4(@types/node@22.19.17)(jiti@2.7.0)(lightningcss@1.32.0)(sass@1.99.0)(terser@5.46.2)(tsx@4.21.0)(yaml@2.9.0)
|
||||
why-is-node-running: 2.3.0
|
||||
optionalDependencies:
|
||||
"@types/debug": 4.1.13
|
||||
"@types/node": 22.19.17
|
||||
happy-dom: 20.8.9
|
||||
jsdom: 25.0.1
|
||||
transitivePeerDependencies:
|
||||
- jiti
|
||||
- less
|
||||
- lightningcss
|
||||
- msw
|
||||
- sass
|
||||
- sass-embedded
|
||||
- stylus
|
||||
- sugarss
|
||||
- supports-color
|
||||
- terser
|
||||
- tsx
|
||||
- yaml
|
||||
|
||||
w3c-xmlserializer@5.0.0:
|
||||
dependencies:
|
||||
xml-name-validator: 5.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import { test, describe } from "node:test";
|
||||
// Runs under vitest (pnpm test:scripts picks up scripts/**/*.test.mjs);
|
||||
// node:assert keeps the original assertion style.
|
||||
import { test, describe } from "vitest";
|
||||
import assert from "node:assert/strict";
|
||||
import fs from "node:fs";
|
||||
import os from "node:os";
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import { test, describe } from "node:test";
|
||||
// Runs under vitest (pnpm test:scripts picks up scripts/**/*.test.mjs);
|
||||
// node:assert keeps the original assertion style.
|
||||
import { test, describe } from "vitest";
|
||||
import assert from "node:assert/strict";
|
||||
import fs from "node:fs";
|
||||
import os from "node:os";
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import { test, describe } from "node:test";
|
||||
// Runs under vitest (pnpm test:scripts picks up scripts/**/*.test.mjs);
|
||||
// node:assert keeps the original assertion style.
|
||||
import { test, describe } from "vitest";
|
||||
import assert from "node:assert/strict";
|
||||
import fs from "node:fs";
|
||||
import os from "node:os";
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import { test, describe } from "node:test";
|
||||
// Runs under vitest (pnpm test:scripts picks up scripts/**/*.test.mjs);
|
||||
// node:assert keeps the original assertion style.
|
||||
import { test, describe } from "vitest";
|
||||
import assert from "node:assert/strict";
|
||||
import fs from "node:fs";
|
||||
import path from "node:path";
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import { test, describe } from "node:test";
|
||||
// Runs under vitest (pnpm test:scripts picks up scripts/**/*.test.mjs);
|
||||
// node:assert keeps the original assertion style.
|
||||
import { test, describe } from "vitest";
|
||||
import assert from "node:assert/strict";
|
||||
import fs from "node:fs";
|
||||
import path from "node:path";
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import { test, describe } from "node:test";
|
||||
// Runs under vitest (pnpm test:scripts picks up scripts/**/*.test.mjs);
|
||||
// node:assert keeps the original assertion style.
|
||||
import { test, describe } from "vitest";
|
||||
import assert from "node:assert/strict";
|
||||
import fs from "node:fs";
|
||||
import path from "node:path";
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import { test, describe } from "node:test";
|
||||
// Runs under vitest (pnpm test:scripts picks up scripts/**/*.test.mjs);
|
||||
// node:assert keeps the original assertion style.
|
||||
import { test, describe } from "vitest";
|
||||
import assert from "node:assert/strict";
|
||||
import fs from "node:fs";
|
||||
import os from "node:os";
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import { test, describe } from "node:test";
|
||||
// Runs under vitest (pnpm test:scripts picks up scripts/**/*.test.mjs);
|
||||
// node:assert keeps the original assertion style.
|
||||
import { test, describe } from "vitest";
|
||||
import assert from "node:assert/strict";
|
||||
import fs from "node:fs";
|
||||
import os from "node:os";
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import { test, describe } from "node:test";
|
||||
// Runs under vitest (pnpm test:scripts picks up scripts/**/*.test.mjs);
|
||||
// node:assert keeps the original assertion style.
|
||||
import { test, describe } from "vitest";
|
||||
import assert from "node:assert/strict";
|
||||
import fs from "node:fs";
|
||||
import os from "node:os";
|
||||
|
||||
@@ -52,8 +52,10 @@ describe("pnpm work cli", () => {
|
||||
expect(out.length).toBeGreaterThan(0);
|
||||
});
|
||||
|
||||
it("dispatch prints a plan", () => {
|
||||
it("dispatch prints a plan or reports nothing is ready", () => {
|
||||
// Runs against the real docs/work tree, so the outcome depends on
|
||||
// whether a ready task exists — both branches are valid CLI output.
|
||||
const out = run("dispatch");
|
||||
expect(out).toContain("Dispatch plan");
|
||||
expect(out).toMatch(/Dispatch plan|No ready task to dispatch/);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import { test, describe } from "node:test";
|
||||
// Runs under vitest (pnpm test:scripts picks up scripts/**/*.test.mjs);
|
||||
// node:assert keeps the original assertion style.
|
||||
import { test, describe } from "vitest";
|
||||
import assert from "node:assert/strict";
|
||||
import fs from "node:fs";
|
||||
import path from "node:path";
|
||||
|
||||
@@ -12,7 +12,8 @@ import {
|
||||
function makeWorkTree({ epics }) {
|
||||
const root = fs.mkdtempSync(path.join(os.tmpdir(), "dispatch-"));
|
||||
for (const [epicId, epicData] of Object.entries(epics)) {
|
||||
const epicDir = path.join(root, epicId);
|
||||
// findNextTask/buildState walk <workRoot>/epics/ — mirror docs/work.
|
||||
const epicDir = path.join(root, "epics", epicId);
|
||||
fs.mkdirSync(epicDir, { recursive: true });
|
||||
fs.writeFileSync(
|
||||
path.join(epicDir, "_epic.md"),
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import { test, describe } from "node:test";
|
||||
// Runs under vitest (pnpm test:scripts picks up scripts/**/*.test.mjs);
|
||||
// node:assert keeps the original assertion style.
|
||||
import { test, describe } from "vitest";
|
||||
import assert from "node:assert/strict";
|
||||
import fs from "node:fs";
|
||||
import path from "node:path";
|
||||
|
||||
@@ -12,7 +12,8 @@ import {
|
||||
function makeWorkTree({ epics }) {
|
||||
const root = fs.mkdtempSync(path.join(os.tmpdir(), "work-state-"));
|
||||
for (const [epicId, epicData] of Object.entries(epics)) {
|
||||
const epicDir = path.join(root, epicId);
|
||||
// buildState walks <workRoot>/epics/ — mirror the real docs/work layout.
|
||||
const epicDir = path.join(root, "epics", epicId);
|
||||
fs.mkdirSync(epicDir, { recursive: true });
|
||||
fs.writeFileSync(
|
||||
path.join(epicDir, "_epic.md"),
|
||||
@@ -85,6 +86,7 @@ describe("buildState", () => {
|
||||
epic1: {
|
||||
status: "in-progress",
|
||||
title: "epic1",
|
||||
prd: null,
|
||||
stories: {
|
||||
story1: {
|
||||
status: "done",
|
||||
@@ -127,7 +129,7 @@ describe("buildState", () => {
|
||||
|
||||
it("parses depends-on and blocks frontmatter arrays", () => {
|
||||
const root = fs.mkdtempSync(path.join(os.tmpdir(), "work-dep-"));
|
||||
const epicDir = path.join(root, "epic1");
|
||||
const epicDir = path.join(root, "epics", "epic1");
|
||||
fs.mkdirSync(epicDir, { recursive: true });
|
||||
fs.writeFileSync(
|
||||
path.join(epicDir, "_epic.md"),
|
||||
|
||||
@@ -8,9 +8,10 @@ const GUARD = path.join(__dirname, "state-sync-guard.mjs");
|
||||
|
||||
describe("state-sync-guard smoke", () => {
|
||||
it("exits 0 when run against the repo's current state (since main is in sync)", () => {
|
||||
// Run the guard; if main's _state.json drifts, this test will fail and tell us.
|
||||
execSync(`node "${GUARD}"`, { encoding: "utf8" });
|
||||
// No assertion on output; the exit code is 0 if we got here without throwing.
|
||||
expect(true).toBe(true);
|
||||
// Run the guard; if main's _state.json drifts, execSync throws (non-zero
|
||||
// exit) and this test fails with the guard's output.
|
||||
expect(() =>
|
||||
execSync(`node "${GUARD}"`, { encoding: "utf8" }),
|
||||
).not.toThrow();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -18,7 +18,6 @@
|
||||
"SENTRY_ENVIRONMENT",
|
||||
"VERCEL_GIT_COMMIT_SHA",
|
||||
"NEXT_PUBLIC_VERCEL_GIT_COMMIT_SHA",
|
||||
"VERCEL_ENV",
|
||||
"AUDIT_PSEUDONYM_SALT"
|
||||
],
|
||||
"boundaries": {
|
||||
|
||||
24
vitest.scripts.config.mjs
Normal file
24
vitest.scripts.config.mjs
Normal file
@@ -0,0 +1,24 @@
|
||||
import { defineConfig } from "vitest/config";
|
||||
|
||||
/**
|
||||
* Runner for the root scripts/ test suite (pnpm test:scripts).
|
||||
*
|
||||
* scripts/ is not a workspace package, so `turbo run test` never reaches
|
||||
* these files — this dedicated config wires them to a runner. The suite
|
||||
* runs in CI's validate job alongside the other root-level gates.
|
||||
*
|
||||
* Named vitest.scripts.config.mjs (not vitest.config.*) on purpose so a
|
||||
* bare `vitest` invocation at the repo root does not auto-discover it.
|
||||
*/
|
||||
export default defineConfig({
|
||||
test: {
|
||||
environment: "node",
|
||||
include: ["scripts/**/*.test.mjs"],
|
||||
clearMocks: true,
|
||||
restoreMocks: true,
|
||||
// Several suites exec child node processes (work CLI, conformance
|
||||
// fixtures) — keep a generous per-test ceiling.
|
||||
testTimeout: 60_000,
|
||||
hookTimeout: 60_000,
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user