gsxdsm
c430f95c1d
fix(engine): add cross-process merge guard to prevent concurrent merges
...
Multiple engine processes (dashboard + serve) share the same SQLite database
but each has its own in-memory merge queue. Without a cross-process check,
two processes can start merging different tasks simultaneously.
Added store.getActiveMergingTask() as a DB-level check before any merge
starts. The drainMergeQueue defers with pollIntervalMs delay, and both
aiMergeTask and processPullRequestMergeTask have safety-net checks.
Also moved stale merge status cleanup to run regardless of autoMerge setting.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-13 20:22:10 -07:00
..
2026-04-13 18:21:31 -07:00
2026-04-13 18:21:31 -07:00
2026-04-13 14:23:40 -07:00
2026-04-13 15:51:05 -07:00
2026-04-13 15:51:05 -07:00
2026-04-10 21:12:40 -07:00
2026-03-31 19:29:47 -07:00
2026-03-31 13:33:44 -07:00
2026-04-08 05:55:36 -07:00
2026-04-11 21:23:36 -07:00
2026-04-09 13:59:43 -07:00
2026-04-05 13:37:21 -07:00
2026-04-05 13:37:21 -07:00
2026-04-10 03:02:38 -07:00
2026-04-10 03:02:38 -07:00
2026-04-09 16:14:44 -07:00
2026-04-09 16:14:44 -07:00
2026-04-13 18:21:31 -07:00
2026-04-13 18:21:31 -07:00
2026-04-08 14:38:36 -07:00
2026-04-13 13:32:38 -07:00
2026-04-11 21:13:16 -07:00
2026-04-11 21:13:16 -07:00
2026-04-12 15:28:10 -07:00
2026-04-13 20:22:10 -07:00
2026-04-12 15:13:27 -07:00
2026-04-12 15:13:27 -07:00
2026-04-11 20:13:47 -07:00
2026-04-11 21:23:36 -07:00
2026-04-13 18:21:31 -07:00
2026-04-13 17:14:06 -07:00
2026-04-09 18:10:29 -07:00
2026-04-11 21:13:16 -07:00
2026-04-07 22:56:09 -07:00
2026-04-10 21:22:59 -07:00
2026-04-10 21:22:59 -07:00
2026-04-09 13:22:29 -07:00
2026-04-09 13:22:29 -07:00
2026-04-13 18:21:31 -07:00
2026-04-04 19:47:48 -07:00
2026-04-13 18:21:31 -07:00
2026-04-10 02:29:47 -07:00
2026-04-10 02:29:47 -07:00
2026-04-01 07:44:04 -07:00
2026-04-04 00:29:34 -07:00
2026-04-04 02:01:58 -07:00
2026-04-04 02:01:58 -07:00
2026-04-13 18:03:39 -07:00
2026-04-13 20:22:10 -07:00
2026-04-07 22:56:09 -07:00
2026-04-12 19:59:12 -07:00
2026-04-12 19:59:12 -07:00
2026-04-02 17:55:25 -07:00
2026-04-02 13:39:04 -07:00
2026-04-03 07:58:45 -07:00
2026-04-03 07:58:45 -07:00
2026-04-13 20:22:10 -07:00
2026-04-13 00:03:16 -07:00
2026-04-13 18:00:49 -07:00
2026-04-10 12:11:55 -07:00
2026-04-10 12:11:55 -07:00
2026-04-10 12:11:55 -07:00
2026-04-10 12:11:55 -07:00
2026-04-10 09:21:38 -07:00
2026-04-10 09:21:38 -07:00
2026-04-13 17:14:06 -07:00
2026-04-13 17:14:06 -07:00
2026-04-13 18:21:31 -07:00
2026-04-12 17:21:24 -07:00
2026-04-12 17:49:22 -07:00
2026-04-12 17:49:22 -07:00
2026-04-13 18:21:31 -07:00
2026-04-13 18:21:31 -07:00
2026-04-10 08:58:37 -07:00
2026-04-10 08:58:37 -07:00
2026-04-12 15:13:27 -07:00
2026-04-05 22:50:03 -07:00
2026-04-05 22:50:03 -07:00
2026-04-04 22:03:42 -07:00
2026-04-04 22:03:42 -07:00
2026-04-13 11:10:17 -07:00
2026-04-13 18:21:31 -07:00
2026-03-31 19:29:47 -07:00
2026-04-02 13:29:48 -07:00
2026-04-08 14:38:36 -07:00
2026-04-05 20:56:58 -07:00
2026-04-13 18:21:31 -07:00
2026-04-12 17:21:24 -07:00