codex-orchestrator 0.1.36 → 0.1.39
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.
- package/CHANGELOG.md +34 -0
- package/dist/src/codex/command-adapter.d.ts +1 -0
- package/dist/src/codex/command-adapter.d.ts.map +1 -1
- package/dist/src/codex/command-adapter.js +61 -1
- package/dist/src/codex/command-adapter.js.map +1 -1
- package/dist/src/config/schema.d.ts +24 -1
- package/dist/src/config/schema.d.ts.map +1 -1
- package/dist/src/config/schema.js +55 -0
- package/dist/src/config/schema.js.map +1 -1
- package/dist/src/git/worktree.d.ts.map +1 -1
- package/dist/src/git/worktree.js +0 -1
- package/dist/src/git/worktree.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/review-handoff.d.ts +3 -0
- package/dist/src/review-handoff.d.ts.map +1 -0
- package/dist/src/review-handoff.js +8 -0
- package/dist/src/review-handoff.js.map +1 -0
- package/dist/src/runner/acceptance-proof-runner.d.ts +2 -15
- package/dist/src/runner/acceptance-proof-runner.d.ts.map +1 -1
- package/dist/src/runner/acceptance-proof-runner.js +40 -72
- package/dist/src/runner/acceptance-proof-runner.js.map +1 -1
- package/dist/src/runner/acceptance-proof.d.ts +60 -0
- package/dist/src/runner/acceptance-proof.d.ts.map +1 -1
- package/dist/src/runner/acceptance-proof.js +113 -0
- package/dist/src/runner/acceptance-proof.js.map +1 -1
- package/dist/src/runner/android-visual-proof-command.d.ts.map +1 -1
- package/dist/src/runner/android-visual-proof-command.js +2 -8
- package/dist/src/runner/android-visual-proof-command.js.map +1 -1
- package/dist/src/runner/auto-visual-proof-command.d.ts.map +1 -1
- package/dist/src/runner/auto-visual-proof-command.js +11 -1
- package/dist/src/runner/auto-visual-proof-command.js.map +1 -1
- package/dist/src/runner/command-utils.d.ts.map +1 -1
- package/dist/src/runner/command-utils.js +19 -10
- package/dist/src/runner/command-utils.js.map +1 -1
- package/dist/src/runner/completion-report.d.ts +21 -0
- package/dist/src/runner/completion-report.d.ts.map +1 -1
- package/dist/src/runner/completion-report.js +46 -0
- package/dist/src/runner/completion-report.js.map +1 -1
- package/dist/src/runner/daemon-command.js +2 -35
- package/dist/src/runner/daemon-command.js.map +1 -1
- package/dist/src/runner/flutter-sdk-discovery.d.ts +5 -0
- package/dist/src/runner/flutter-sdk-discovery.d.ts.map +1 -0
- package/dist/src/runner/flutter-sdk-discovery.js +103 -0
- package/dist/src/runner/flutter-sdk-discovery.js.map +1 -0
- package/dist/src/runner/handoff-evidence.d.ts +12 -1
- package/dist/src/runner/handoff-evidence.d.ts.map +1 -1
- package/dist/src/runner/handoff-evidence.js +93 -1
- package/dist/src/runner/handoff-evidence.js.map +1 -1
- package/dist/src/runner/ios-visual-proof-command.d.ts.map +1 -1
- package/dist/src/runner/ios-visual-proof-command.js +2 -4
- package/dist/src/runner/ios-visual-proof-command.js.map +1 -1
- package/dist/src/runner/issue-tree.d.ts.map +1 -1
- package/dist/src/runner/issue-tree.js +28 -2
- package/dist/src/runner/issue-tree.js.map +1 -1
- package/dist/src/runner/local-execution-session.d.ts.map +1 -1
- package/dist/src/runner/local-execution-session.js +80 -7
- package/dist/src/runner/local-execution-session.js.map +1 -1
- package/dist/src/runner/plan-auto-command.d.ts +1 -0
- package/dist/src/runner/plan-auto-command.d.ts.map +1 -1
- package/dist/src/runner/plan-auto-command.js +83 -32
- package/dist/src/runner/plan-auto-command.js.map +1 -1
- package/dist/src/runner/prompt.d.ts.map +1 -1
- package/dist/src/runner/prompt.js +24 -5
- package/dist/src/runner/prompt.js.map +1 -1
- package/dist/src/runner/proof-strategy.d.ts +12 -0
- package/dist/src/runner/proof-strategy.d.ts.map +1 -0
- package/dist/src/runner/proof-strategy.js +19 -0
- package/dist/src/runner/proof-strategy.js.map +1 -0
- package/dist/src/runner/review-gate-policy.d.ts +1 -1
- package/dist/src/runner/review-gate-policy.d.ts.map +1 -1
- package/dist/src/runner/review-gate-policy.js +75 -3
- package/dist/src/runner/review-gate-policy.js.map +1 -1
- package/dist/src/runner/review-gates.d.ts +5 -0
- package/dist/src/runner/review-gates.d.ts.map +1 -1
- package/dist/src/runner/review-gates.js +113 -1
- package/dist/src/runner/review-gates.js.map +1 -1
- package/dist/src/runner/rework-policy.d.ts +1 -0
- package/dist/src/runner/rework-policy.d.ts.map +1 -1
- package/dist/src/runner/rework-policy.js +7 -1
- package/dist/src/runner/rework-policy.js.map +1 -1
- package/dist/src/runner/runner-handoff-decision.d.ts +47 -0
- package/dist/src/runner/runner-handoff-decision.d.ts.map +1 -0
- package/dist/src/runner/runner-handoff-decision.js +66 -0
- package/dist/src/runner/runner-handoff-decision.js.map +1 -0
- package/dist/src/runner/scope-isolation-policy.d.ts +17 -0
- package/dist/src/runner/scope-isolation-policy.d.ts.map +1 -0
- package/dist/src/runner/scope-isolation-policy.js +82 -0
- package/dist/src/runner/scope-isolation-policy.js.map +1 -0
- package/dist/src/runner/scoped-auto-command.d.ts +10 -1
- package/dist/src/runner/scoped-auto-command.d.ts.map +1 -1
- package/dist/src/runner/scoped-auto-command.js +90 -55
- package/dist/src/runner/scoped-auto-command.js.map +1 -1
- package/dist/src/runner/scoped-recovery.d.ts.map +1 -1
- package/dist/src/runner/scoped-recovery.js +121 -23
- package/dist/src/runner/scoped-recovery.js.map +1 -1
- package/dist/src/runner/visual-proof-runner.d.ts +4 -0
- package/dist/src/runner/visual-proof-runner.d.ts.map +1 -1
- package/dist/src/runner/visual-proof-runner.js +85 -39
- package/dist/src/runner/visual-proof-runner.js.map +1 -1
- package/dist/src/setup/project-config.d.ts +3 -1
- package/dist/src/setup/project-config.d.ts.map +1 -1
- package/dist/src/setup/project-config.js +71 -14
- package/dist/src/setup/project-config.js.map +1 -1
- package/docs/deep-dive.md +43 -4
- package/package.json +1 -1
- package/prompts/workflows/breakdown-review.md +2 -1
- package/prompts/workflows/issue-breakdown.md +31 -0
- package/prompts/workflows/issue-tree-orchestration.md +21 -15
- package/prompts/workflows/prd.md +11 -0
- package/prompts/workflows/scoped-implementation.md +22 -1
- package/prompts/workflows/triage.md +11 -0
|
@@ -19,9 +19,20 @@ import { RunnerStateStore } from './local-state.js';
|
|
|
19
19
|
import { RunnerLifecycleEventStore } from './lifecycle-events.js';
|
|
20
20
|
import { buildScopedImplementationPrompt, sessionPromptPath, sessionReportPath, writeDurablePrompt, } from './prompt.js';
|
|
21
21
|
import { maxReworkAttemptsForReasons, shouldRequestImplementationRework } from './rework-policy.js';
|
|
22
|
+
import { buildBlockedHandoffEvidence, buildPromotionRequestedHandoffEvidence, buildReviewReadyHandoffEvidence, } from './runner-handoff-decision.js';
|
|
22
23
|
import { sessionLogPath } from './run-log.js';
|
|
23
24
|
import { cleanupSessionCodexHome, sessionCodexHomePath } from './session-home.js';
|
|
24
25
|
export async function runScopedAutoCommand(options) {
|
|
26
|
+
return runScopedAutoCommandInternal(options);
|
|
27
|
+
}
|
|
28
|
+
export async function runScopedRecoveryRetry(options) {
|
|
29
|
+
return runScopedAutoCommandInternal(options, {
|
|
30
|
+
issue: options.issue,
|
|
31
|
+
startAttempt: options.startAttempt,
|
|
32
|
+
initialRework: options.initialRework,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
async function runScopedAutoCommandInternal(options, recovery) {
|
|
25
36
|
const targetRoot = resolve(options.targetRoot);
|
|
26
37
|
const now = options.now ?? new Date();
|
|
27
38
|
const config = await readRunnerConfig(targetRoot);
|
|
@@ -31,14 +42,19 @@ export async function runScopedAutoCommand(options) {
|
|
|
31
42
|
const shellExecutor = options.shellExecutor ?? defaultShellCommandExecutor;
|
|
32
43
|
const codexAdapter = options.codexAdapter ?? new CodexCommandAdapter(config);
|
|
33
44
|
const resolvedBase = await resolveBaseBranch({ targetRoot, base: config.branches.base });
|
|
34
|
-
const issue = await issueAdapter.getIssue(options.issueNumber);
|
|
45
|
+
const issue = recovery?.issue ?? await issueAdapter.getIssue(options.issueNumber);
|
|
35
46
|
if (!issue) {
|
|
36
47
|
throw new Error(`Issue #${options.issueNumber} was not found`);
|
|
37
48
|
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
49
|
+
if (issue.number !== options.issueNumber) {
|
|
50
|
+
throw new Error(`Recovery issue #${issue.number} does not match scoped issue #${options.issueNumber}`);
|
|
51
|
+
}
|
|
52
|
+
if (!recovery) {
|
|
53
|
+
const decision = discoverIssueWork([issue], config)[0];
|
|
54
|
+
if (!decision || decision.kind !== 'eligible' || decision.mode !== 'scoped-issue') {
|
|
55
|
+
const reason = decision?.kind === 'skipped' ? decision.reason : 'not scoped agent:auto';
|
|
56
|
+
throw new Error(`Issue #${options.issueNumber} is not eligible for scoped agent:auto execution: ${reason}`);
|
|
57
|
+
}
|
|
42
58
|
}
|
|
43
59
|
const workflowPath = config.workflows.scopedImplementation.promptPath;
|
|
44
60
|
if (!workflowPath) {
|
|
@@ -62,15 +78,17 @@ export async function runScopedAutoCommand(options) {
|
|
|
62
78
|
let pullRequest;
|
|
63
79
|
const store = new RunnerStateStore(targetRoot, config);
|
|
64
80
|
const events = new RunnerLifecycleEventStore(targetRoot, config);
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
81
|
+
if (!recovery) {
|
|
82
|
+
await claimIssue(issueAdapter, config, options.issueNumber, 'scoped-issue', now);
|
|
83
|
+
await safeAppendEvent(events, {
|
|
84
|
+
timestamp: now,
|
|
85
|
+
issueNumber: options.issueNumber,
|
|
86
|
+
mode: 'scoped-issue',
|
|
87
|
+
phase: 'scoped-issue',
|
|
88
|
+
status: 'started',
|
|
89
|
+
summary: 'Issue claimed for scoped autonomous work.',
|
|
90
|
+
});
|
|
91
|
+
}
|
|
74
92
|
try {
|
|
75
93
|
await git.ensureIssueWorktree({
|
|
76
94
|
targetRoot,
|
|
@@ -81,9 +99,9 @@ export async function runScopedAutoCommand(options) {
|
|
|
81
99
|
allowResume: true,
|
|
82
100
|
});
|
|
83
101
|
const maxReworkAttempts = Math.max(config.loopPolicy.rework.maxAttempts, config.reviewGates.acceptanceProof.maxIterations - 1);
|
|
84
|
-
let rework;
|
|
102
|
+
let rework = recovery?.initialRework;
|
|
85
103
|
let publishability;
|
|
86
|
-
for (let attempt = 0; attempt <= maxReworkAttempts; attempt++) {
|
|
104
|
+
for (let attempt = recovery?.startAttempt ?? 0; attempt <= maxReworkAttempts; attempt++) {
|
|
87
105
|
const attemptNow = attempt === 0 ? now : new Date(now.getTime() + attempt);
|
|
88
106
|
sessionId = `issue-${options.issueNumber}-${formatSessionTimestamp(attemptNow)}`;
|
|
89
107
|
promptPath = sessionPromptPath({ targetRoot, config, issueNumber: options.issueNumber, sessionId });
|
|
@@ -229,18 +247,22 @@ export async function runScopedAutoCommand(options) {
|
|
|
229
247
|
throw new Error('Runner internal error: missing publishability result');
|
|
230
248
|
}
|
|
231
249
|
if (publishability.status === 'promotion-requested') {
|
|
250
|
+
const evidence = buildPromotionRequestedHandoffEvidence({
|
|
251
|
+
publishability,
|
|
252
|
+
nextAction: 'Maintainer should review promotion evidence and decide whether to use parent issue-tree orchestration.',
|
|
253
|
+
});
|
|
232
254
|
const durableRunSummary = await writeDurableRunSummary({
|
|
233
255
|
targetRoot,
|
|
234
256
|
config,
|
|
235
257
|
issueNumber: options.issueNumber,
|
|
236
258
|
sessionId,
|
|
237
|
-
outcome:
|
|
238
|
-
changedFiles:
|
|
239
|
-
validation:
|
|
240
|
-
blockers:
|
|
241
|
-
skippedChecks:
|
|
242
|
-
residualRisks:
|
|
243
|
-
nextAction:
|
|
259
|
+
outcome: evidence.outcome,
|
|
260
|
+
changedFiles: evidence.changedFiles,
|
|
261
|
+
validation: evidence.validation,
|
|
262
|
+
blockers: evidence.blockers,
|
|
263
|
+
skippedChecks: evidence.skippedChecks,
|
|
264
|
+
residualRisks: evidence.residualRisks,
|
|
265
|
+
nextAction: evidence.nextAction,
|
|
244
266
|
logPath,
|
|
245
267
|
reportPath,
|
|
246
268
|
});
|
|
@@ -256,22 +278,26 @@ export async function runScopedAutoCommand(options) {
|
|
|
256
278
|
return finishPromotionRequested(baseResult(options.issueNumber, branchName, worktreePath, promptPath, reportPath, logPath), issueAdapter, config, publishability.report, durableRunSummary);
|
|
257
279
|
}
|
|
258
280
|
if (publishability.status === 'blocked') {
|
|
281
|
+
const evidence = buildBlockedHandoffEvidence({
|
|
282
|
+
publishability,
|
|
283
|
+
nextAction: 'Maintainer input or a corrected agent run is required before draft PR handoff.',
|
|
284
|
+
});
|
|
259
285
|
const durableRunSummary = await writeDurableRunSummary({
|
|
260
286
|
targetRoot,
|
|
261
287
|
config,
|
|
262
288
|
issueNumber: options.issueNumber,
|
|
263
289
|
sessionId,
|
|
264
|
-
outcome:
|
|
265
|
-
changedFiles:
|
|
266
|
-
validation:
|
|
267
|
-
blockers:
|
|
268
|
-
skippedChecks:
|
|
269
|
-
residualRisks:
|
|
270
|
-
suggestionEvidence:
|
|
271
|
-
nextAction:
|
|
290
|
+
outcome: evidence.outcome,
|
|
291
|
+
changedFiles: evidence.changedFiles,
|
|
292
|
+
validation: evidence.validation,
|
|
293
|
+
blockers: evidence.blockers,
|
|
294
|
+
skippedChecks: evidence.skippedChecks,
|
|
295
|
+
residualRisks: evidence.residualRisks,
|
|
296
|
+
suggestionEvidence: evidence.suggestionEvidence,
|
|
297
|
+
nextAction: evidence.nextAction,
|
|
272
298
|
logPath,
|
|
273
299
|
reportPath,
|
|
274
|
-
acceptanceProof:
|
|
300
|
+
acceptanceProof: evidence.acceptanceProof,
|
|
275
301
|
});
|
|
276
302
|
await safeAppendEvent(events, {
|
|
277
303
|
issueNumber: options.issueNumber,
|
|
@@ -282,7 +308,7 @@ export async function runScopedAutoCommand(options) {
|
|
|
282
308
|
summary: 'Scoped implementation blocked before draft PR handoff.',
|
|
283
309
|
artifacts: sessionArtifacts(promptPath, reportPath, logPath, snapshotPath, durableRunSummary?.path),
|
|
284
310
|
});
|
|
285
|
-
return finishBlocked(baseResult(options.issueNumber, branchName, worktreePath, promptPath, reportPath, logPath), issueAdapter, config,
|
|
311
|
+
return finishBlocked(baseResult(options.issueNumber, branchName, worktreePath, promptPath, reportPath, logPath), issueAdapter, config, evidence.blockers, evidence.changedFiles, evidence.skippedChecks, evidence.residualRisks, undefined, durableRunSummary, evidence.acceptanceProof);
|
|
286
312
|
}
|
|
287
313
|
const freshContextReview = await runFreshContextReviewIfEnabled({
|
|
288
314
|
targetRoot,
|
|
@@ -295,22 +321,27 @@ export async function runScopedAutoCommand(options) {
|
|
|
295
321
|
publishability,
|
|
296
322
|
});
|
|
297
323
|
if (freshContextReview?.status === 'blocked') {
|
|
324
|
+
const evidence = buildBlockedHandoffEvidence({
|
|
325
|
+
publishability,
|
|
326
|
+
freshContextReview,
|
|
327
|
+
nextAction: 'Review the Fresh-Context Review blocker before draft PR handoff.',
|
|
328
|
+
});
|
|
298
329
|
const durableRunSummary = await writeDurableRunSummary({
|
|
299
330
|
targetRoot,
|
|
300
331
|
config,
|
|
301
332
|
issueNumber: options.issueNumber,
|
|
302
333
|
sessionId,
|
|
303
|
-
outcome:
|
|
304
|
-
changedFiles:
|
|
305
|
-
validation:
|
|
306
|
-
blockers:
|
|
307
|
-
skippedChecks:
|
|
308
|
-
residualRisks:
|
|
309
|
-
suggestionEvidence:
|
|
310
|
-
nextAction:
|
|
334
|
+
outcome: evidence.outcome,
|
|
335
|
+
changedFiles: evidence.changedFiles,
|
|
336
|
+
validation: evidence.validation,
|
|
337
|
+
blockers: evidence.blockers,
|
|
338
|
+
skippedChecks: evidence.skippedChecks,
|
|
339
|
+
residualRisks: evidence.residualRisks,
|
|
340
|
+
suggestionEvidence: evidence.suggestionEvidence,
|
|
341
|
+
nextAction: evidence.nextAction,
|
|
311
342
|
logPath,
|
|
312
343
|
reportPath,
|
|
313
|
-
acceptanceProof:
|
|
344
|
+
acceptanceProof: evidence.acceptanceProof,
|
|
314
345
|
});
|
|
315
346
|
await safeAppendEvent(events, {
|
|
316
347
|
issueNumber: options.issueNumber,
|
|
@@ -321,27 +352,29 @@ export async function runScopedAutoCommand(options) {
|
|
|
321
352
|
summary: 'Fresh-Context Review blocked scoped publication.',
|
|
322
353
|
artifacts: sessionArtifacts(promptPath, reportPath, logPath, snapshotPath, durableRunSummary?.path),
|
|
323
354
|
});
|
|
324
|
-
return finishBlocked(baseResult(options.issueNumber, branchName, worktreePath, promptPath, reportPath, logPath), issueAdapter, config,
|
|
355
|
+
return finishBlocked(baseResult(options.issueNumber, branchName, worktreePath, promptPath, reportPath, logPath), issueAdapter, config, evidence.blockers, evidence.changedFiles, evidence.skippedChecks, evidence.residualRisks, freshContextReview, durableRunSummary, evidence.acceptanceProof);
|
|
325
356
|
}
|
|
357
|
+
const evidence = buildReviewReadyHandoffEvidence({
|
|
358
|
+
publishability,
|
|
359
|
+
freshContextReview,
|
|
360
|
+
nextAction: 'Review the draft pull request before merge.',
|
|
361
|
+
});
|
|
326
362
|
const durableRunSummary = await writeDurableRunSummary({
|
|
327
363
|
targetRoot,
|
|
328
364
|
config,
|
|
329
365
|
issueNumber: options.issueNumber,
|
|
330
366
|
sessionId,
|
|
331
|
-
outcome:
|
|
332
|
-
changedFiles:
|
|
333
|
-
validation:
|
|
334
|
-
blockers:
|
|
335
|
-
skippedChecks:
|
|
336
|
-
residualRisks:
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
],
|
|
340
|
-
suggestionEvidence: freshContextReview?.findings,
|
|
341
|
-
nextAction: 'Review the draft pull request before merge.',
|
|
367
|
+
outcome: evidence.outcome,
|
|
368
|
+
changedFiles: evidence.changedFiles,
|
|
369
|
+
validation: evidence.validation,
|
|
370
|
+
blockers: evidence.blockers,
|
|
371
|
+
skippedChecks: evidence.skippedChecks,
|
|
372
|
+
residualRisks: evidence.residualRisks,
|
|
373
|
+
suggestionEvidence: evidence.suggestionEvidence,
|
|
374
|
+
nextAction: evidence.nextAction,
|
|
342
375
|
logPath,
|
|
343
376
|
reportPath,
|
|
344
|
-
acceptanceProof:
|
|
377
|
+
acceptanceProof: evidence.acceptanceProof,
|
|
345
378
|
});
|
|
346
379
|
const handoff = await finishScopedReviewReadyHandoff({
|
|
347
380
|
issueNumber: options.issueNumber,
|
|
@@ -489,6 +522,7 @@ export async function finishScopedReviewReadyHandoff(input) {
|
|
|
489
522
|
artifacts: input.publishability.artifacts,
|
|
490
523
|
skippedChecks: input.publishability.skippedChecks,
|
|
491
524
|
residualRisks: input.publishability.residualRisks,
|
|
525
|
+
reviewHandoff: input.publishability.report.reviewHandoff,
|
|
492
526
|
logPath: input.logPath,
|
|
493
527
|
commits: input.publishability.commits,
|
|
494
528
|
freshContextReview: input.freshContextReview,
|
|
@@ -511,6 +545,7 @@ export async function finishScopedReviewReadyHandoff(input) {
|
|
|
511
545
|
artifacts: input.publishability.artifacts,
|
|
512
546
|
skippedChecks: input.publishability.skippedChecks,
|
|
513
547
|
residualRisks: input.publishability.residualRisks,
|
|
548
|
+
reviewHandoff: input.publishability.report.reviewHandoff,
|
|
514
549
|
logPath: input.logPath,
|
|
515
550
|
commits: input.publishability.commits,
|
|
516
551
|
freshContextReview: input.freshContextReview,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scoped-auto-command.js","sourceRoot":"","sources":["../../../src/runner/scoped-auto-command.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scoped-auto-command.js","sourceRoot":"","sources":["../../../src/runner/scoped-auto-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scoped-recovery.d.ts","sourceRoot":"","sources":["../../../src/runner/scoped-recovery.ts"],"names":[],"mappings":"AAIA,OAAO,EAAuB,KAAK,oBAAoB,EAAE,KAAK,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACzH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAGnE,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,KAAK,EAAqB,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAE9F,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAA+B,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAK/F,OAAO,EAAwC,KAAK,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AACtH,OAAO,EAAoB,KAAK,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"scoped-recovery.d.ts","sourceRoot":"","sources":["../../../src/runner/scoped-recovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,9 @@ import { runFreshContextReviewIfEnabled } from './fresh-context-review.js';
|
|
|
14
14
|
import { runImplementationPublishabilityCheck } from './local-execution-session.js';
|
|
15
15
|
import { RunnerStateStore } from './local-state.js';
|
|
16
16
|
import { RunnerLifecycleEventStore } from './lifecycle-events.js';
|
|
17
|
-
import {
|
|
17
|
+
import { buildBlockedHandoffEvidence, buildPromotionAsBlockedHandoffEvidence, buildReviewReadyHandoffEvidence, } from './runner-handoff-decision.js';
|
|
18
|
+
import { finishScopedBlockedHandoff, finishScopedReviewReadyHandoff, runScopedRecoveryRetry, } from './scoped-auto-command.js';
|
|
19
|
+
import { maxReworkAttemptsForReasons, MISSING_COMPLETION_REPORT_REASON, shouldRequestImplementationRework, } from './rework-policy.js';
|
|
18
20
|
export const SCOPED_RECOVERY_LEASE_STALE_MS = 30 * 60 * 1000;
|
|
19
21
|
export const SCOPED_RECOVERY_BLOCKED_MARKER_PREFIX = '<!-- codex-orchestrator:recovery-blocked';
|
|
20
22
|
export async function classifyScopedRecoveryRun(input) {
|
|
@@ -34,6 +36,10 @@ export async function classifyScopedRecoveryRun(input) {
|
|
|
34
36
|
if (ownership.kind === 'same-host' && (ownership.process === 'alive' || ownership.process === 'unknown')) {
|
|
35
37
|
return classification(input.run, 'active', `same-host process is ${ownership.process}`, false, beforeHead, reportState);
|
|
36
38
|
}
|
|
39
|
+
if (ownership.kind === 'same-host' && ownership.process === 'missing' && reportState === 'completed') {
|
|
40
|
+
const canMutate = input.invocation !== 'status';
|
|
41
|
+
return classification(input.run, 'completed-pending-handoff', 'same-host missing PID with completed report', canMutate, beforeHead, reportState);
|
|
42
|
+
}
|
|
37
43
|
if (ownership.kind === 'same-host' && !ownership.stale) {
|
|
38
44
|
return classification(input.run, 'active', 'same-host lease is still fresh', false, beforeHead, reportState);
|
|
39
45
|
}
|
|
@@ -107,6 +113,27 @@ export async function recoverScopedRun(input) {
|
|
|
107
113
|
});
|
|
108
114
|
}
|
|
109
115
|
if (scoped.status === 'failed-pending-block') {
|
|
116
|
+
if (scoped.reportState === 'missing') {
|
|
117
|
+
const retryResult = await recoverMissingCompletionReport({
|
|
118
|
+
targetRoot,
|
|
119
|
+
config,
|
|
120
|
+
run,
|
|
121
|
+
issue,
|
|
122
|
+
classification: { ...scoped, beforeHead: scoped.beforeHead },
|
|
123
|
+
issueAdapter,
|
|
124
|
+
pullRequestAdapter,
|
|
125
|
+
git,
|
|
126
|
+
codexAdapter,
|
|
127
|
+
shellExecutor,
|
|
128
|
+
localPhases: input.localPhases,
|
|
129
|
+
localPhaseExecutor: input.localPhaseExecutor,
|
|
130
|
+
now,
|
|
131
|
+
localHost: (input.hostname ?? osHostname)(),
|
|
132
|
+
});
|
|
133
|
+
if (retryResult) {
|
|
134
|
+
return retryResult;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
110
137
|
return blockRecoveredRun({
|
|
111
138
|
targetRoot,
|
|
112
139
|
config,
|
|
@@ -124,6 +151,49 @@ export async function recoverScopedRun(input) {
|
|
|
124
151
|
}
|
|
125
152
|
return { status: 'not-recoverable', classification: scoped };
|
|
126
153
|
}
|
|
154
|
+
async function recoverMissingCompletionReport(input) {
|
|
155
|
+
const reasons = [MISSING_COMPLETION_REPORT_REASON];
|
|
156
|
+
const startAttempt = input.run.retryCount + 1;
|
|
157
|
+
if (input.run.host !== input.localHost
|
|
158
|
+
|| typeof input.run.ownerPid !== 'number'
|
|
159
|
+
|| !Number.isInteger(input.run.ownerPid)
|
|
160
|
+
|| startAttempt > maxReworkAttemptsForReasons(reasons, input.config)
|
|
161
|
+
|| !shouldRequestImplementationRework(reasons, input.config)) {
|
|
162
|
+
return undefined;
|
|
163
|
+
}
|
|
164
|
+
let changeSet;
|
|
165
|
+
try {
|
|
166
|
+
changeSet = await input.git.collectSessionChangeSet({
|
|
167
|
+
worktreePath: input.run.workspacePath,
|
|
168
|
+
baseHead: input.classification.beforeHead,
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
catch {
|
|
172
|
+
return undefined;
|
|
173
|
+
}
|
|
174
|
+
if (changeSet.hasChanges) {
|
|
175
|
+
return undefined;
|
|
176
|
+
}
|
|
177
|
+
const result = await runScopedRecoveryRetry({
|
|
178
|
+
targetRoot: input.targetRoot,
|
|
179
|
+
issueNumber: input.run.issueNumber,
|
|
180
|
+
issueAdapter: input.issueAdapter,
|
|
181
|
+
pullRequestAdapter: input.pullRequestAdapter,
|
|
182
|
+
git: input.git,
|
|
183
|
+
codexAdapter: input.codexAdapter,
|
|
184
|
+
localPhases: input.localPhases,
|
|
185
|
+
localPhaseExecutor: input.localPhaseExecutor,
|
|
186
|
+
shellExecutor: input.shellExecutor,
|
|
187
|
+
now: input.now,
|
|
188
|
+
issue: input.issue,
|
|
189
|
+
startAttempt,
|
|
190
|
+
initialRework: {
|
|
191
|
+
attempt: startAttempt,
|
|
192
|
+
blockedReasons: reasons,
|
|
193
|
+
},
|
|
194
|
+
});
|
|
195
|
+
return { ...result, recovered: true, classification: input.classification };
|
|
196
|
+
}
|
|
127
197
|
export function defaultProcessProbe(pid) {
|
|
128
198
|
try {
|
|
129
199
|
process.kill(pid, 0);
|
|
@@ -176,21 +246,32 @@ async function recoverCompletedHandoff(input) {
|
|
|
176
246
|
logPath,
|
|
177
247
|
};
|
|
178
248
|
if (publishability.status !== 'publish-ready') {
|
|
249
|
+
const evidence = publishability.status === 'blocked'
|
|
250
|
+
? buildBlockedHandoffEvidence({
|
|
251
|
+
publishability,
|
|
252
|
+
nextAction: 'Maintainer input or a corrected agent run is required before draft PR handoff.',
|
|
253
|
+
})
|
|
254
|
+
: buildPromotionAsBlockedHandoffEvidence({
|
|
255
|
+
publishability,
|
|
256
|
+
fallbackReason: 'Recovered report requested promotion',
|
|
257
|
+
nextAction: 'Maintainer input or a corrected agent run is required before draft PR handoff.',
|
|
258
|
+
});
|
|
179
259
|
return blockRecoveredRun({
|
|
180
260
|
targetRoot: input.targetRoot,
|
|
181
261
|
config: input.config,
|
|
182
262
|
run: input.run,
|
|
183
263
|
classification: input.classification,
|
|
184
264
|
issueAdapter: input.issueAdapter,
|
|
185
|
-
reasons:
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
skippedChecks: publishability.status === 'blocked' ? publishability.skippedChecks : publishability.report.skippedChecks,
|
|
191
|
-
residualRisks: publishability.status === 'blocked' ? publishability.residualRisks : publishability.report.residualRisks,
|
|
265
|
+
reasons: evidence.blockers,
|
|
266
|
+
changedFiles: evidence.changedFiles,
|
|
267
|
+
validation: evidence.validation,
|
|
268
|
+
skippedChecks: evidence.skippedChecks,
|
|
269
|
+
residualRisks: evidence.residualRisks,
|
|
192
270
|
now: input.now,
|
|
193
271
|
logPath,
|
|
272
|
+
nextAction: evidence.nextAction,
|
|
273
|
+
suggestionEvidence: evidence.suggestionEvidence,
|
|
274
|
+
acceptanceProof: evidence.acceptanceProof,
|
|
194
275
|
});
|
|
195
276
|
}
|
|
196
277
|
const freshContextReview = await runFreshContextReviewIfEnabled({
|
|
@@ -204,37 +285,51 @@ async function recoverCompletedHandoff(input) {
|
|
|
204
285
|
publishability,
|
|
205
286
|
});
|
|
206
287
|
if (freshContextReview?.status === 'blocked') {
|
|
288
|
+
const evidence = buildBlockedHandoffEvidence({
|
|
289
|
+
publishability,
|
|
290
|
+
freshContextReview,
|
|
291
|
+
nextAction: 'Review the Fresh-Context Review blocker before draft PR handoff.',
|
|
292
|
+
});
|
|
207
293
|
return blockRecoveredRun({
|
|
208
294
|
targetRoot: input.targetRoot,
|
|
209
295
|
config: input.config,
|
|
210
296
|
run: input.run,
|
|
211
297
|
classification: input.classification,
|
|
212
298
|
issueAdapter: input.issueAdapter,
|
|
213
|
-
reasons:
|
|
214
|
-
changedFiles:
|
|
215
|
-
validation:
|
|
216
|
-
skippedChecks:
|
|
217
|
-
residualRisks:
|
|
299
|
+
reasons: evidence.blockers,
|
|
300
|
+
changedFiles: evidence.changedFiles,
|
|
301
|
+
validation: evidence.validation,
|
|
302
|
+
skippedChecks: evidence.skippedChecks,
|
|
303
|
+
residualRisks: evidence.residualRisks,
|
|
218
304
|
now: input.now,
|
|
219
305
|
logPath,
|
|
220
306
|
freshContextReview,
|
|
307
|
+
nextAction: evidence.nextAction,
|
|
308
|
+
suggestionEvidence: evidence.suggestionEvidence,
|
|
309
|
+
acceptanceProof: evidence.acceptanceProof,
|
|
221
310
|
});
|
|
222
311
|
}
|
|
312
|
+
const evidence = buildReviewReadyHandoffEvidence({
|
|
313
|
+
publishability,
|
|
314
|
+
freshContextReview,
|
|
315
|
+
nextAction: 'Review the draft pull request before merge.',
|
|
316
|
+
});
|
|
223
317
|
const durableRunSummary = await writeDurableRunSummary({
|
|
224
318
|
targetRoot: input.targetRoot,
|
|
225
319
|
config: input.config,
|
|
226
320
|
issueNumber: input.run.issueNumber,
|
|
227
321
|
sessionId: input.run.sessionId,
|
|
228
|
-
outcome:
|
|
229
|
-
changedFiles:
|
|
230
|
-
validation:
|
|
231
|
-
blockers:
|
|
232
|
-
skippedChecks:
|
|
233
|
-
residualRisks:
|
|
234
|
-
suggestionEvidence:
|
|
235
|
-
nextAction:
|
|
322
|
+
outcome: evidence.outcome,
|
|
323
|
+
changedFiles: evidence.changedFiles,
|
|
324
|
+
validation: evidence.validation,
|
|
325
|
+
blockers: evidence.blockers,
|
|
326
|
+
skippedChecks: evidence.skippedChecks,
|
|
327
|
+
residualRisks: evidence.residualRisks,
|
|
328
|
+
suggestionEvidence: evidence.suggestionEvidence,
|
|
329
|
+
nextAction: evidence.nextAction,
|
|
236
330
|
logPath,
|
|
237
331
|
reportPath,
|
|
332
|
+
acceptanceProof: evidence.acceptanceProof,
|
|
238
333
|
});
|
|
239
334
|
const resolvedBase = await resolveBaseBranch({ targetRoot: input.targetRoot, base: input.config.branches.base });
|
|
240
335
|
const handoff = await finishScopedReviewReadyHandoff({
|
|
@@ -250,6 +345,7 @@ async function recoverCompletedHandoff(input) {
|
|
|
250
345
|
publishability,
|
|
251
346
|
freshContextReview,
|
|
252
347
|
durableRunSummary,
|
|
348
|
+
acceptanceProof: evidence.acceptanceProof,
|
|
253
349
|
});
|
|
254
350
|
await new RunnerStateStore(input.targetRoot, input.config).removeRun(input.run.issueNumber);
|
|
255
351
|
await safeAppendRecoveryEvent(input.targetRoot, input.config, {
|
|
@@ -281,10 +377,11 @@ async function blockRecoveredRun(input) {
|
|
|
281
377
|
blockers: input.reasons,
|
|
282
378
|
skippedChecks: input.skippedChecks,
|
|
283
379
|
residualRisks: input.residualRisks,
|
|
284
|
-
suggestionEvidence: input.
|
|
285
|
-
nextAction: 'Maintainer input or a corrected agent run is required before draft PR handoff.',
|
|
380
|
+
suggestionEvidence: input.suggestionEvidence,
|
|
381
|
+
nextAction: input.nextAction ?? 'Maintainer input or a corrected agent run is required before draft PR handoff.',
|
|
286
382
|
logPath: input.logPath,
|
|
287
383
|
reportPath: input.run.reportPath ?? '',
|
|
384
|
+
acceptanceProof: input.acceptanceProof,
|
|
288
385
|
});
|
|
289
386
|
const handoff = await finishScopedBlockedHandoff({
|
|
290
387
|
issueNumber: input.run.issueNumber,
|
|
@@ -297,6 +394,7 @@ async function blockRecoveredRun(input) {
|
|
|
297
394
|
residualRisks: input.residualRisks,
|
|
298
395
|
freshContextReview: input.freshContextReview,
|
|
299
396
|
durableRunSummary,
|
|
397
|
+
acceptanceProof: input.acceptanceProof,
|
|
300
398
|
commentPrefix: marker,
|
|
301
399
|
skipCommentIfIncludes: marker,
|
|
302
400
|
});
|