steroids-cli 0.8.32 → 0.8.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/dist/commands/loop-phases.d.ts +6 -2
  2. package/dist/commands/loop-phases.d.ts.map +1 -1
  3. package/dist/commands/loop-phases.js +42 -2
  4. package/dist/commands/loop-phases.js.map +1 -1
  5. package/dist/commands/merge.d.ts.map +1 -1
  6. package/dist/commands/merge.js +13 -1
  7. package/dist/commands/merge.js.map +1 -1
  8. package/dist/commands/runners-parallel.d.ts +1 -0
  9. package/dist/commands/runners-parallel.d.ts.map +1 -1
  10. package/dist/commands/runners-parallel.js +93 -6
  11. package/dist/commands/runners-parallel.js.map +1 -1
  12. package/dist/commands/workspaces.d.ts.map +1 -1
  13. package/dist/commands/workspaces.js +38 -4
  14. package/dist/commands/workspaces.js.map +1 -1
  15. package/dist/config/loader.d.ts +9 -0
  16. package/dist/config/loader.d.ts.map +1 -1
  17. package/dist/config/loader.js +9 -0
  18. package/dist/config/loader.js.map +1 -1
  19. package/dist/config/schema.d.ts.map +1 -1
  20. package/dist/config/schema.js +45 -0
  21. package/dist/config/schema.js.map +1 -1
  22. package/dist/database/queries.d.ts.map +1 -1
  23. package/dist/database/queries.js +15 -1
  24. package/dist/database/queries.js.map +1 -1
  25. package/dist/database/schema.d.ts +2 -2
  26. package/dist/database/schema.d.ts.map +1 -1
  27. package/dist/database/schema.js +9 -0
  28. package/dist/database/schema.js.map +1 -1
  29. package/dist/orchestrator/coder.js +1 -1
  30. package/dist/orchestrator/coder.js.map +1 -1
  31. package/dist/orchestrator/coordinator.d.ts.map +1 -1
  32. package/dist/orchestrator/coordinator.js +5 -3
  33. package/dist/orchestrator/coordinator.js.map +1 -1
  34. package/dist/orchestrator/fallback-handler.d.ts +2 -1
  35. package/dist/orchestrator/fallback-handler.d.ts.map +1 -1
  36. package/dist/orchestrator/fallback-handler.js +36 -20
  37. package/dist/orchestrator/fallback-handler.js.map +1 -1
  38. package/dist/orchestrator/post-reviewer.d.ts.map +1 -1
  39. package/dist/orchestrator/post-reviewer.js +18 -23
  40. package/dist/orchestrator/post-reviewer.js.map +1 -1
  41. package/dist/orchestrator/reviewer.d.ts +1 -1
  42. package/dist/orchestrator/reviewer.d.ts.map +1 -1
  43. package/dist/orchestrator/reviewer.js +19 -16
  44. package/dist/orchestrator/reviewer.js.map +1 -1
  45. package/dist/parallel/clone.d.ts +13 -0
  46. package/dist/parallel/clone.d.ts.map +1 -1
  47. package/dist/parallel/clone.js +40 -0
  48. package/dist/parallel/clone.js.map +1 -1
  49. package/dist/parallel/merge-conflict-attempts.d.ts +8 -0
  50. package/dist/parallel/merge-conflict-attempts.d.ts.map +1 -0
  51. package/dist/parallel/merge-conflict-attempts.js +68 -0
  52. package/dist/parallel/merge-conflict-attempts.js.map +1 -0
  53. package/dist/parallel/merge-conflict-invoke.d.ts +2 -0
  54. package/dist/parallel/merge-conflict-invoke.d.ts.map +1 -0
  55. package/dist/parallel/merge-conflict-invoke.js +41 -0
  56. package/dist/parallel/merge-conflict-invoke.js.map +1 -0
  57. package/dist/parallel/merge-conflict-prompts.d.ts +23 -0
  58. package/dist/parallel/merge-conflict-prompts.d.ts.map +1 -0
  59. package/dist/parallel/merge-conflict-prompts.js +40 -0
  60. package/dist/parallel/merge-conflict-prompts.js.map +1 -0
  61. package/dist/parallel/merge-conflict-task.d.ts +3 -0
  62. package/dist/parallel/merge-conflict-task.d.ts.map +1 -0
  63. package/dist/parallel/merge-conflict-task.js +59 -0
  64. package/dist/parallel/merge-conflict-task.js.map +1 -0
  65. package/dist/parallel/merge-conflict.d.ts +7 -7
  66. package/dist/parallel/merge-conflict.d.ts.map +1 -1
  67. package/dist/parallel/merge-conflict.js +91 -135
  68. package/dist/parallel/merge-conflict.js.map +1 -1
  69. package/dist/parallel/merge-errors.d.ts +2 -0
  70. package/dist/parallel/merge-errors.d.ts.map +1 -1
  71. package/dist/parallel/merge-errors.js +2 -0
  72. package/dist/parallel/merge-errors.js.map +1 -1
  73. package/dist/parallel/merge-git.d.ts.map +1 -1
  74. package/dist/parallel/merge-git.js +4 -1
  75. package/dist/parallel/merge-git.js.map +1 -1
  76. package/dist/parallel/merge-lock.d.ts +4 -2
  77. package/dist/parallel/merge-lock.d.ts.map +1 -1
  78. package/dist/parallel/merge-lock.js +51 -18
  79. package/dist/parallel/merge-lock.js.map +1 -1
  80. package/dist/parallel/merge-progress.d.ts +3 -1
  81. package/dist/parallel/merge-progress.d.ts.map +1 -1
  82. package/dist/parallel/merge-progress.js +9 -4
  83. package/dist/parallel/merge-progress.js.map +1 -1
  84. package/dist/parallel/merge.d.ts +4 -0
  85. package/dist/parallel/merge.d.ts.map +1 -1
  86. package/dist/parallel/merge.js +222 -17
  87. package/dist/parallel/merge.js.map +1 -1
  88. package/dist/prompts/prompt-helpers.d.ts +1 -1
  89. package/dist/prompts/prompt-helpers.d.ts.map +1 -1
  90. package/dist/prompts/prompt-helpers.js +10 -7
  91. package/dist/prompts/prompt-helpers.js.map +1 -1
  92. package/dist/prompts/reviewer.d.ts.map +1 -1
  93. package/dist/prompts/reviewer.js +48 -21
  94. package/dist/prompts/reviewer.js.map +1 -1
  95. package/dist/runners/global-db.d.ts +32 -0
  96. package/dist/runners/global-db.d.ts.map +1 -1
  97. package/dist/runners/global-db.js +403 -2
  98. package/dist/runners/global-db.js.map +1 -1
  99. package/dist/runners/orchestrator-loop.d.ts.map +1 -1
  100. package/dist/runners/orchestrator-loop.js +50 -3
  101. package/dist/runners/orchestrator-loop.js.map +1 -1
  102. package/dist/runners/wakeup.d.ts +1 -0
  103. package/dist/runners/wakeup.d.ts.map +1 -1
  104. package/dist/runners/wakeup.js +363 -29
  105. package/dist/runners/wakeup.js.map +1 -1
  106. package/migrations/012_add_merge_lock_epoch.sql +15 -0
  107. package/migrations/013_add_merge_progress_applied_commit_sha.sql +15 -0
  108. package/migrations/manifest.json +17 -1
  109. package/package.json +1 -1
