gsxdsm
b8919b7bb4
chore(test-isolation): detect live engine lock + prune stale tests
...
Three coupled fixes to make `pnpm test:full` exit cleanly when the local
`fn` dashboard is running:
1. scripts/check-test-isolation.mjs — replace timing-based "is the
engine writing?" heuristic with a deterministic check: if
`.fusion/engine.lock.lock/` exists (proper-lockfile's held-lock
marker), the dir is engine-active and auto-skipped from violation
reporting. The 2-second mutability probe is retained as a backstop
for dirs with another external writer but no live lock. Also adds
`engine.lock` / `engine.lock.lock/` to RUNTIME_IGNORE_PATTERNS so
a mid-test engine start/stop doesn't trip the signature compare.
2. packages/dashboard/.../__tests__/GitManagerModal.test.tsx — prune
the Status-panel Sync button + Recent-advances-events describe
blocks. Their UI was removed in 5d35b64bd ("remove duplicate
integration-advances UI") but the tests stayed and were timing
out at 1s each. The Remotes-panel Sync describe is kept because
the `remotes-sync-integration-tip-btn` still exists.
3. packages/engine/.../merge-reuse-task-worktree.slow.test.ts —
update the happy-path assertion to reflect 4c31e885b
("merger auto-syncs project-root checkout after ref advance").
Before that change, the merger's `update-ref` advance left the
project root's working tree stale, so `git status --porcelain`
would differ after the merge. With auto-sync, the new file is
tracked + clean at HEAD, so status doesn't change. Verify the
file actually landed via `git ls-files` instead.
After this, `pnpm test:full` exits 0 with the local dashboard running.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-23 20:18:08 -07:00
..
2026-05-18 01:56:59 -07:00
2026-05-18 01:56:59 -07:00
2026-05-07 23:21:05 -07:00
2026-05-22 20:20:42 -07:00
2026-05-05 20:47:37 -07:00
2026-05-14 01:10:47 -07:00
2026-05-12 07:47:10 -07:00
2026-05-12 07:47:10 -07:00
2026-05-12 07:47:10 -07:00
2026-05-14 04:32:43 -07:00
2026-05-12 22:52:01 -07:00
2026-05-14 04:32:43 -07:00
2026-05-12 07:47:10 -07:00
2026-05-14 15:05:38 -07:00
2026-05-22 20:20:42 -07:00
2026-05-05 12:37:25 -07:00
2026-05-06 10:18:27 -07:00
2026-05-13 09:06:20 -07:00
2026-05-10 15:33:25 -07:00
2026-05-22 20:20:42 -07:00
2026-05-19 10:39:56 -07:00
2026-05-15 09:04:26 -07:00
2026-05-15 07:10:36 -07:00
2026-05-11 10:54:26 -07:00
2026-05-22 20:20:42 -07:00
2026-05-13 06:29:35 -07:00
2026-05-06 08:04:47 -07:00
2026-05-14 22:16:44 -07:00
2026-05-20 03:57:17 -07:00
2026-05-22 20:20:42 -07:00
2026-05-13 22:03:38 -07:00
2026-05-09 10:31:05 -07:00
2026-05-19 03:21:17 -07:00
2026-04-30 23:24:29 -07:00
2026-05-22 20:20:42 -07:00
2026-05-22 20:20:42 -07:00
2026-05-22 20:20:42 -07:00
2026-05-13 14:38:41 -07:00
2026-05-13 06:29:35 -07:00
2026-05-20 04:12:40 -07:00
2026-05-20 07:20:01 -07:00
2026-05-20 04:12:40 -07:00
2026-05-20 04:12:40 -07:00
2026-05-20 04:12:40 -07:00
2026-05-22 20:20:42 -07:00
2026-05-21 15:40:48 -07:00
2026-05-22 20:20:42 -07:00
2026-05-22 20:20:42 -07:00
2026-05-13 19:22:38 -07:00
2026-05-18 05:51:14 -07:00
2026-05-02 00:37:57 -07:00
2026-05-22 20:20:42 -07:00
2026-05-09 10:31:05 -07:00
2026-05-06 21:36:31 -07:00
2026-05-22 20:20:42 -07:00
2026-05-13 18:05:12 +03:00
2026-05-13 18:05:12 +03:00
2026-05-18 03:34:54 -07:00
2026-05-20 04:13:43 -07:00
2026-05-22 20:20:42 -07:00
2026-05-03 07:47:45 -07:00
2026-05-03 14:10:11 -07:00
2026-05-03 07:47:45 -07:00
2026-05-02 11:25:08 -07:00
2026-05-16 22:26:42 -07:00
2026-05-08 04:21:20 -07:00
2026-05-14 15:49:55 -07:00
2026-05-08 07:56:04 -07:00
2026-05-19 19:32:23 -07:00
2026-05-22 20:20:42 -07:00
2026-05-15 00:30:18 -07:00
2026-05-22 20:20:42 -07:00
2026-05-17 08:22:26 -07:00
2026-05-18 01:16:17 -07:00
2026-05-10 05:29:41 -07:00
2026-05-23 20:18:08 -07:00
2026-05-16 05:29:27 -07:00
2026-05-16 05:29:27 -07:00
2026-05-19 01:59:21 -07:00
2026-05-18 19:44:33 -07:00
2026-05-18 16:08:10 -07:00
2026-05-16 09:21:06 -07:00
2026-05-22 20:20:42 -07:00
2026-05-05 01:46:58 -07:00
2026-05-16 09:42:37 -07:00
2026-05-19 23:04:12 -07:00
2026-05-19 17:57:10 -07:00
2026-05-15 23:39:43 -07:00
2026-05-09 14:20:03 -07:00
2026-05-09 10:31:05 -07:00
2026-05-23 13:06:48 -07:00
2026-05-15 12:07:52 -07:00
2026-05-10 16:53:36 -07:00
2026-05-19 10:39:56 -07:00
2026-05-09 10:31:05 -07:00
2026-05-04 01:43:04 -07:00
2026-05-04 21:32:41 -07:00
2026-05-19 17:54:43 -07:00
2026-05-20 09:42:40 -07:00
2026-05-10 23:36:10 -07:00
2026-05-19 23:04:12 -07:00
2026-05-22 20:20:42 -07:00
2026-05-22 20:20:42 -07:00
2026-05-22 20:20:42 -07:00
2026-05-23 01:30:15 -07:00
2026-05-12 17:04:33 -07:00
2026-05-22 20:20:42 -07:00
2026-05-07 18:35:45 -07:00
2026-05-04 22:17:10 -07:00
2026-05-07 18:35:45 -07:00
2026-05-12 17:04:33 -07:00
2026-05-22 20:20:42 -07:00
2026-05-20 09:42:40 -07:00
2026-05-13 17:07:23 -07:00
2026-05-08 18:44:16 -07:00
2026-05-04 21:21:22 -07:00
2026-05-22 20:20:42 -07:00
2026-05-10 18:04:43 -07:00
2026-05-22 20:20:42 -07:00
2026-05-04 21:21:22 -07:00
2026-05-19 10:39:56 -07:00
2026-05-12 17:04:33 -07:00
2026-05-16 18:40:04 -07:00
2026-05-16 11:55:15 -07:00
2026-05-12 17:04:33 -07:00
2026-05-12 22:52:01 -07:00
2026-05-22 20:20:42 -07:00
2026-05-13 06:29:34 -07:00
2026-05-07 23:21:05 -07:00
2026-05-13 06:29:34 -07:00
2026-05-07 23:38:12 -07:00
2026-05-04 21:21:22 -07:00
2026-05-04 21:21:22 -07:00
2026-05-22 20:20:42 -07:00
2026-05-18 07:52:44 -07:00
2026-05-18 13:01:31 -07:00
2026-05-08 18:44:16 -07:00
2026-05-08 18:44:16 -07:00
2026-05-07 04:17:52 -07:00
2026-05-18 15:50:48 -07:00
2026-05-18 15:50:48 -07:00
2026-05-18 15:50:48 -07:00
2026-05-20 04:12:40 -07:00
2026-05-20 09:42:40 -07:00
2026-05-20 09:42:40 -07:00
2026-05-19 07:35:24 -07:00
2026-05-16 00:13:37 -07:00
2026-05-22 20:20:42 -07:00
2026-05-04 07:00:39 -07:00
2026-05-23 01:30:15 -07:00
2026-05-20 06:20:16 -07:00
2026-05-22 20:20:42 -07:00
2026-05-22 20:20:42 -07:00
2026-05-11 16:06:37 -07:00
2026-05-13 20:08:37 -07:00
2026-05-22 20:20:42 -07:00
2026-05-22 00:15:14 -07:00
2026-05-15 23:39:43 -07:00
2026-05-19 17:45:36 -07:00
2026-05-04 17:22:21 -07:00
2026-05-08 01:57:55 -07:00
2026-05-22 20:20:42 -07:00
2026-05-13 09:23:13 -07:00
2026-05-23 13:06:48 -07:00
2026-05-09 19:49:02 -07:00
2026-05-10 01:22:13 -07:00
2026-05-04 15:16:53 -07:00
2026-05-14 14:04:32 -07:00
2026-05-20 09:42:40 -07:00
2026-05-20 09:42:40 -07:00
2026-05-20 09:42:40 -07:00
2026-05-20 09:42:40 -07:00
2026-05-23 02:06:11 -07:00
2026-05-13 15:05:05 -07:00
2026-05-20 09:42:40 -07:00
2026-05-22 20:20:42 -07:00
2026-05-13 06:29:34 -07:00
2026-05-19 20:45:46 -07:00
2026-05-19 19:47:43 -07:00
2026-05-19 12:13:46 -07:00
2026-05-12 17:04:33 -07:00
2026-05-15 06:32:37 -07:00
2026-05-13 06:29:34 -07:00
2026-05-22 20:20:42 -07:00
2026-05-19 08:20:23 -07:00
2026-05-17 01:08:50 -07:00
2026-05-13 06:29:34 -07:00
2026-05-19 01:17:46 -07:00
2026-05-22 01:33:28 -07:00
2026-05-22 20:20:42 -07:00
2026-05-18 18:26:52 -07:00
2026-05-18 05:51:14 -07:00
2026-05-10 16:12:08 -07:00
2026-05-20 04:13:43 -07:00
2026-05-18 07:14:27 -07:00
2026-05-19 23:04:12 -07:00
2026-04-30 21:26:54 -07:00
2026-05-22 00:15:14 -07:00
2026-04-30 18:24:30 -07:00
2026-05-07 12:30:18 -07:00
2026-05-07 10:27:48 -07:00
2026-05-07 10:27:48 -07:00
2026-05-16 20:13:30 -07:00
2026-05-16 09:20:33 -07:00
2026-05-11 09:52:23 +02:00
2026-05-03 03:49:18 -07:00
2026-05-22 20:20:42 -07:00
2026-05-13 13:11:17 -07:00
2026-05-13 06:29:35 -07:00
2026-05-22 20:20:42 -07:00
2026-05-14 15:05:38 -07:00
2026-05-14 22:16:44 -07:00
2026-05-15 23:39:43 -07:00