codex-orchestrator 0.1.24 → 0.1.26

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 (62) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +173 -298
  3. package/dist/src/cli.js +56 -1
  4. package/dist/src/cli.js.map +1 -1
  5. package/dist/src/codex/command-adapter.d.ts +12 -2
  6. package/dist/src/codex/command-adapter.d.ts.map +1 -1
  7. package/dist/src/codex/command-adapter.js +27 -7
  8. package/dist/src/codex/command-adapter.js.map +1 -1
  9. package/dist/src/config/schema.d.ts +37 -0
  10. package/dist/src/config/schema.d.ts.map +1 -1
  11. package/dist/src/config/schema.js +112 -0
  12. package/dist/src/config/schema.js.map +1 -1
  13. package/dist/src/index.d.ts +8 -4
  14. package/dist/src/index.d.ts.map +1 -1
  15. package/dist/src/index.js +4 -2
  16. package/dist/src/index.js.map +1 -1
  17. package/dist/src/runner/context-snapshot.d.ts +28 -0
  18. package/dist/src/runner/context-snapshot.d.ts.map +1 -0
  19. package/dist/src/runner/context-snapshot.js +82 -0
  20. package/dist/src/runner/context-snapshot.js.map +1 -0
  21. package/dist/src/runner/daemon-command.d.ts.map +1 -1
  22. package/dist/src/runner/daemon-command.js +25 -1
  23. package/dist/src/runner/daemon-command.js.map +1 -1
  24. package/dist/src/runner/doctor-command.d.ts +39 -0
  25. package/dist/src/runner/doctor-command.d.ts.map +1 -0
  26. package/dist/src/runner/doctor-command.js +123 -0
  27. package/dist/src/runner/doctor-command.js.map +1 -0
  28. package/dist/src/runner/durable-run-summary.d.ts +41 -0
  29. package/dist/src/runner/durable-run-summary.d.ts.map +1 -0
  30. package/dist/src/runner/durable-run-summary.js +66 -0
  31. package/dist/src/runner/durable-run-summary.js.map +1 -0
  32. package/dist/src/runner/fresh-context-review.d.ts +22 -0
  33. package/dist/src/runner/fresh-context-review.d.ts.map +1 -0
  34. package/dist/src/runner/fresh-context-review.js +176 -0
  35. package/dist/src/runner/fresh-context-review.js.map +1 -0
  36. package/dist/src/runner/handoff-evidence.d.ts +17 -0
  37. package/dist/src/runner/handoff-evidence.d.ts.map +1 -1
  38. package/dist/src/runner/handoff-evidence.js +65 -0
  39. package/dist/src/runner/handoff-evidence.js.map +1 -1
  40. package/dist/src/runner/lifecycle-events.d.ts +44 -0
  41. package/dist/src/runner/lifecycle-events.d.ts.map +1 -0
  42. package/dist/src/runner/lifecycle-events.js +108 -0
  43. package/dist/src/runner/lifecycle-events.js.map +1 -0
  44. package/dist/src/runner/plan-auto-command.d.ts.map +1 -1
  45. package/dist/src/runner/plan-auto-command.js +252 -40
  46. package/dist/src/runner/plan-auto-command.js.map +1 -1
  47. package/dist/src/runner/rework-policy.d.ts +3 -0
  48. package/dist/src/runner/rework-policy.d.ts.map +1 -0
  49. package/dist/src/runner/rework-policy.js +20 -0
  50. package/dist/src/runner/rework-policy.js.map +1 -0
  51. package/dist/src/runner/scoped-auto-command.d.ts.map +1 -1
  52. package/dist/src/runner/scoped-auto-command.js +226 -24
  53. package/dist/src/runner/scoped-auto-command.js.map +1 -1
  54. package/dist/src/runner/status-command.d.ts +21 -0
  55. package/dist/src/runner/status-command.d.ts.map +1 -1
  56. package/dist/src/runner/status-command.js +26 -2
  57. package/dist/src/runner/status-command.js.map +1 -1
  58. package/dist/src/setup/project-config.d.ts.map +1 -1
  59. package/dist/src/setup/project-config.js +61 -0
  60. package/dist/src/setup/project-config.js.map +1 -1
  61. package/docs/deep-dive.md +364 -0
  62. package/package.json +2 -1
@@ -7,14 +7,28 @@ import { GhCliPullRequestAdapter } from '../github/gh-pull-request-adapter.js';
7
7
  import { defaultShellCommandExecutor } from '../process/command.js';
8
8
  import { formatSessionTimestamp, readRunnerConfig, runConfiguredChecks, } from './command-utils.js';