@@ -10,9 +10,12 @@ exports.getNowISOString = getNowISOString;
10
10
  exports.cleanupWorkspaceState = cleanupWorkspaceState;
11
11
  const node_path_1 = require("node:path");
12
12
  const node_fs_1 = require("node:fs");
13
+ const node_child_process_1 = require("node:child_process");
13
14
  const clone_js_1 = require("./clone.js");
14
15
  const clone_js_2 = require("./clone.js");
16
+ const clone_js_3 = require("./clone.js");
15
17
  const connection_js_1 = require("../database/connection.js");
18
+ const global_db_js_1 = require("../runners/global-db.js");
16
19
  const merge_git_js_1 = require("./merge-git.js");
17
20
  const merge_lock_js_1 = require("./merge-lock.js");
18
21
  const merge_progress_js_1 = require("./merge-progress.js");
@@ -23,6 +26,8 @@ const DEFAULT_REMOTE = 'origin';
23
26
  const DEFAULT_MAIN_BRANCH = 'main';
24
27
  const DEFAULT_LOCK_TIMEOUT_MINUTES = 120;
25
28
  const DEFAULT_HEARTBEAT_INTERVAL_MS = 30_000;
29
+ const VALIDATION_MAX_BUFFER_BYTES = 20 * 1024 * 1024;
30
+ const VALIDATION_SNIPPET_LIMIT = 8_000;
26
31
  function getNowISOString() {
27
32
  return new Date().toISOString();
28
33
  }
@@ -50,6 +55,115 @@ function cleanupWorkspaceState(projectPath, workspaceRoot, workstreamIds, option
50
55
  }
51
56
  }
