You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Bump BUN_VERSION 1.2.6 → 1.3.12 across all CI workflows + packageManager pin
- Replace `|| true` swallow on `bun install --frozen-lockfile` with `--lockfile-only`
so lockfile updates after `changeset version` actually land
- Simplify bunfig.toml; drop misleading bun.lockb comments (we use text bun.lock)
- Add CLAUDE.md section explaining the Bun-vs-Vitest test runner split
- Filter `task-master-ai` out of `turbo test*` scripts to stop root recursion
(root `test` was `turbo test`, which made `task-master-ai#test` recurse)
- Bump @tm/mcp integration test timeouts 15s → 30s (matching @tm/cli)
to remove flake under turbo concurrency on Linux runners
- Skip pre-existing progress-tracker EACCES test (vi.clearAllMocks wipes
mockRejectedValueOnce; same issue noted elsewhere in the repo)
Copy file name to clipboardExpand all lines: CLAUDE.md
+11Lines changed: 11 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,6 +7,17 @@
7
7
8
8
## Test Guidelines
9
9
10
+
### Test runners (Bun vs Vitest)
11
+
12
+
This repo uses Bun for install/build but two different test runners:
13
+
14
+
-**Vitest (Node)** — used by every package and app (`@tm/core`, `@tm/cli`, `@tm/mcp`, `apps/extension`, etc.). Run via `npm run test -w <package>` or `bun run --filter <package> test`. **All package tests live here.**
15
+
-**Bun's native runner** — used only for the root-level `tests/` directory. Run via `npm run test:root`. Configured in `bunfig.toml` with preload `tests/setup.ts`.
16
+
17
+
Why split? Bun's runtime has known Zod / SSR-related issues that affect `@tm/core` in particular, so packages stay on Node + Vitest. Bun's runner is fine for the simpler integration scripts in `tests/`.
18
+
19
+
**Don't run `bun test` from the repo root expecting all tests** — it only sees `tests/`. Use `npm test` (turbo) for everything.
20
+
10
21
### Test File Placement
11
22
12
23
-**Package & tests**: Place in `packages/<package-name>/src/<module>/<file>.spec.ts` or `apps/<app-name>/src/<module>/<file.spec.ts>` alongside source
0 commit comments