9
9
  import { buildChildBlockedReport, buildChildReviewReport, buildIssueTreePullRequestBody, buildIssueTreeReviewReport, buildParentBlockedReport, } from './handoff-evidence.js';
10
+ import { writeDurableRunSummary } from './durable-run-summary.js';
11
+ import { runFreshContextReviewIfEnabled } from './fresh-context-review.js';
12
+ import { writeContextSnapshot } from './context-snapshot.js';
10
13
  import { readPlanAutoCompletionReport, } from './completion-report.js';
11
14
  import { claimIssue, discoverIssueWork } from './issue-state-machine.js';
12
15
  import { collectExecutableChildBatches, persistAutonomousChildNode, readAutonomousChildNodes, topologicalPlanNodes, } from './issue-tree.js';
13
16
  import { runImplementationPublishabilityCheck } from './local-execution-session.js';
17
+ import { RunnerLifecycleEventStore } from './lifecycle-events.js';
14
18
  import { RunnerStateStore } from './local-state.js';
15
19
  import { buildIssueTreeChildPrompt, buildPlanAutoPrompt, sessionPromptPath, sessionReportPath, writeDurablePrompt, } from './prompt.js';
20
+ import { shouldRequestImplementationRework } from './rework-policy.js';
16
21
  import { sessionLogPath } from './run-log.js';
17
22
  import { cleanupSessionCodexHome, sessionCodexHomePath } from './session-home.js';