52
57
  }
58
+ function runValidationGate(mergePath, validationCommand) {
59
+ if (!validationCommand || validationCommand.trim().length === 0) {
60
+ return;
61
+ }
62
+ try {
63
+ (0, node_child_process_1.execSync)(validationCommand, {
64
+ cwd: mergePath,
65
+ stdio: 'pipe',
66
+ encoding: 'utf-8',
67
+ maxBuffer: VALIDATION_MAX_BUFFER_BYTES,
68
+ });
69
+ }
70
+ catch (error) {
71
+ const err = error;
72
+ const stderr = typeof err.stderr === 'string' ? err.stderr : err.stderr?.toString() ?? '';
73
+ const stdout = typeof err.stdout === 'string' ? err.stdout : err.stdout?.toString() ?? '';
74
+ if (err.code === 'ENOBUFS') {
75
+ throw new merge_errors_js_1.ParallelMergeError('Validation gate output exceeded the maximum buffer size. Reduce output verbosity or split the command.', 'VALIDATION_FAILED', {
76
+ details: {
77
+ command: validationCommand.trim(),
78
+ stderr: stderr ?? '',
79
+ stdout: stdout ?? '',
80
+ },
81
+ });
82
+ }
83
+ const message = [stderr, stdout, err.message].filter(Boolean).join('\n') || String(error);
84
+ throw new merge_errors_js_1.ParallelMergeError(`Validation gate failed: ${message}`, 'VALIDATION_FAILED', {
85
+ details: {
86
+ command: validationCommand.trim(),
87
+ stderr,
88
+ stdout,
89
+ },
90
+ });
91
+ }
92
+ }
93
+ function snippet(value, limit = VALIDATION_SNIPPET_LIMIT) {
94
+ if (!value) {
95
+ return '';
96
+ }
97
+ const trimmed = value.trim();
98
+ if (trimmed.length <= limit) {
99
+ return trimmed;
100
+ }
101
+ return trimmed.slice(-limit);
102
+ }
103
+ function isAppliedCommitIntegrated(projectPath, commitSha) {
104
+ if (!commitSha) {
105
+ return false;
106
+ }
107
+ const output = (0, merge_git_js_1.runGitCommand)(projectPath, ['branch', '--contains', commitSha, '--list', 'HEAD'], { allowFailure: true });
108
+ const lower = output.toLowerCase();
109
+ if (lower.includes('fatal:') || lower.includes('error:')) {
110
+ return false;
111
+ }
112
+ return output.trim().length > 0;
113
+ }
114
+ function resolveGitSha(output) {
115
+ const trimmed = output.trim();
116
+ if (!trimmed)
117
+ return null;
118
+ if (/fatal:|error:/i.test(trimmed))
119
+ return null;
120
+ return trimmed.split('\n').at(-1)?.trim() ?? null;
121
+ }
122
+ function sealWorkstreamsForMerge(mergeDb, sessionId, runnerId, lockEpoch, mergePath, remote, mainBranch, workstreams) {
123
+ const { db, close } = (0, global_db_js_1.openGlobalDatabase)();
124
+ try {
125
+ const sealedEntries = [];
126
+ (0, merge_lock_js_1.assertMergeLockEpoch)(mergeDb, sessionId, runnerId, lockEpoch);
127
+ for (let index = 0; index < workstreams.length; index += 1) {
128
+ (0, merge_lock_js_1.assertMergeLockEpoch)(mergeDb, sessionId, runnerId, lockEpoch);
129
+ const stream = workstreams[index];
130
+ const commits = (0, merge_git_js_1.getWorkstreamCommitList)(mergePath, remote, stream.branchName, mainBranch);
131
+ const sealedHeadSha = resolveGitSha((0, merge_git_js_1.runGitCommand)(mergePath, ['rev-parse', `${remote}/${stream.branchName}`], { allowFailure: true }));
132
+ const sealedBaseSha = resolveGitSha((0, merge_git_js_1.runGitCommand)(mergePath, ['merge-base', `${remote}/${mainBranch}`, `${remote}/${stream.branchName}`], { allowFailure: true }));
133
+ if (!sealedHeadSha || !sealedBaseSha) {
134
+ throw new merge_errors_js_1.ParallelMergeError(`Could not resolve sealed merge SHAs for ${remote}/${stream.branchName}`, 'REMOTE_BRANCH_MISSING');
135
+ }
136
+ sealedEntries.push({
137
+ streamId: stream.id,
138
+ sealedBaseSha,
139
+ sealedHeadSha,
140
+ commits,
141
+ completionOrder: index + 1,
142
+ });
143
+ }
144
+ const applySealedUpdates = db.transaction(() => {
145
+ for (const entry of sealedEntries) {
146
+ const update = db.prepare(`UPDATE workstreams
147
+ SET sealed_base_sha = ?,
148
+ sealed_head_sha = ?,
149
+ sealed_commit_shas = ?,
150
+ completion_order = COALESCE(completion_order, ?),
151
+ completed_at = COALESCE(completed_at, datetime('now')),
152
+ status = 'completed'
153
+ WHERE session_id = ?
154
+ AND id = ?
155
+ AND status IN ('running', 'completed')`).run(entry.sealedBaseSha, entry.sealedHeadSha, JSON.stringify(entry.commits), entry.completionOrder, sessionId, entry.streamId);
156
+ if (update.changes !== 1) {
157
+ throw new merge_errors_js_1.ParallelMergeError(`Workstream lease check failed while sealing ${entry.streamId}`, 'LEASE_FENCE_FAILED');
158
+ }
159
+ }
160
+ });
161
+ applySealedUpdates();
162
+ }
163
+ finally {
164
+ close();
165
+ }
166
+ }
53
167
  async function processWorkstream(db, projectPath, sessionId, workstream, mainBranch, remote, progressRows, heartbeat) {
54
168
  const summary = { applied: 0, skipped: 0, conflicts: 0 };
55
169
  const commits = (0, merge_git_js_1.getWorkstreamCommitList)(projectPath, remote, workstream.branchName, mainBranch);
@@ -66,8 +180,11 @@ async function processWorkstream(db, projectPath, sessionId, workstream, mainBra
66
180
  const shortSha = (0, merge_git_js_1.getCommitShortSha)(commitSha);
67
181
  const prior = workstreamLookup.get(position);
68
182
  if (prior?.status === 'applied' && prior.commit_sha === commitSha) {
69
- summary.applied += 1;
70
- continue;
183
+ if (isAppliedCommitIntegrated(projectPath, prior.applied_commit_sha)) {
184
+ summary.applied += 1;
185
+ continue;
186
+ }
187
+ (0, merge_progress_js_1.clearProgressEntry)(db, sessionId, workstream.id, position);
71
188
  }
72
189
  if (prior?.status === 'skipped' && prior.commit_sha === commitSha) {
73
190
  summary.skipped += 1;
@@ -80,6 +197,11 @@ async function processWorkstream(db, projectPath, sessionId, workstream, mainBra
80
197
  projectPath,
81
198
  sessionId,
82
199
  workstreamId: workstream.id,
200
+ runnerId: heartbeat.runnerId,
201
+ mergeLockHeartbeat: {
202
+ lockEpoch: heartbeat.lockEpoch,
203
+ timeoutMinutes: heartbeat.timeoutMinutes,
204
+ },
83
205
  branchName: workstream.branchName,
84
206
  position,
85
207
  commitSha,
@@ -99,7 +221,8 @@ async function processWorkstream(db, projectPath, sessionId, workstream, mainBra
99
221
  }
100
222
  try {
101
223
  (0, merge_git_js_1.runGitCommand)(projectPath, ['cherry-pick', commitSha]);
102
- (0, merge_progress_js_1.upsertProgressEntry)(db, sessionId, workstream.id, position, commitSha, 'applied');
224
+ const appliedCommitSha = (0, merge_git_js_1.runGitCommand)(projectPath, ['rev-parse', 'HEAD']).trim();
225
+ (0, merge_progress_js_1.upsertProgressEntry)(db, sessionId, workstream.id, position, commitSha, 'applied', null, appliedCommitSha);
103
226
  summary.applied += 1;
104
227
  }
105
228
  catch (error) {
@@ -112,6 +235,11 @@ async function processWorkstream(db, projectPath, sessionId, workstream, mainBra
112
235
  projectPath,
113
236
  sessionId,
114
237
  workstreamId: workstream.id,
238
+ runnerId: heartbeat.runnerId,
239
+ mergeLockHeartbeat: {
240
+ lockEpoch: heartbeat.lockEpoch,
241
+ timeoutMinutes: heartbeat.timeoutMinutes,
242
+ },
115
243
  branchName: workstream.branchName,
116
244
  position,
117
245
  commitSha,
@@ -124,7 +252,7 @@ async function processWorkstream(db, projectPath, sessionId, workstream, mainBra
124
252
  }
125
253
  summary.conflicts += 1;
126
254
  }
127
- (0, merge_lock_js_1.refreshMergeLock)(db, heartbeat.sessionId, heartbeat.runnerId, heartbeat.timeoutMinutes);
255
+ (0, merge_lock_js_1.refreshMergeLock)(db, heartbeat.sessionId, heartbeat.runnerId, heartbeat.timeoutMinutes, heartbeat.lockEpoch);
128
256
  }
129
257
  return summary;
130
258
  }
@@ -142,6 +270,10 @@ async function runParallelMerge(options) {
142
270
  const heartbeatIntervalMs = options.heartbeatIntervalMs ?? DEFAULT_HEARTBEAT_INTERVAL_MS;
143
271
  const workspaceRoot = options.remoteWorkspaceRoot ?? (0, clone_js_1.getDefaultWorkspaceRoot)();
144
272
  const cleanupOnSuccess = options.cleanupOnSuccess ?? true;
273
+ const integrationBranchName = options.integrationBranchName ?? `steroids/integration-${sessionId.slice(0, 8)}`;
274
+ const validationCommand = options.validationCommand;
275
+ let mergePath = projectPath;
276
+ let integrationWorkspacePath = null;
145
277
  const { db, close } = (0, connection_js_1.openDatabase)(projectPath);
146
278
  const summary = {
147
279
  success: false,
@@ -151,6 +283,7 @@ async function runParallelMerge(options) {
151
283
  errors: [],
152
284
  };
153
285
  let heartbeatTimer = null;
286
+ let lockEpoch = 0;
154
287
  try {
155
288
  const lock = (0, merge_lock_js_1.acquireMergeLock)(db, {
156
289
  sessionId,
@@ -161,21 +294,38 @@ async function runParallelMerge(options) {
161
294
  summary.errors.push(`Could not acquire merge lock (held by ${lock.lock?.runner_id ?? 'another process'})`);
162
295
  return summary;
163
296
  }
164
- const recoveringFromCherryPick = (0, merge_git_js_1.hasCherryPickInProgress)(projectPath);
297
+ lockEpoch = lock.lock?.lock_epoch ?? 0;
298
+ (0, merge_lock_js_1.assertMergeLockEpoch)(db, sessionId, runnerId, lockEpoch);
299
+ (0, global_db_js_1.updateParallelSessionStatus)(sessionId, 'merging');
300
+ const integrationWorkspace = (0, clone_js_3.createIntegrationWorkspace)({
301
+ projectPath,
302
+ sessionId,
303
+ baseBranch: mainBranch,
304
+ remote,
305
+ workspaceRoot,
306
+ integrationBranchName,
307
+ });
308
+ mergePath = integrationWorkspace.workspacePath;
309
+ integrationWorkspacePath = integrationWorkspace.workspacePath;
310
+ const recoveringFromCherryPick = (0, merge_git_js_1.hasCherryPickInProgress)(mergePath);
165
311
  heartbeatTimer = setInterval(() => {
166
312
  try {
167
- (0, merge_lock_js_1.refreshMergeLock)(db, sessionId, runnerId, lockTimeoutMinutes);
313
+ (0, merge_lock_js_1.refreshMergeLock)(db, sessionId, runnerId, lockTimeoutMinutes, lockEpoch);
314
+ (0, merge_lock_js_1.assertMergeLockEpoch)(db, sessionId, runnerId, lockEpoch);
168
315
  }
169
316
  catch {
170
317
  // If heartbeat fails, merge keeps running until lock-dependent operations fail.
171
318
  }
172
319
  }, heartbeatIntervalMs);
173
- ensureMergeWorkingTree(projectPath);
320
+ ensureMergeWorkingTree(mergePath);
321
+ (0, merge_lock_js_1.assertMergeLockEpoch)(db, sessionId, runnerId, lockEpoch);
174
322
  for (const stream of workstreams) {
175
- (0, merge_git_js_1.safeRunMergeCommand)(projectPath, remote, stream.branchName);
323
+ (0, merge_lock_js_1.assertMergeLockEpoch)(db, sessionId, runnerId, lockEpoch);
324
+ (0, merge_git_js_1.safeRunMergeCommand)(mergePath, remote, stream.branchName);
176
325
  }
326
+ sealWorkstreamsForMerge(db, sessionId, runnerId, lockEpoch, mergePath, remote, mainBranch, workstreams);
177
327
  if (!recoveringFromCherryPick) {
178
- const pullOutput = (0, merge_git_js_1.runGitCommand)(projectPath, ['pull', '--ff-only', remote, mainBranch], { allowFailure: true });
328
+ const pullOutput = (0, merge_git_js_1.runGitCommand)(mergePath, ['pull', '--ff-only', remote, mainBranch], { allowFailure: true });
179
329
  const pullOutputLower = pullOutput.toLowerCase();
180
330
  if (pullOutputLower.includes('fatal:') || pullOutputLower.includes('error:') || pullOutputLower.includes('error ')) {
181
331
  if (pullOutputLower.includes('could not apply') ||
@@ -187,29 +337,49 @@ async function runParallelMerge(options) {
187
337
  }
188
338
  const progressRows = (0, merge_progress_js_1.listMergeProgress)(db, sessionId);
189
339
  for (const workstream of workstreams) {
190
- const stats = await processWorkstream(db, projectPath, sessionId, workstream, mainBranch, remote, progressRows, { sessionId, runnerId, timeoutMinutes: lockTimeoutMinutes });
340
+ const stats = await processWorkstream(db, mergePath, sessionId, workstream, mainBranch, remote, progressRows, { sessionId, runnerId, timeoutMinutes: lockTimeoutMinutes, lockEpoch });
191
341
  summary.completedCommits += stats.applied;
192
342
  summary.skipped += stats.skipped;
193
343
  summary.conflicts += stats.conflicts;
194
344
  }
195
- const pushResult = (0, merge_git_js_1.runGitCommand)(projectPath, ['push', remote, mainBranch], { allowFailure: true });
345
+ runValidationGate(mergePath, validationCommand);
346
+ (0, merge_lock_js_1.assertMergeLockEpoch)(db, sessionId, runnerId, lockEpoch);
347
+ const pushResult = (0, merge_git_js_1.runGitCommand)(mergePath, ['push', remote, mainBranch], { allowFailure: true });
196
348
  if ((0, merge_git_js_1.isNoPushError)(pushResult)) {
197
349
  summary.errors.push('Push to main failed.');
198
350
  throw new merge_errors_js_1.ParallelMergeError(pushResult, 'PUSH_FAILED');
199
351
  }
352
+ (0, global_db_js_1.updateParallelSessionStatus)(sessionId, 'cleanup_draining');
200
353
  for (const stream of workstreams) {
201
354
  try {
202
- (0, merge_git_js_1.runGitCommand)(projectPath, ['push', remote, '--delete', stream.branchName]);
355
+ (0, merge_lock_js_1.assertMergeLockEpoch)(db, sessionId, runnerId, lockEpoch);
356
+ (0, merge_git_js_1.runGitCommand)(mergePath, ['push', remote, '--delete', stream.branchName]);
203
357
  }
204
358
  catch {
205
359
  // Ignore branch delete failures; branch may already be deleted.
206
360
  }
207
361
  }
208
- (0, merge_git_js_1.runGitCommand)(projectPath, ['remote', 'prune', remote]);
209
- cleanupWorkspaceState(projectPath, workspaceRoot, workstreams.map((stream) => stream.id), {
210
- cleanupOnSuccess,
211
- });
362
+ (0, merge_git_js_1.runGitCommand)(mergePath, ['remote', 'prune', remote]);
363
+ if (cleanupOnSuccess) {
364
+ cleanupWorkspaceState(projectPath, workspaceRoot, workstreams.map((stream) => stream.id), {
365
+ cleanupOnSuccess,
366
+ });
367
+ if (integrationWorkspacePath) {
368
+ (0, node_fs_1.rmSync)(integrationWorkspacePath, { recursive: true, force: true });
369
+ integrationWorkspacePath = null;
370
+ }
371
+ }
372
+ else {
373
+ (0, global_db_js_1.updateParallelSessionStatus)(sessionId, 'cleanup_pending');
374
+ }
212
375
  summary.success = true;
376
+ try {
377
+ (0, global_db_js_1.resolveValidationEscalationsForSession)(sessionId);
378
+ }
379
+ catch {
380
+ // best-effort resolution marker; merge completion should not fail because of escalation bookkeeping.
381
+ }
382
+ (0, global_db_js_1.updateParallelSessionStatus)(sessionId, 'completed', true);
213
383
  return summary;
214
384
  }
215
385
  catch (error) {
@@ -217,6 +387,36 @@ async function runParallelMerge(options) {
217
387
  if (!summary.errors.includes(message)) {
218
388
  summary.errors.push(message);
219
389
  }
390
+ if (error instanceof merge_errors_js_1.ParallelMergeError && error.code === 'VALIDATION_FAILED') {
391
+ const commandFromError = typeof error.details?.command === 'string' ? error.details.command : null;
392
+ const stderrFromError = typeof error.details?.stderr === 'string' ? error.details.stderr : null;
393
+ const stdoutFromError = typeof error.details?.stdout === 'string' ? error.details.stdout : null;
394
+ try {
395
+ const escalation = (0, global_db_js_1.recordValidationEscalation)({
396
+ sessionId,
397
+ projectPath,
398
+ workspacePath: integrationWorkspacePath ?? mergePath,
399
+ validationCommand: commandFromError ?? (validationCommand?.trim() || '(not configured)'),
400
+ errorMessage: message,
401
+ stdoutSnippet: snippet(stdoutFromError),
402
+ stderrSnippet: snippet(stderrFromError || message),
403
+ });
404
+ summary.validationEscalationId = escalation.id;
405
+ summary.validationWorkspacePath = escalation.workspace_path;
406
+ summary.errors.push(`Validation blocked for session ${sessionId}. Escalation ${escalation.id} created. Workspace preserved at ${escalation.workspace_path}.`);
407
+ }
408
+ catch (escalationError) {
409
+ const escalationMessage = escalationError instanceof Error ? escalationError.message : String(escalationError);
410
+ summary.errors.push(`Validation escalation persistence failed for session ${sessionId}: ${escalationMessage}. Workspace preserved at ${integrationWorkspacePath ?? mergePath}.`);
411
+ }
412
+ (0, global_db_js_1.updateParallelSessionStatus)(sessionId, 'blocked_validation', false);
413
+ }
414
+ else if (error instanceof merge_errors_js_1.ParallelMergeError && error.code === 'CONFLICT_ATTEMPT_LIMIT') {
415
+ (0, global_db_js_1.updateParallelSessionStatus)(sessionId, 'blocked_conflict', false);
416
+ }
417
+ else {
418
+ (0, global_db_js_1.updateParallelSessionStatus)(sessionId, 'failed', true);
419
+ }
220
420
  return summary;
221
421
  }
222
422
  finally {
@@ -224,7 +424,12 @@ async function runParallelMerge(options) {
224
424
  clearInterval(heartbeatTimer);
225
425
  heartbeatTimer = null;
226
426
  }
227
- (0, merge_lock_js_1.releaseMergeLock)(db, sessionId, runnerId);
427
+ if (cleanupOnSuccess && integrationWorkspacePath && summary.success) {
428
+ (0, node_fs_1.rmSync)(integrationWorkspacePath, { recursive: true, force: true });
429
+ }
430
+ if (lockEpoch > 0) {
431
+ (0, merge_lock_js_1.releaseMergeLock)(db, sessionId, runnerId, lockEpoch);
432
+ }
228
433
  close();
229
434
  }
230
435
  }
@@ -1 +1 @@
1
- {"version":3,"file":"merge.js","sourceRoot":"","sources":["../../src/parallel/merge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"merge.js","sourceRoot":"","sources":["../../src/parallel/merge.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@ export declare function extractRejectionTitle(notes: string | null | undefined):
19
19
  * Detect repeated patterns in rejection history
20
20
  * Uses normalized fuzzy matching to catch similar (not just identical) issues
21
21
  */
22
- export declare function detectRejectionPatterns(rejectionHistory: RejectionEntry[]): string;
22
+ export declare function detectRejectionPatterns(rejectionHistory: RejectionEntry[], repeatThreshold?: number): string;
23
23
  /**
24
24
  * Extract file paths mentioned in text (task title, spec content)
25
25
  * Language-agnostic: matches any path-like pattern with directory separators and file extensions
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-helpers.d.ts","sourceRoot":"","sources":["../../src/prompts/prompt-helpers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAEnE;;GAEG;AACH,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAWvD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GACzB,MAAM,CAgBR;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAK9E;AAUD;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,gBAAgB,EAAE,cAAc,EAAE,GAAG,MAAM,CA6DlF;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAgB7E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAe7E;AAED;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,MAAM,EACd,gBAAgB,CAAC,EAAE,cAAc,EAAE,EACnC,WAAW,CAAC,EAAE,MAAM,EACpB,mBAAmB,CAAC,EAAE,MAAM,GAC3B,MAAM,CAmFR;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAkBzD;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAID;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,WAAW,EAAE,GAAG,MAAM,CAwC9F"}
1
+ {"version":3,"file":"prompt-helpers.d.ts","sourceRoot":"","sources":["../../src/prompts/prompt-helpers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAEnE;;GAEG;AACH,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAWvD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GACzB,MAAM,CAgBR;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAK9E;AAUD;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,gBAAgB,EAAE,cAAc,EAAE,EAClC,eAAe,GAAE,MAAU,GAC1B,MAAM,CA6DR;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAgB7E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAe7E;AAED;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,MAAM,EACd,gBAAgB,CAAC,EAAE,cAAc,EAAE,EACnC,WAAW,CAAC,EAAE,MAAM,EACpB,mBAAmB,CAAC,EAAE,MAAM,GAC3B,MAAM,CAyFR;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAkBzD;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAID;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,WAAW,EAAE,GAAG,MAAM,CAwC9F"}
@@ -69,8 +69,8 @@ function normalizeForComparison(text) {
69
69
  * Detect repeated patterns in rejection history
70
70
  * Uses normalized fuzzy matching to catch similar (not just identical) issues
71
71
  */
72
- function detectRejectionPatterns(rejectionHistory) {
73
- if (rejectionHistory.length < 3)
72
+ function detectRejectionPatterns(rejectionHistory, repeatThreshold = 3) {
73
+ if (rejectionHistory.length < repeatThreshold)
74
74
  return '';
75
75
  // Extract titles and normalize for comparison
76
76
  const entries = rejectionHistory.map(r => ({
@@ -89,7 +89,7 @@ function detectRejectionPatterns(rejectionHistory) {
89
89
  }
90
90
  }
91
91
  // Also check for keyword-level overlap between non-identical entries
92
- // If 3+ rejections share significant keywords, flag it
92
+ // If N+ rejections share significant keywords, flag it
93
93
  const allNotes = rejectionHistory.map(r => r.notes || '');
94
94
  const keywordCounts = new Map();
95
95
  for (const note of allNotes) {
@@ -102,10 +102,10 @@ function detectRejectionPatterns(rejectionHistory) {
102
102
  }
103
103
  }
104
104
  const hotKeywords = [...keywordCounts.entries()]
105
- .filter(([, count]) => count >= 3)
105
+ .filter(([, count]) => count >= repeatThreshold)
106
106
  .filter(([word]) => !['task', 'file', 'code', 'this', 'that', 'should', 'must', 'need'].includes(word))
107
107
  .map(([word]) => word);
108
- const repeated = [...groups.values()].filter(g => g.count >= 3);
108
+ const repeated = [...groups.values()].filter(g => g.count >= repeatThreshold);
109
109
  if (repeated.length === 0 && hotKeywords.length === 0)
110
110
  return '';
111
111
  const lines = [];
@@ -189,7 +189,7 @@ ${r.notes || '(no detailed notes)'}
189
189
  `;
190
190
  });
191
191
  // Detect patterns
192
- const patternWarning = detectRejectionPatterns(rejectionHistory);
192
+ const patternWarning = detectRejectionPatterns(rejectionHistory, coordinatorGuidance ? 2 : 3);
193
193
  // Coordinator guidance section (injected after 2nd rejection)
194
194
  const coordinatorSection = coordinatorGuidance ? `
195
195
  ---
@@ -200,7 +200,10 @@ A coordinator has reviewed the rejection history and provides this guidance:
200
200
 
201
201
  ${coordinatorGuidance}
202
202
 
203
- **Follow the coordinator's guidance above. It takes priority over conflicting reviewer feedback.**
203
+ **Use the coordinator guidance as additional context, not as an override of reviewer correctness checks.**
204
+
205
+ If coordinator guidance says a reviewer demand is likely out of scope, you may skip that demand.
206
+ If the reviewer rejects again for the same disputed demand, DISPUTE instead of repeating the same fix cycle.
204
207
 
205
208
  ` : '';
206
209
  return `
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-helpers.js","sourceRoot":"","sources":["../../src/prompts/prompt-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-helpers.js","sourceRoot":"","sources":["../../src/prompts/prompt-helpers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"reviewer.d.ts","sourceRoot":"","sources":["../../src/prompts/reviewer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,IAAI,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,gBAAgB,CAAC,EAAE,cAAc,EAAE,CAAC;IACpC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,MAAM,EAAE,cAAc,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAgID;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,CA4L7E;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,EAAE,cAAc,CAAC;CACxB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,0BAA0B,GAAG,MAAM,CA8GvF"}
1
+ {"version":3,"file":"reviewer.d.ts","sourceRoot":"","sources":["../../src/prompts/reviewer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,IAAI,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,gBAAgB,CAAC,EAAE,cAAc,EAAE,CAAC;IACpC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,MAAM,EAAE,cAAc,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAmID;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,CAoN7E;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,EAAE,cAAc,CAAC;CACxB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,0BAA0B,GAAG,MAAM,CA8GvF"}