chore(build,test): split desktop/mobile from default build; share vitest worker budget
- pnpm build now excludes @fusion/desktop and @fusion/mobile by default (recursive build still available as pnpm build:all). Saves time on workspace-wide builds that don't need the native shells. - Hoist the per-package max-worker computation into a shared packages/core/src/__test-utils__/vitest-workers.ts util. Every vitest.config.ts now calls computeMaxWorkers(), which honors VITEST_MAX_WORKERS, FUSION_TEST_TOTAL_WORKERS, and a per-config defaultCap, clamped to cpus-1. - pnpm test sets VITEST_MAX_WORKERS=2 so the workspace run keeps total fan-out modest with --workspace-concurrency=2. - Switch dashboard vitest pool from forks to threads so jsdom/React suites share a V8 heap instead of duplicating ~500MB per worker. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
10
package.json
10
package.json
@@ -20,13 +20,15 @@
|
||||
"lint": "eslint .",
|
||||
"sync:fusion-skill": "node scripts/sync-fusion-skill-tools.mjs",
|
||||
"sync:fusion-skill:check": "node scripts/sync-fusion-skill-tools.mjs --check",
|
||||
"build": "pnpm -r build",
|
||||
"build": "pnpm -r --filter=!@fusion/desktop --filter=!@fusion/mobile build",
|
||||
"build:all": "pnpm -r build",
|
||||
"verify:workspace": "pnpm lint && pnpm test && pnpm build",
|
||||
"build:exe": "pnpm build && pnpm --filter @runfusion/fusion build:exe",
|
||||
"build:exe:all": "pnpm build && pnpm --filter @runfusion/fusion build:exe:all",
|
||||
"test": "pnpm sync:fusion-skill:check && pnpm -r --workspace-concurrency=2 test",
|
||||
"test:serial": "pnpm -r --workspace-concurrency=1 test",
|
||||
"test:fast": "pnpm -r --workspace-concurrency=4 test",
|
||||
"test": "pnpm sync:fusion-skill:check && FUSION_TEST_TOTAL_WORKERS=4 FUSION_TEST_CONCURRENCY=2 pnpm -r --workspace-concurrency=2 test",
|
||||
"test:serial": "FUSION_TEST_TOTAL_WORKERS=4 FUSION_TEST_CONCURRENCY=1 pnpm -r --workspace-concurrency=1 test",
|
||||
"test:fast": "FUSION_TEST_TOTAL_WORKERS=4 FUSION_TEST_CONCURRENCY=4 pnpm -r --workspace-concurrency=4 test",
|
||||
"test:locked": "node scripts/test-with-lock.mjs",
|
||||
"test:build": "pnpm --filter @fusion/dashboard test:build",
|
||||
"test:isolated": "node scripts/check-test-isolation.mjs --before && pnpm test && node scripts/check-test-isolation.mjs",
|
||||
"test:check-isolation": "node scripts/check-test-isolation.mjs",
|
||||
|
||||
Reference in New Issue
Block a user