23
+ class ChildExecutionBlockedError extends Error {
24
+ durableRunSummary;
25
+ freshContextReview;
26
+ constructor(message, durableRunSummary, freshContextReview) {
27
+ super(message);
28
+ this.durableRunSummary = durableRunSummary;
29
+ this.freshContextReview = freshContextReview;
30
+ }
31
+ }
18
32
  export async function runPlanAutoCommand(options) {
19
33
  const targetRoot = resolve(options.targetRoot);
20
34
  const now = options.now ?? new Date();
@@ -40,10 +54,14 @@ export async function runPlanAutoCommand(options) {
40
54
  let promptPath = '';
41
55
  let reportPath = '';
42
56
  let logPath = '';
57
+ let sessionId = '';
58
+ let parentSnapshotPath = '';
43
59
  const childIssues = [];
44
60
  let pullRequest;
45
61
  let store;
46
62
  const executionResults = [];
63
+ const events = new RunnerLifecycleEventStore(targetRoot, config);
64
+ const buildBase = () => baseResult(options.issueNumber, branchName, worktreePath, promptPath, reportPath, logPath, childIssues, sessionId, parentSnapshotPath);
47
65
  await claimIssue(issueAdapter, config, options.issueNumber, 'plan-parent', now);
48
66
  try {
49
67
  await git.createIssueWorktree({
@@ -52,7 +70,7 @@ export async function runPlanAutoCommand(options) {
52
70
  branchName,
53
71
  baseBranch: config.branches.base,
54
72
  });
55
- const sessionId = `plan-${options.issueNumber}-${formatSessionTimestamp(now)}`;
73
+ sessionId = `plan-${options.issueNumber}-${formatSessionTimestamp(now)}`;
56
74
  promptPath = sessionPromptPath({ targetRoot, config, issueNumber: options.issueNumber, sessionId });
57
75
  reportPath = sessionReportPath({ targetRoot, config, issueNumber: options.issueNumber, sessionId });
58
76
  logPath = sessionLogPath({ targetRoot, config, issueNumber: options.issueNumber, sessionId });
@@ -75,6 +93,33 @@ export async function runPlanAutoCommand(options) {
75
93
  sessionId,
76
94
  promptText,
77
95
  });
96
+ const snapshot = await writeContextSnapshot({
97
+ targetRoot,
98
+ config,
99
+ issue: parentIssue,
100
+ mode: 'plan-parent',
101
+ phase: 'plan-parent',
102
+ decision: 'parent planning session',
103
+ sessionId,
104
+ worktreePath,
105
+ promptPath,
106
+ reportPath,
107
+ logPath,
108
+ branchName,
109
+ baseBranch: config.branches.base,
110
+ createdAt: now,
111
+ });
112
+ parentSnapshotPath = snapshot.path;
113
+ await safeAppendEvent(events, {
114
+ timestamp: now,
115
+ issueNumber: options.issueNumber,
116
+ mode: 'plan-parent',
117
+ sessionId,
118
+ phase: 'plan-parent',
119
+ status: 'started',
120
+ summary: 'Starting parent planning Codex session.',
121
+ artifacts: sessionArtifacts(promptPath, reportPath, logPath, snapshot.path),
122
+ });
78
123
  store = new RunnerStateStore(targetRoot, config);
79
124
  await store.upsertRun({
80
125
  issueNumber: options.issueNumber,
@@ -103,6 +148,7 @@ export async function runPlanAutoCommand(options) {
103
148
  issueNumber: options.issueNumber,
104
149
  sessionId,
105
150
  branchName,
151
+ phase: 'plan-parent',
106
152
  logPath,
107
153
  });
108
154
  }
@@ -110,20 +156,20 @@ export async function runPlanAutoCommand(options) {
110
156
  await cleanupSessionCodexHome(isolatedHomePath);
111
157
  }
112
158
  const afterHead = await git.getHead(worktreePath);
113
- const base = baseResult(options.issueNumber, branchName, worktreePath, promptPath, reportPath, logPath, childIssues);
159
+ const base = buildBase();
114
160
  if (beforeHead !== afterHead) {
115
- return finishPlanBlocked(issueAdapter, config, base, ['Planning session changed git HEAD; planning must not commit.'], []);
161
+ return finishPlanBlocked(issueAdapter, config, events, base, ['Planning session changed git HEAD; planning must not commit.'], []);
116
162
  }
117
163
  const changedFiles = await git.listChangedFiles(worktreePath);
118
164
  if (changedFiles.length > 0) {
119
- return finishPlanBlocked(issueAdapter, config, base, ['Planning session changed repository files; planning must return structured output only.'], []);
165
+ return finishPlanBlocked(issueAdapter, config, events, base, ['Planning session changed repository files; planning must return structured output only.'], []);
120
166
  }
121
167
  if (codexResult.exitCode !== 0) {
122
- return finishPlanBlocked(issueAdapter, config, base, [`Codex exited with code ${codexResult.exitCode}: ${codexResult.stderr || codexResult.stdout}`], []);
168
+ return finishPlanBlocked(issueAdapter, config, events, base, [`Codex exited with code ${codexResult.exitCode}: ${codexResult.stderr || codexResult.stdout}`], []);
123
169
  }
124
170
  const reportRead = await readPlanReport(reportPath);
125
171
  if (reportRead.kind === 'missing') {
126
- return finishPlanBlocked(issueAdapter, config, base, ['Codex did not write CODEX_ORCHESTRATOR_REPORT_FILE; runner cannot prove planning graph.'], []);
172
+ return finishPlanBlocked(issueAdapter, config, events, base, ['Codex did not write CODEX_ORCHESTRATOR_REPORT_FILE; runner cannot prove planning graph.'], []);
127
173
  }
128
174
  const report = reportRead.report;
129
175
  await issueAdapter.updateIssue(options.issueNumber, {
@@ -137,7 +183,7 @@ export async function runPlanAutoCommand(options) {
137
183
  const childNodes = await readAutonomousChildNodes(issueAdapter, config, options.issueNumber, childIssues);
138
184
  const batches = collectExecutableChildBatches(childNodes, config);
139
185
  if (!batches.ok) {
140
- return finishPlanBlocked(issueAdapter, config, base, batches.errors, childIssues);
186
+ return finishPlanBlocked(issueAdapter, config, events, base, batches.errors, childIssues);
141
187
  }
142
188
  for (const batch of batches.batches) {
143
189
  const settled = await Promise.allSettled(batch.map((child) => executeChild({
@@ -153,6 +199,7 @@ export async function runPlanAutoCommand(options) {
153
199
  shellExecutor,
154
200
  issueTreeWorkflowPrompt,
155
201
  now,
202
+ events,
156
203
  })));
157
204
  const failures = [];
158
205
  for (const [index, result] of settled.entries()) {
@@ -162,13 +209,15 @@ export async function runPlanAutoCommand(options) {
162
209
  failures.push({
163
210
  child: batch[index],
164
211
  message: result.reason instanceof Error ? result.reason.message : 'child execution failed',
212
+ durableRunSummary: result.reason instanceof ChildExecutionBlockedError ? result.reason.durableRunSummary : undefined,
213
+ freshContextReview: result.reason instanceof ChildExecutionBlockedError ? result.reason.freshContextReview : undefined,
165
214
  });
166
215
  }
167
216
  if (failures.length > 0) {
168
217
  const successful = settled.flatMap((result) => result.status === 'fulfilled' ? [result.value] : []);
169
218
  await blockFailedBatch(issueAdapter, config, options.issueNumber, failures, successful);
170
219
  await blockCompletedChildren(issueAdapter, config, store, options.issueNumber, executionResults, 'A later child batch failed before parent publication.', worktreePath);
171
- return finishPlanBlocked(issueAdapter, config, baseResult(options.issueNumber, branchName, worktreePath, promptPath, reportPath, logPath, childIssues), [
220
+ return finishPlanBlocked(issueAdapter, config, events, buildBase(), [
172
221
  'Child batch failed before merge; no child from the failed batch was merged, pushed, or published.',
173
222
  ...failures.map((failure) => failure.child ? `#${failure.child.issue.number}: ${failure.message}` : failure.message),
174
223
  ], childIssues);
@@ -187,7 +236,7 @@ export async function runPlanAutoCommand(options) {
187
236
  if (error instanceof GitMergeConflictError) {
188
237
  await handleMergeConflict(git, issueAdapter, config, options.issueNumber, error, childResult, orderedBatchResults);
189
238
  await blockCompletedChildren(issueAdapter, config, store, options.issueNumber, executionResults, `A later merge conflict stopped parent publication before ${branchName} was pushed.`, worktreePath);
190
- return finishPlanBlocked(issueAdapter, config, baseResult(options.issueNumber, branchName, worktreePath, promptPath, reportPath, logPath, childIssues), [
239
+ return finishPlanBlocked(issueAdapter, config, events, buildBase(), [
191
240
  `Merge conflict while merging #${childResult.child.issue.number} from ${childResult.branchName}.`,
192
241
  error.stderr || error.stdout,
193
242
  ], childIssues);
@@ -204,7 +253,7 @@ export async function runPlanAutoCommand(options) {
204
253
  const failedFinalValidation = finalValidation.filter((line) => line.status === 'failed');
205
254
  if (failedFinalValidation.length > 0) {
206
255
  await blockCompletedChildren(issueAdapter, config, store, options.issueNumber, executionResults, 'Parent integration configured checks failed before publication.', worktreePath);
207
- return finishPlanBlocked(issueAdapter, config, baseResult(options.issueNumber, branchName, worktreePath, promptPath, reportPath, logPath, childIssues), [
256
+ return finishPlanBlocked(issueAdapter, config, events, buildBase(), [
208
257
  'One or more configured checks failed.',
209
258
  ...failedFinalValidation.map((line) => `${line.command}: ${line.status} - ${line.summary}`),
210
259
  ], childIssues);
@@ -233,8 +282,20 @@ export async function runPlanAutoCommand(options) {
233
282
  await issueAdapter.addLabels(options.issueNumber, [config.github.labels.review.name]);
234
283
  await issueAdapter.postComment(options.issueNumber, reportComment);
235
284
  await store.removeRun(options.issueNumber);
285
+ await safeAppendEvent(events, {
286
+ issueNumber: options.issueNumber,
287
+ mode: 'plan-parent',
288
+ sessionId,
289
+ phase: 'plan-parent',
290
+ status: 'completed',
291
+ summary: 'Issue-tree execution completed draft PR handoff.',
292
+ artifacts: [
293
+ ...sessionArtifacts(promptPath, reportPath, logPath, parentSnapshotPath),
294
+ { kind: 'pr', url: pullRequest.url, description: 'Draft pull request' },
295
+ ],
296
+ });
236
297
  return {
237
- ...baseResult(options.issueNumber, branchName, worktreePath, promptPath, reportPath, logPath, childIssues),
298
+ ...buildBase(),
238
299
  status: 'review-ready',
239
300
  pullRequest,
240
301
  reportComment,
@@ -248,7 +309,7 @@ export async function runPlanAutoCommand(options) {
248
309
  if (store && executionResults.length > 0) {
249
310
  await blockCompletedChildren(issueAdapter, config, store, options.issueNumber, executionResults, `Parent publication failed before review handoff: ${message}`, worktreePath);
250
311
  }
251
- return finishPlanBlocked(issueAdapter, config, baseResult(options.issueNumber, branchName, worktreePath, promptPath, reportPath, logPath, childIssues), [message], childIssues);
312
+ return finishPlanBlocked(issueAdapter, config, events, buildBase(), [message], childIssues);
252
313
  }
253
314
  }
254
315
  async function readPlanReport(reportPath) {
@@ -354,39 +415,97 @@ async function executeChild(input) {
354
415
  createdAt: input.now.toISOString(),
355
416
  updatedAt: input.now.toISOString(),
356
417
  });
357
- const beforeHead = await input.git.getHead(worktreePath);
358
- let codexResult;
359
- try {
360
- codexResult = await input.codexAdapter.run({
418
+ let publishability;
419
+ let rework;
420
+ for (let attempt = 0; attempt <= input.config.loopPolicy.rework.maxAttempts; attempt++) {
421
+ const attemptNow = new Date(input.now.getTime() + attempt);
422
+ const attemptPromptText = rework
423
+ ? `${promptText}\n\n## Rework Request\nThis is an automatic rework attempt (#${rework.attempt}). Continue from the current worktree state; do not start over.\nThe previous attempt was blocked for these reasons:\n${rework.blockedReasons.map((reason) => `- ${reason}`).join('\n')}\nAddress the blockers, then produce a fresh completion report JSON for the runner.`
424
+ : promptText;
425
+ await writeDurablePrompt({
361
426
  targetRoot: input.targetRoot,
362
427
  config: input.config,
428
+ issueNumber: childIssueNumber,
429
+ sessionId,
430
+ promptText: attemptPromptText,
431
+ });
432
+ const snapshot = await writeContextSnapshot({
433
+ targetRoot: input.targetRoot,
434
+ config: input.config,
435
+ issue: input.child.issue,
436
+ mode: 'tree-child',
437
+ phase: 'tree-child',
438
+ decision: rework
439
+ ? `tree-child rework attempt #${rework.attempt} under parent #${input.parentIssue.number}`
440
+ : `child issue execution under parent #${input.parentIssue.number}`,
441
+ sessionId,
363
442
  worktreePath,
364
443
  promptPath,
365
- promptText,
366
444
  reportPath,
367
- isolatedHomePath,
445
+ logPath,
446
+ branchName,
447
+ baseBranch: input.parentBranchName,
448
+ parentIssueNumber: input.parentIssue.number,
449
+ blockedBy: [],
450
+ createdAt: attemptNow,
451
+ });
452
+ await safeAppendEvent(input.events, {
453
+ timestamp: attemptNow,
368
454
  issueNumber: childIssueNumber,
455
+ parentIssueNumber: input.parentIssue.number,
456
+ mode: 'tree-child',
369
457
  sessionId,
370
- branchName,
371
- logPath,
458
+ phase: 'tree-child',
459
+ status: 'started',
460
+ summary: rework ? `Starting tree-child rework attempt #${rework.attempt}.` : 'Starting tree-child Codex session.',
461
+ artifacts: sessionArtifacts(promptPath, reportPath, logPath, snapshot.path),
462
+ });
463
+ const beforeHead = await input.git.getHead(worktreePath);
464
+ let codexResult;
465
+ try {
466
+ codexResult = await input.codexAdapter.run({
467
+ targetRoot: input.targetRoot,
468
+ config: input.config,
469
+ worktreePath,
470
+ promptPath,
471
+ promptText: attemptPromptText,
472
+ reportPath,
473
+ isolatedHomePath,
474
+ issueNumber: childIssueNumber,
475
+ sessionId,
476
+ branchName,
477
+ phase: 'tree-child',
478
+ logPath,
479
+ });
480
+ }
481
+ finally {
482
+ await cleanupSessionCodexHome(isolatedHomePath);
483
+ }
484
+ const afterHead = await input.git.getHead(worktreePath);
485
+ publishability = await runImplementationPublishabilityCheck({
486
+ config: input.config,
487
+ issue: input.child.issue,
488
+ worktreePath,
489
+ reportPath,
490
+ beforeHead,
491
+ afterHead,
492
+ codexResult,
493
+ git: input.git,
494
+ shellExecutor: input.shellExecutor,
495
+ commitMessage: `Codex: implement issue #${childIssueNumber} for parent #${input.parentIssue.number}`,
372
496
  });
497
+ if (publishability.status === 'blocked'
498
+ && attempt < input.config.loopPolicy.rework.maxAttempts
499
+ && shouldRequestImplementationRework(publishability.reasons, input.config)) {
500
+ rework = { attempt: attempt + 1, blockedReasons: publishability.reasons };
501
+ await mkdir(isolatedHomePath, { recursive: true });
502
+ continue;
503
+ }
504
+ break;
373
505
  }
374
- finally {
375
- await cleanupSessionCodexHome(isolatedHomePath);
506
+ if (!publishability) {
507
+ throw new Error('Runner internal error: missing child publishability result');
376
508
  }
377
- const afterHead = await input.git.getHead(worktreePath);
378
- const publishability = await runImplementationPublishabilityCheck({
379
- config: input.config,
380
- issue: input.child.issue,
381
- worktreePath,
382
- reportPath,
383
- beforeHead,
384
- afterHead,
385
- codexResult,
386
- git: input.git,
387
- shellExecutor: input.shellExecutor,
388
- commitMessage: `Codex: implement issue #${childIssueNumber} for parent #${input.parentIssue.number}`,
389
- });
390
509
  if (publishability.status === 'promotion-requested') {
391
510
  const promotion = publishability.report.promotion;
392
511
  throw new Error([
@@ -396,8 +515,68 @@ async function executeChild(input) {
396
515
  ].filter(Boolean).join(' '));
397
516
  }
398
517
  if (publishability.status === 'blocked') {
399
- throw new Error(publishability.reasons.join('; '));
518
+ const durableRunSummary = await writeDurableRunSummary({
519
+ targetRoot: input.targetRoot,
520
+ config: input.config,
521
+ issueNumber: childIssueNumber,
522
+ sessionId,
523
+ outcome: 'blocked',
524
+ changedFiles: publishability.changedFiles,
525
+ validation: [],
526
+ blockers: publishability.reasons,
527
+ skippedChecks: publishability.skippedChecks,
528
+ residualRisks: publishability.residualRisks,
529
+ nextAction: 'Parent issue-tree execution is blocked until this child is resolved.',
530
+ logPath,
531
+ reportPath,
532
+ });
533
+ throw new ChildExecutionBlockedError(publishability.reasons.join('; '), durableRunSummary);
400
534
  }
535
+ const freshContextReview = await runFreshContextReviewIfEnabled({
536
+ targetRoot: input.targetRoot,
537
+ config: input.config,
538
+ issue: input.child.issue,
539
+ codexAdapter: input.codexAdapter,
540
+ worktreePath,
541
+ isolatedSessionId: `${sessionId}-fresh-review`,
542
+ branchName,
543
+ publishability,
544
+ });
545
+ if (freshContextReview?.status === 'blocked') {
546
+ const durableRunSummary = await writeDurableRunSummary({
547
+ targetRoot: input.targetRoot,
548
+ config: input.config,
549
+ issueNumber: childIssueNumber,
550
+ sessionId,
551
+ outcome: 'blocked',
552
+ changedFiles: publishability.changedFiles,
553
+ validation: publishability.validation,
554
+ blockers: ['Fresh-Context Review blocked publication', ...freshContextReview.findings],
555
+ skippedChecks: publishability.skippedChecks,
556
+ residualRisks: [...publishability.residualRisks, ...freshContextReview.residualRisks],
557
+ suggestionEvidence: freshContextReview.findings,
558
+ nextAction: 'Parent issue-tree execution is blocked until this child review finding is resolved.',
559
+ logPath,
560
+ reportPath,
561
+ });
562
+ throw new ChildExecutionBlockedError(['Fresh-Context Review blocked publication', ...freshContextReview.findings].join('; '), durableRunSummary, freshContextReview);
563
+ }
564
+ const durableRunSummary = await writeDurableRunSummary({
565
+ targetRoot: input.targetRoot,
566
+ config: input.config,
567
+ issueNumber: childIssueNumber,
568
+ sessionId,
569
+ outcome: 'review-ready',
570
+ changedFiles: publishability.changedFiles,
571
+ validation: publishability.validation,
572
+ blockers: [],
573
+ skippedChecks: publishability.skippedChecks,
574
+ residualRisks: [...publishability.residualRisks, ...(freshContextReview?.residualRisks ?? [])],
575
+ suggestionEvidence: freshContextReview?.findings,
576
+ nextAction: 'Parent issue-tree integration should merge this child branch.',
577
+ logPath,
578
+ reportPath,
579
+ });
401
580
  return {
402
581
  child: input.child,
403
582
  branchName,
@@ -410,7 +589,9 @@ async function executeChild(input) {
410
589
  artifacts: publishability.artifacts,
411
590
  commits: publishability.commits,
412
591
  skippedChecks: publishability.skippedChecks,
413
- residualRisks: publishability.residualRisks,
592
+ residualRisks: [...publishability.residualRisks, ...(freshContextReview?.residualRisks ?? [])],
593
+ freshContextReview,
594
+ durableRunSummary,
414
595
  };
415
596
  }
416
597
  async function blockFailedBatch(issueAdapter, config, parentIssueNumber, failures, successfulUnmerged) {
@@ -425,6 +606,8 @@ async function blockFailedBatch(issueAdapter, config, parentIssueNumber, failure
425
606
  childIssueNumber: failure.child.issue.number,
426
607
  reasons: [failure.message],
427
608
  details: ['Worktree preserved for maintainer inspection.'],
609
+ freshContextReview: failure.freshContextReview,
610
+ durableRunSummary: failure.durableRunSummary,
428
611
  }));
429
612
  }
430
613
  for (const result of successfulUnmerged) {
@@ -436,6 +619,7 @@ async function blockFailedBatch(issueAdapter, config, parentIssueNumber, failure
436
619
  reasons: ['A sibling child failed before the batch merge; this child branch was not merged.'],
437
620
  branchName: result.branchName,
438
621
  worktreePath: result.worktreePath,
622
+ durableRunSummary: result.durableRunSummary,
439
623
  }));
440
624
  }
441
625
  }
@@ -469,6 +653,7 @@ async function handleMergeConflict(git, issueAdapter, config, parentIssueNumber,
469
653
  branchName: batchResult.branchName,
470
654
  })),
471
655
  gitOutput: error.stderr || error.stdout || 'no git output',
656
+ durableRunSummary: result.durableRunSummary,
472
657
  }));
473
658
  }
474
659
  }
@@ -492,11 +677,12 @@ async function blockCompletedChildren(issueAdapter, config, store, parentIssueNu
492
677
  `- Merged child branch was not published: ${result.branchName}`,
493
678
  `- Parent worktree preserved: ${parentWorktreePath}`,
494
679
  ],
680
+ durableRunSummary: result.durableRunSummary,
495
681
  }));
496
682
  await store.removeRun(result.child.issue.number);
497
683
  }
498
684
  }
499
- async function finishPlanBlocked(issueAdapter, config, result, reasons, mutatedChildren) {
685
+ async function finishPlanBlocked(issueAdapter, config, events, result, reasons, mutatedChildren) {
500
686
  const reportComment = buildParentBlockedReport({
501
687
  parentIssueNumber: result.parentIssueNumber,
502
688
  reasons,
@@ -506,6 +692,15 @@ async function finishPlanBlocked(issueAdapter, config, result, reasons, mutatedC
506
692
  await issueAdapter.removeLabels(result.parentIssueNumber, [config.github.labels.running.name]);
507
693
  await issueAdapter.addLabels(result.parentIssueNumber, [config.github.labels.blocked.name]);
508
694
  await issueAdapter.postComment(result.parentIssueNumber, reportComment);
695
+ await safeAppendEvent(events, {
696
+ issueNumber: result.parentIssueNumber,
697
+ mode: 'plan-parent',
698
+ sessionId: result.sessionId,
699
+ phase: 'plan-parent',
700
+ status: 'blocked',
701
+ summary: `Issue-tree execution blocked: ${reasons[0] ?? 'blocked'}`,
702
+ artifacts: sessionArtifacts(result.promptPath, result.reportPath, result.logPath, result.snapshotPath),
703
+ });
509
704
  return { ...result, status: 'blocked', reportComment };
510
705
  }
511
706
  function dependencyIssuesFor(child, allChildren) {
@@ -518,7 +713,24 @@ function dependencyIssuesFor(child, allChildren) {
518
713
  function renderParentTemplate(template, parentIssueNumber) {
519
714
  return template.replaceAll('${parentIssueNumber}', String(parentIssueNumber));
520
715
  }
521
- function baseResult(parentIssueNumber, branchName, worktreePath, promptPath, reportPath, logPath, childIssues) {
522
- return { parentIssueNumber, branchName, worktreePath, promptPath, reportPath, logPath, childIssues };
716
+ function sessionArtifacts(promptPath, reportPath, logPath, snapshotPath) {
717
+ const artifacts = [
718
+ snapshotPath ? { kind: 'snapshot', path: snapshotPath, description: 'Context snapshot' } : undefined,
719
+ promptPath ? { kind: 'prompt', path: promptPath, description: 'Session prompt path' } : undefined,
720
+ reportPath ? { kind: 'report', path: reportPath, description: 'Session report path' } : undefined,
721
+ logPath ? { kind: 'log', path: logPath, description: 'Session log path' } : undefined,
722
+ ];
723
+ return artifacts.filter((artifact) => Boolean(artifact));
724
+ }
725
+ async function safeAppendEvent(store, input) {
726
+ try {
727
+ await store.append(input);
728
+ }
729
+ catch {
730
+ // Diagnostics evidence must not alter the runner publication outcome.
731
+ }
732
+ }
733
+ function baseResult(parentIssueNumber, branchName, worktreePath, promptPath, reportPath, logPath, childIssues, sessionId, snapshotPath) {
734
+ return { parentIssueNumber, branchName, worktreePath, promptPath, reportPath, logPath, childIssues, sessionId, snapshotPath };
523
735
  }
524
736
  //# sourceMappingURL=plan-auto-command.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plan-auto-command.js","sourceRoot":"","sources":["../../../src/runner/plan-auto-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plan-auto-command.js","sourceRoot":"","sources":["../../../src/runner/plan-auto-command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { CodexOrchestratorConfig } from '../config/schema.js';
2
+ export declare function shouldRequestImplementationRework(reasons: string[], config: CodexOrchestratorConfig): boolean;
3
+ //# sourceMappingURL=rework-policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rework-policy.d.ts","sourceRoot":"","sources":["../../../src/runner/rework-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAgBnE,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAS7G"}
@@ -0,0 +1,20 @@
1
+ const nonRetryableBlockerPatterns = [
2
+ /matches denied pattern/iu,
3
+ /runner-owned publication was violated/iu,
4
+ /destructive-db-or-cache|production-deploy-or-release/iu,
5
+ ];
6
+ const retryableBlockerPatterns = [
7
+ ['missing-quality-gate-evidence', /Quality gate requires/iu],
8
+ ['failed-configured-checks', /One or more configured checks failed/iu],
9
+ ['invalid-completion-report', /Invalid scoped completion report/iu],
10
+ ['missing-completion-report', /Codex did not write CODEX_ORCHESTRATOR_REPORT_FILE/iu],
11
+ ['no-changed-files', /Codex completed without file changes/iu],
12
+ ];
13
+ export function shouldRequestImplementationRework(reasons, config) {
14
+ if (reasons.some((reason) => nonRetryableBlockerPatterns.some((pattern) => pattern.test(reason)))) {
15
+ return false;
16
+ }
17
+ const retryable = new Set(config.loopPolicy.rework.retryableBlockers);
18
+ return reasons.some((reason) => retryableBlockerPatterns.some(([blocker, pattern]) => retryable.has(blocker) && pattern.test(reason)));
19
+ }
20
+ //# sourceMappingURL=rework-policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rework-policy.js","sourceRoot":"","sources":["../../../src/runner/rework-policy.ts"],"names":[],"mappings":"AAEA,MAAM,2BAA2B,GAAG;IAClC,0BAA0B;IAC1B,yCAAyC;IACzC,wDAAwD;CAChD,CAAC;AAEX,MAAM,wBAAwB,GAAG;IAC/B,CAAC,+BAA+B,EAAE,yBAAyB,CAAC;IAC5D,CAAC,0BAA0B,EAAE,wCAAwC,CAAC;IACtE,CAAC,2BAA2B,EAAE,oCAAoC,CAAC;IACnE,CAAC,2BAA2B,EAAE,sDAAsD,CAAC;IACrF,CAAC,kBAAkB,EAAE,wCAAwC,CAAC;CACtD,CAAC;AAEX,MAAM,UAAU,iCAAiC,CAAC,OAAiB,EAAE,MAA+B;IAClG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QAClG,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;IACtE,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAC3D,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CACvE,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"scoped-auto-command.d.ts","sourceRoot":"","sources":["../../../src/runner/scoped-auto-command.ts"],"names":[],"mappings":"AAGA,OAAO,EAAuB,KAAK,oBAAoB,EAAE,KAAK,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAIzH,OAAO,KAAK,EAAe,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,kBAAkB,EAAwB,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAA+B,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAa/F,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,8BAA8B,CAAC;AAWtC,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IAC9C,GAAG,CAAC,EAAE,kBAAkB,CAAC;IACzB,YAAY,CAAC,EAAE;QAAE,GAAG,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAA;KAAE,CAAC;IACpF,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,kBAAkB,CAAC,EAAE,2BAA2B,CAAC;IACjD,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,GAAG,CAAC,EAAE,IAAI,CAAC;CACZ;AAED,MAAM,WAAW,uBAAuB;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,MAAM,EAAE,cAAc,GAAG,SAAS,GAAG,qBAAqB,CAAC;IAC3D,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAwN9G"}
1
+ {"version":3,"file":"scoped-auto-command.d.ts","sourceRoot":"","sources":["../../../src/runner/scoped-auto-command.ts"],"names":[],"mappings":"AAGA,OAAO,EAAuB,KAAK,oBAAoB,EAAE,KAAK,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAIzH,OAAO,KAAK,EAAe,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,kBAAkB,EAAwB,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAA+B,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAiB/F,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,8BAA8B,CAAC;AAatC,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IAC9C,GAAG,CAAC,EAAE,kBAAkB,CAAC;IACzB,YAAY,CAAC,EAAE;QAAE,GAAG,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAA;KAAE,CAAC;IACpF,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,kBAAkB,CAAC,EAAE,2BAA2B,CAAC;IACjD,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,GAAG,CAAC,EAAE,IAAI,CAAC;CACZ;AAED,MAAM,WAAW,uBAAuB;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,MAAM,EAAE,cAAc,GAAG,SAAS,GAAG,qBAAqB,CAAC;IAC3D,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CA+a9G"}