import { defineConfig } from "vitest/config"; export default defineConfig({ test: { globals: true, environment: "node", include: ["*.test.ts", "lib/*.test.ts", "__tests__/*.test.ts"], clearMocks: true, restoreMocks: true, // The core-package `*.e2e.test.ts` files each do a full `pnpm install` // in a temp clone. Running them in parallel saturates the machine and // trips vitest's worker RPC timeout ("Timeout calling onTaskUpdate"). // Run test files one at a time so each e2e test gets the box to itself. fileParallelism: false, // Each e2e test's `onTestFinished` cleanup `rmSync`-es a temp clone that // contains a full installed `node_modules`. Deleting that many files can // exceed vitest's 10s default hook timeout under load, so raise the // ceiling to match the 120s per-test timeout. hookTimeout: 120_000, }, });