codex-orchestrator 0.1.44 → 0.1.46

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 (43) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/dist/src/runner/acceptance-proof-loop.d.ts +19 -44
  3. package/dist/src/runner/acceptance-proof-loop.d.ts.map +1 -1
  4. package/dist/src/runner/acceptance-proof-loop.js +159 -181
  5. package/dist/src/runner/acceptance-proof-loop.js.map +1 -1
  6. package/dist/src/runner/auto-visual-proof-command.d.ts +1 -1
  7. package/dist/src/runner/auto-visual-proof-command.d.ts.map +1 -1
  8. package/dist/src/runner/auto-visual-proof-command.js +21 -2
  9. package/dist/src/runner/auto-visual-proof-command.js.map +1 -1
  10. package/dist/src/runner/completion-report.d.ts +11 -0
  11. package/dist/src/runner/completion-report.d.ts.map +1 -1
  12. package/dist/src/runner/completion-report.js +37 -1
  13. package/dist/src/runner/completion-report.js.map +1 -1
  14. package/dist/src/runner/local-execution-session.d.ts.map +1 -1
  15. package/dist/src/runner/local-execution-session.js +1 -0
  16. package/dist/src/runner/local-execution-session.js.map +1 -1
  17. package/dist/src/runner/prompt.d.ts.map +1 -1
  18. package/dist/src/runner/prompt.js +18 -3
  19. package/dist/src/runner/prompt.js.map +1 -1
  20. package/dist/src/runner/proof-routing.d.ts +73 -0
  21. package/dist/src/runner/proof-routing.d.ts.map +1 -0
  22. package/dist/src/runner/proof-routing.js +182 -0
  23. package/dist/src/runner/proof-routing.js.map +1 -0
  24. package/dist/src/runner/proof-strategy.d.ts +9 -0
  25. package/dist/src/runner/proof-strategy.d.ts.map +1 -1
  26. package/dist/src/runner/proof-strategy.js +7 -0
  27. package/dist/src/runner/proof-strategy.js.map +1 -1
  28. package/dist/src/runner/review-gate-policy.d.ts +1 -37
  29. package/dist/src/runner/review-gate-policy.d.ts.map +1 -1
  30. package/dist/src/runner/review-gate-policy.js +63 -24
  31. package/dist/src/runner/review-gate-policy.js.map +1 -1
  32. package/dist/src/runner/review-gates.d.ts.map +1 -1
  33. package/dist/src/runner/review-gates.js +5 -0
  34. package/dist/src/runner/review-gates.js.map +1 -1
  35. package/dist/src/runner/visual-proof-runner.d.ts.map +1 -1
  36. package/dist/src/runner/visual-proof-runner.js +2 -1
  37. package/dist/src/runner/visual-proof-runner.js.map +1 -1
  38. package/dist/src/setup/project-config.d.ts.map +1 -1
  39. package/dist/src/setup/project-config.js +3 -12
  40. package/dist/src/setup/project-config.js.map +1 -1
  41. package/docs/deep-dive.md +49 -6
  42. package/package.json +1 -1
  43. package/prompts/workflows/scoped-implementation.md +6 -0
package/CHANGELOG.md CHANGED
@@ -6,6 +6,32 @@ The format is based on Keep a Changelog, and this project follows SemVer.
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [0.1.46] - 2026-07-13
10
+
11
+ ### Changed
12
+ - Automatic Acceptance Proof routing now treats issue text and changed paths as
13
+ applicability hints while the validated proof plan remains authoritative.
14
+ - Self-improvement discovery now emits an explicit proof strategy selected from
15
+ observable behavior instead of relying on file-location inference.
16
+
17
+ ### Fixed
18
+ - Non-visual frontend refactors no longer require browser screenshots merely
19
+ because they touch frontend paths.
20
+ - Runner command dispatch and strict legacy visual gates no longer override an
21
+ accepted non-visual proof plan.
22
+
23
+ ## [0.1.45] - 2026-07-07
24
+
25
+ ### Added
26
+ - Added runner support for agent-authored Acceptance Proof plans so scoped
27
+ implementation handoffs can carry explicit proof-plan artifacts.
28
+ - Added proof-plan report validation coverage across scoped runs, plan-auto
29
+ children, status output, and handoff decisions.
30
+
31
+ ### Changed
32
+ - Acceptance Proof guidance now documents the proof-plan/report contract more
33
+ directly in runner docs and scoped workflow prompts.
34
+
9
35
  ## [0.1.44] - 2026-07-07
10
36
 
11
37
  ### Added
@@ -1,23 +1,23 @@
1
1
  import type { CodexOrchestratorConfig } from '../config/schema.js';
2
2
  import type { GitHubIssue } from '../github/issues.js';
3
- import type { ScopedCompletionReport } from './completion-report.js';
3
+ import type { ProofPlan, ProofPlanMode, ScopedCompletionReport } from './completion-report.js';
4
4
  import type { RunnerValidationLine } from './handoff-evidence.js';
5
5
  import { type AcceptanceProofAttemptEvidence } from './acceptance-proof.js';
6
- import { resolveAcceptanceProofStrategy } from './proof-strategy.js';
7
- export type AcceptanceProofPlanKind = 'skip' | 'adaptive' | 'command';
8
- export type VisualProofDispatchTarget = 'browser' | 'mobile' | 'none';
9
- export type ProofRoutingAction = 'skip' | 'dispatch' | 'allow-non-visual' | 'error';
6
+ import { type VisualProofDispatchTarget } from './proof-routing.js';
7
+ export type AcceptanceProofPlanKind = 'skip' | 'adaptive' | 'command' | 'report-validation' | 'blocked';
10
8
  export interface AcceptanceProofPlan {
11
9
  kind: AcceptanceProofPlanKind;
12
10
  applies: boolean;
13
11
  reason: string;
14
12
  commandTemplate?: string;
13
+ blocker?: string;
15
14
  }
16
15
  export interface AcceptanceProofPlanInput {
17
16
  config: CodexOrchestratorConfig;
18
17
  issue: GitHubIssue;
19
18
  changedFiles: string[];
20
19
  adaptiveAdapterAvailable: boolean;
20
+ implementationReport: ScopedCompletionReport;
21
21
  }
22
22
  export interface AcceptanceProofAdapterResult {
23
23
  adapterKind: 'adaptive' | 'command';
@@ -61,6 +61,7 @@ export interface RunAcceptanceProofLoopAttemptInput {
61
61
  worktreePath: string;
62
62
  beforeHead: string;
63
63
  initialChangedFiles: string[];
64
+ implementationReport: ScopedCompletionReport;
64
65
  adaptiveAdapterAvailable: boolean;
65
66
  executeAdaptiveProof?: () => Promise<AcceptanceProofAdapterResult>;
66
67
  executeAdaptiveProofRepair?: (input: AcceptanceProofRepairInput) => Promise<AcceptanceProofAdapterResult>;
@@ -74,49 +75,23 @@ export interface RunAcceptanceProofLoopAttemptInput {
74
75
  }) => AcceptanceProofScopeResult;
75
76
  artifactExists?: (path: string) => boolean;
76
77
  }
77
- export interface ProofRoutingDecision {
78
- applies: boolean;
79
- desirable: boolean;
78
+ export type ProofPlanValidationResult = {
79
+ ok: true;
80
+ proofPlan: ProofPlan;
81
+ proofMode: ProofPlanMode;
80
82
  dispatchTarget: VisualProofDispatchTarget;
81
- proofStrategy: ReturnType<typeof resolveAcceptanceProofStrategy>['strategy'];
82
- action: ProofRoutingAction;
83
83
  reason: string;
84
- }
84
+ } | {
85
+ ok: false;
86
+ blocker: string;
87
+ retryable: boolean;
88
+ };
85
89
  export declare function planAcceptanceProofAttempt(input: AcceptanceProofPlanInput): AcceptanceProofPlan;
86
- export declare function runAcceptanceProofLoopAttempt(input: RunAcceptanceProofLoopAttemptInput): Promise<AcceptanceProofLoopOutcome>;
87
- export declare function decideProofRouting(input: {
90
+ export declare function validateProofPlan(input: {
88
91
  config: CodexOrchestratorConfig;
89
92
  issue: GitHubIssue;
90
93
  changedFiles: string[];
91
- }): ProofRoutingDecision;
92
- export declare function shouldApplyVisualProofGate(input: {
93
- config: CodexOrchestratorConfig;
94
- issue: GitHubIssue;
95
- changedFiles: string[];
96
- }): boolean;
97
- export declare function classifyVisualProofDispatchTarget(input: {
98
- config: CodexOrchestratorConfig;
99
- issue: GitHubIssue;
100
- changedFiles: string[];
101
- }): VisualProofDispatchTarget;
102
- export declare function isVisualProofDesirable(input: {
103
- config: CodexOrchestratorConfig;
104
- issue: GitHubIssue;
105
- changedFiles: string[];
106
- }): boolean;
107
- export declare function runnerVisualProofPolicy(config: CodexOrchestratorConfig): {
108
- commandTemplate?: string;
109
- artifactDir: string;
110
- envPassthrough: string[];
111
- timeoutMs?: number;
112
- minScreenshotArtifacts: number;
113
- requireWhenDesirable: boolean;
114
- blockOnMissingProof: boolean;
115
- browserProof: {
116
- scenarioPath?: string;
117
- baseUrl?: string;
118
- strictConsoleErrors: boolean;
119
- strictNetworkFailures: boolean;
120
- };
121
- };
94
+ implementationReport: ScopedCompletionReport;
95
+ }): ProofPlanValidationResult;
96
+ export declare function runAcceptanceProofLoopAttempt(input: RunAcceptanceProofLoopAttemptInput): Promise<AcceptanceProofLoopOutcome>;
122
97
  //# sourceMappingURL=acceptance-proof-loop.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"acceptance-proof-loop.d.ts","sourceRoot":"","sources":["../../../src/runner/acceptance-proof-loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acceptance-proof-loop.d.ts","sourceRoot":"","sources":["../../../src/runner/acceptance-proof-loop.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,50 @@
1
- import { globMatches } from '../path-policy.js';
2
1
  import { buildAcceptanceProofReportOutcome, buildBlockedAcceptanceProofOutcome, buildForbiddenAcceptanceProofDiffEvidence, classifyAcceptanceProofDiff, createAcceptanceProofDiffCapture, readAcceptanceProofReport, } from './acceptance-proof.js';
3
- import { resolveAcceptanceProofStrategy } from './proof-strategy.js';
2
+ import { resolveAcceptanceProofRequirement, resolveAcceptanceProofStrategy } from './proof-strategy.js';
3
+ import { acceptanceProofApplies, isNonVisualProofMode, proofPlanDispatchTarget, runnerVisualProofPolicy, visualProofDesirable, visualStrategyDowngradeBlocker, } from './proof-routing.js';
4
4
  export function planAcceptanceProofAttempt(input) {
5
5
  const proofStrategy = resolveAcceptanceProofStrategy({ config: input.config, issue: input.issue }).strategy;
6
+ const proofPlanValidation = validateProofPlan(input);
7
+ if (!proofPlanValidation.ok) {
8
+ return {
9
+ kind: 'blocked',
10
+ applies: true,
11
+ reason: proofPlanValidation.blocker,
12
+ blocker: proofPlanValidation.blocker,
13
+ };
14
+ }
15
+ const proofPlan = proofPlanValidation.proofPlan;
6
16
  const commandTemplate = runnerVisualProofPolicy(input.config).commandTemplate;
7
17
  const desirable = visualProofDesirable(input, proofStrategy);
8
18
  const applies = acceptanceProofApplies(input, proofStrategy, desirable);
19
+ if (proofPlan.mode === 'none') {
20
+ if (!applies || proofStrategy === 'none') {
21
+ return {
22
+ kind: 'skip',
23
+ applies: false,
24
+ reason: 'proofPlan mode none disables acceptance proof',
25
+ };
26
+ }
27
+ return {
28
+ kind: 'blocked',
29
+ applies: true,
30
+ reason: 'Invalid proofPlan: none cannot satisfy required acceptance proof',
31
+ blocker: 'Invalid proofPlan: none cannot satisfy required acceptance proof',
32
+ };
33
+ }
34
+ if (isNonVisualProofMode(proofPlan.mode)) {
35
+ if (!input.config.reviewGates.acceptanceProof.enabled) {
36
+ return {
37
+ kind: 'skip',
38
+ applies: false,
39
+ reason: 'acceptance proof is disabled',
40
+ };
41
+ }
42
+ return {
43
+ kind: 'report-validation',
44
+ applies: true,
45
+ reason: 'agent-authored non-visual proof plan accepted',
46
+ };
47
+ }
9
48
  if (!applies) {
10
49
  return {
11
50
  kind: 'skip',
@@ -36,12 +75,50 @@ export function planAcceptanceProofAttempt(input) {
36
75
  reason: 'acceptance proof applies but no adaptive adapter or runner command is available',
37
76
  };
38
77
  }
78
+ export function validateProofPlan(input) {
79
+ const proofPlan = input.implementationReport.proofPlan;
80
+ const proofRequirement = resolveAcceptanceProofRequirement({ config: input.config, issue: input.issue }).mode;
81
+ const dispatchTarget = proofPlanDispatchTarget(proofPlan);
82
+ if (proofRequirement === 'none' && proofPlan.mode !== 'none') {
83
+ return {
84
+ ok: false,
85
+ blocker: 'Invalid proofPlan: proof strategy none requires proofPlan mode none',
86
+ retryable: true,
87
+ };
88
+ }
89
+ if (proofRequirement === 'non-visual-smoke' && !isNonVisualProofMode(proofPlan.mode)) {
90
+ return {
91
+ ok: false,
92
+ blocker: proofPlan.mode === 'none'
93
+ ? 'Invalid proofPlan: proof strategy non-visual-smoke requires non-visual proof evidence'
94
+ : 'Invalid proofPlan: visual proof cannot satisfy non-visual proof strategy',
95
+ retryable: true,
96
+ };
97
+ }
98
+ if (proofRequirement === 'mobile-visual' && proofPlan.mode !== 'mobile-visual') {
99
+ return { ok: false, blocker: visualStrategyDowngradeBlocker('mobile'), retryable: true };
100
+ }
101
+ if (proofRequirement === 'browser-visual' && proofPlan.mode !== 'browser-visual') {
102
+ return { ok: false, blocker: visualStrategyDowngradeBlocker('browser'), retryable: true };
103
+ }
104
+ if (proofRequirement === 'visual' && dispatchTarget === 'none') {
105
+ return { ok: false, blocker: 'Invalid proofPlan: non-visual proof cannot satisfy visual strategy', retryable: true };
106
+ }
107
+ return {
108
+ ok: true,
109
+ proofPlan,
110
+ proofMode: proofPlan.mode,
111
+ dispatchTarget,
112
+ reason: `proofPlan mode ${proofPlan.mode} accepted`,
113
+ };
114
+ }
39
115
  export async function runAcceptanceProofLoopAttempt(input) {
40
116
  const plan = planAcceptanceProofAttempt({
41
117
  config: input.config,
42
118
  issue: input.issue,
43
119
  changedFiles: input.initialChangedFiles,
44
120
  adaptiveAdapterAvailable: input.adaptiveAdapterAvailable,
121
+ implementationReport: input.implementationReport,
45
122
  });
46
123
  if (plan.kind === 'skip') {
47
124
  return {
@@ -54,6 +131,29 @@ export async function runAcceptanceProofLoopAttempt(input) {
54
131
  scopeBlockers: [],
55
132
  };
56
133
  }
134
+ if (plan.kind === 'blocked') {
135
+ const blocker = plan.blocker ?? plan.reason;
136
+ return {
137
+ status: 'blocked',
138
+ changedFiles: input.initialChangedFiles,
139
+ validation: [{
140
+ command: 'acceptance proof plan validation',
141
+ status: 'failed',
142
+ summary: blocker,
143
+ }],
144
+ artifacts: [],
145
+ residualRisks: [],
146
+ blockers: [blocker],
147
+ scopeBlockers: [],
148
+ };
149
+ }
150
+ if (plan.kind === 'report-validation') {
151
+ return evaluateReportValidationProof({
152
+ implementationReport: input.implementationReport,
153
+ proofPlan: input.implementationReport.proofPlan,
154
+ changedFiles: input.initialChangedFiles,
155
+ });
156
+ }
57
157
  const diffCapture = await createAcceptanceProofDiffCapture({
58
158
  worktreePath: input.worktreePath,
59
159
  changedFiles: input.initialChangedFiles,
@@ -162,6 +262,63 @@ async function executeSelectedAdapter(input, plan) {
162
262
  }
163
263
  throw new Error(`Unsupported acceptance proof plan kind: ${plan.kind}`);
164
264
  }
265
+ function evaluateReportValidationProof(input) {
266
+ const blockers = [];
267
+ if (input.proofPlan.validationCommands.length + input.proofPlan.requiredArtifacts.length === 0) {
268
+ blockers.push('Invalid proofPlan: non-visual proof requires at least one validation command or required artifact.');
269
+ }
270
+ for (const command of input.proofPlan.validationCommands) {
271
+ if (command.trim().length === 0) {
272
+ blockers.push('Invalid proofPlan: validation command must be non-empty.');
273
+ continue;
274
+ }
275
+ const match = input.implementationReport.validation.find((line) => line.command.trim().length > 0 && line.command === command && line.status === 'passed');
276
+ if (!match) {
277
+ blockers.push(`Invalid proofPlan: validation command was not reported as passed: ${command}`);
278
+ }
279
+ }
280
+ const artifactTargets = new Set(input.implementationReport.artifacts.flatMap((artifact) => [artifact.path, artifact.url].filter(Boolean)));
281
+ for (const artifact of input.proofPlan.requiredArtifacts) {
282
+ if (artifact.trim().length === 0) {
283
+ blockers.push('Invalid proofPlan: required artifact must be non-empty.');
284
+ continue;
285
+ }
286
+ if (!artifactTargets.has(artifact)) {
287
+ blockers.push(`Invalid proofPlan: artifact was not reported: ${artifact}`);
288
+ }
289
+ }
290
+ if (!input.implementationReport.reviewHandoff?.proofByAcceptanceCriteria.length) {
291
+ blockers.push('Invalid proofPlan: reviewHandoff.proofByAcceptanceCriteria must map proof to acceptance criteria.');
292
+ }
293
+ const passed = blockers.length === 0;
294
+ const validation = [{
295
+ command: 'acceptance proof plan report validation',
296
+ status: passed ? 'passed' : 'failed',
297
+ summary: passed
298
+ ? `agent-authored ${input.proofPlan.mode} proof plan passed report validation`
299
+ : blockers.join('; '),
300
+ }];
301
+ const artifactPaths = input.implementationReport.artifacts
302
+ .flatMap((artifact) => [artifact.path, artifact.url].filter((value) => Boolean(value)));
303
+ return {
304
+ status: passed ? 'passed' : 'blocked',
305
+ changedFiles: input.changedFiles,
306
+ validation,
307
+ artifacts: input.implementationReport.artifacts,
308
+ residualRisks: [],
309
+ blockers,
310
+ scopeBlockers: [],
311
+ evidence: {
312
+ status: passed ? 'passed' : 'blocked',
313
+ reportPath: 'completion-report:proofPlan',
314
+ artifactDir: 'completion-report:artifacts',
315
+ artifactPaths,
316
+ validation,
317
+ blockers,
318
+ residualRisks: [],
319
+ },
320
+ };
321
+ }
165
322
  async function evaluateAdapterReport(input) {
166
323
  const reportRead = await readAcceptanceProofReport(input.adapterResult.reportPath);
167
324
  if (reportRead.kind === 'missing') {
@@ -225,188 +382,9 @@ function commandFailureSummary(adapterResult) {
225
382
  const prefix = adapterResult.adapterKind === 'adaptive' ? 'Acceptance proof failed' : 'runner acceptance proof failed';
226
383
  return `${prefix}: ${adapterResult.outputSummary || `exit ${adapterResult.exitCode}`}`;
227
384
  }
228
- export function decideProofRouting(input) {
229
- const proofStrategy = resolveAcceptanceProofStrategy({ config: input.config, issue: input.issue }).strategy;
230
- const dispatchTarget = proofStrategyDispatchTarget(input, proofStrategy);
231
- const desirable = visualProofDesirable(input, proofStrategy);
232
- const plan = planAcceptanceProofAttempt({ ...input, adaptiveAdapterAvailable: false });
233
- if (proofStrategy === 'none' || proofStrategy === 'non-visual-smoke') {
234
- return {
235
- applies: plan.applies,
236
- desirable,
237
- dispatchTarget,
238
- proofStrategy,
239
- action: 'skip',
240
- reason: 'proof strategy disables browser/mobile visual proof',
241
- };
242
- }
243
- if (dispatchTarget === 'browser' || dispatchTarget === 'mobile') {
244
- return {
245
- applies: plan.applies,
246
- desirable,
247
- dispatchTarget,
248
- proofStrategy,
249
- action: 'dispatch',
250
- reason: `${dispatchTarget} proof target matched`,
251
- };
252
- }
253
- if (plan.applies && !desirable) {
254
- return {
255
- applies: true,
256
- desirable,
257
- dispatchTarget,
258
- proofStrategy,
259
- action: 'allow-non-visual',
260
- reason: 'acceptance proof applies without browser or mobile dispatch',
261
- };
262
- }
263
- if (plan.applies || desirable) {
264
- return {
265
- applies: plan.applies,
266
- desirable,
267
- dispatchTarget,
268
- proofStrategy,
269
- action: 'error',
270
- reason: 'visual proof is desirable but no browser or mobile dispatch target matched',
271
- };
272
- }
273
- return {
274
- applies: false,
275
- desirable,
276
- dispatchTarget,
277
- proofStrategy,
278
- action: 'error',
279
- reason: 'proof routing did not match issue text or changed paths',
280
- };
281
- }
282
- export function shouldApplyVisualProofGate(input) {
283
- return decideProofRouting(input).applies;
284
- }
285
- export function classifyVisualProofDispatchTarget(input) {
286
- return decideProofRouting(input).dispatchTarget;
287
- }
288
- export function isVisualProofDesirable(input) {
289
- return decideProofRouting(input).desirable;
290
- }
291
- export function runnerVisualProofPolicy(config) {
292
- const visualProof = config.reviewGates.visualProof;
293
- const acceptanceProof = config.reviewGates.acceptanceProof;
294
- const preferLegacyVisual = isLegacyVisualProofOverride(acceptanceProof, visualProof);
295
- const commandTemplate = preferLegacyVisual
296
- ? visualProof.runnerValidationCommand?.trim()
297
- : acceptanceProof.runnerValidationCommand?.trim() || visualProof.runnerValidationCommand?.trim();
298
- return {
299
- commandTemplate: commandTemplate || undefined,
300
- artifactDir: preferLegacyVisual ? visualProof.artifactDir : acceptanceProof.artifactDir,
301
- envPassthrough: preferLegacyVisual
302
- ? visualProof.envPassthrough ?? acceptanceProof.envPassthrough ?? []
303
- : acceptanceProof.envPassthrough?.length
304
- ? acceptanceProof.envPassthrough
305
- : visualProof.envPassthrough ?? [],
306
- timeoutMs: preferLegacyVisual
307
- ? visualProof.runnerTimeoutMs ?? acceptanceProof.runnerTimeoutMs
308
- : acceptanceProof.runnerTimeoutMs ?? visualProof.runnerTimeoutMs,
309
- minScreenshotArtifacts: visualProof.minScreenshotArtifacts,
310
- requireWhenDesirable: visualProof.requireWhenDesirable ?? false,
311
- blockOnMissingProof: !preferLegacyVisual,
312
- browserProof: {
313
- strictConsoleErrors: acceptanceProof.browserProof?.strictConsoleErrors ?? false,
314
- strictNetworkFailures: acceptanceProof.browserProof?.strictNetworkFailures ?? false,
315
- scenarioPath: acceptanceProof.browserProof?.scenarioPath,
316
- baseUrl: acceptanceProof.browserProof?.baseUrl,
317
- },
318
- };
319
- }
320
- function acceptanceProofApplies(input, proofStrategy, desirable) {
321
- const acceptanceProof = input.config.reviewGates.acceptanceProof;
322
- if (!acceptanceProof.enabled) {
323
- return false;
324
- }
325
- if (proofStrategy === 'none' || proofStrategy === 'non-visual-smoke') {
326
- return false;
327
- }
328
- if (proofStrategy === 'browser-visual' || proofStrategy === 'mobile-visual' || proofStrategy === 'visual') {
329
- return true;
330
- }
331
- const issueText = `${input.issue.title}\n${input.issue.body}`;
332
- const internalRunnerProofOnlyChange = input.changedFiles.length > 0
333
- && input.changedFiles.every(isInternalRunnerProofPath);
334
- const issueNeedsAcceptanceProof = !internalRunnerProofOnlyChange
335
- && acceptanceProof.issueTextPatterns.some((pattern) => regexMatches(pattern, issueText));
336
- const changedAcceptanceProofFiles = input.changedFiles.some((path) => acceptanceProof.changedPathGlobs.some((pattern) => globMatches(pattern, path)));
337
- return issueNeedsAcceptanceProof || changedAcceptanceProofFiles || desirable;
338
- }
339
- function proofStrategyDispatchTarget(input, proofStrategy) {
340
- const normalizedFiles = input.changedFiles.map((path) => path.replaceAll('\\', '/').replace(/^\.\//u, ''));
341
- const issueText = `${input.issue.title}\n${input.issue.body}`;
342
- if (proofStrategy === 'none' || proofStrategy === 'non-visual-smoke') {
343
- return 'none';
344
- }
345
- if (proofStrategy === 'browser-visual') {
346
- return 'browser';
347
- }
348
- if (proofStrategy === 'mobile-visual') {
349
- return 'mobile';
350
- }
351
- if (normalizedFiles.some(isMobileProofPath) || normalizedFiles.some((path) => isFlutterEntrypoint(path) && isMobileIssueText(issueText))) {
352
- return 'mobile';
353
- }
354
- if (normalizedFiles.some((path) => input.config.reviewGates.visualProof.changedPathGlobs.some((pattern) => globMatches(pattern, path)))) {
355
- return 'browser';
356
- }
357
- return 'none';
358
- }
359
- function visualProofDesirable(input, proofStrategy) {
360
- const visualProof = input.config.reviewGates.visualProof;
361
- if (!visualProof.enabled) {
362
- return false;
363
- }
364
- const issueText = `${input.issue.title}\n${input.issue.body}`;
365
- const command = runnerVisualProofPolicy(input.config).commandTemplate;
366
- if (proofStrategy === 'none' || proofStrategy === 'non-visual-smoke') {
367
- return false;
368
- }
369
- if (proofStrategy === 'browser-visual' || proofStrategy === 'mobile-visual' || proofStrategy === 'visual') {
370
- return Boolean(command);
371
- }
372
- const internalRunnerProofOnlyChange = input.changedFiles.length > 0
373
- && input.changedFiles.every(isInternalRunnerProofPath);
374
- const issueNeedsVisualProof = visualProof.enabled
375
- && !internalRunnerProofOnlyChange
376
- && visualProof.issueTextPatterns.some((pattern) => regexMatches(pattern, issueText));
377
- const changedProofFiles = input.changedFiles.filter((path) => visualProof.changedPathGlobs.some((pattern) => globMatches(pattern, path)));
378
- return issueNeedsVisualProof || changedProofFiles.length > 0;
379
- }
380
385
  function hasAcceptanceProofProfile(config) {
381
386
  return Boolean(config.codex.profiles?.['acceptance-proof']);
382
387
  }
383
- function isInternalRunnerProofPath(path) {
384
- return /^src\/runner\/(?:acceptance-proof|visual-proof-runner)\.ts$/u.test(path)
385
- || /^test\/(?:acceptance-proof|visual-proof-runner)\.test\.ts$/u.test(path);
386
- }
387
- function isLegacyVisualProofOverride(acceptanceProof, visualProof) {
388
- const defaultMobileCommand = 'codex-orchestrator visual-proof mobile --issue ${issueNumber}';
389
- const defaultAutoCommand = 'codex-orchestrator visual-proof auto --issue ${issueNumber}';
390
- const acceptanceCommand = acceptanceProof.runnerValidationCommand?.trim() || '';
391
- return (acceptanceCommand === defaultMobileCommand || acceptanceCommand === defaultAutoCommand)
392
- && Boolean(visualProof.runnerValidationCommand?.trim())
393
- && visualProof.runnerValidationCommand?.trim() !== defaultMobileCommand
394
- && visualProof.runnerValidationCommand?.trim() !== defaultAutoCommand;
395
- }
396
- function isMobileProofPath(path) {
397
- return /^(?:android|ios)\//u.test(path)
398
- || /\.(?:xcodeproj|xcworkspace)\//u.test(path)
399
- || /(?:^|\/)(?:build\.gradle|build\.gradle\.kts|gradlew|gradlew\.bat)$/u.test(path);
400
- }
401
- function isFlutterEntrypoint(path) {
402
- return path === 'pubspec.yaml' || /^lib\/.+\.dart$/u.test(path);
403
- }
404
- function isMobileIssueText(text) {
405
- return /\b(?:android|ios|iphone|ipad|flutter|mobile|emulator|apk|aab|dart)\b/iu.test(text);
406
- }
407
- function regexMatches(pattern, text) {
408
- return new RegExp(pattern, 'iu').test(text);
409
- }
410
388
  function mergeProofArtifacts(left, right) {
411
389
  const seen = new Set(left.map((artifact) => artifact.url ?? artifact.path ?? artifact.description));
412
390
  const merged = [...left];
@@ -1 +1 @@
1
- {"version":3,"file":"acceptance-proof-loop.js","sourceRoot":"","sources":["../../../src/runner/acceptance-proof-loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acceptance-proof-loop.js","sourceRoot":"","sources":["../../../src/runner/acceptance-proof-loop.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type VisualProofDispatchTarget } from './review-gate-policy.js';
1
+ import { type VisualProofDispatchTarget } from './proof-routing.js';
2
2
  import { type BrowserVisualProofCommandInput } from './browser-visual-proof-command.js';
3
3
  import { type MobileVisualProofCommandInput } from './mobile-visual-proof-command.js';
4
4
  import type { CodexOrchestratorConfig } from '../config/schema.js';
@@ -1 +1 @@
1
- {"version":3,"file":"auto-visual-proof-command.d.ts","sourceRoot":"","sources":["../../../src/runner/auto-visual-proof-command.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,yBAAyB,EAC/B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAA6D,KAAK,8BAA8B,EAAE,MAAM,mCAAmC,CAAC;AACnJ,OAAO,EAA2D,KAAK,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AAC/I,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAEnE,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,EAAE,uBAAuB,CAAC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,8BAA8B,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5E,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,6BAA6B,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3E;AAED,wBAAsB,yBAAyB,CAAC,KAAK,EAAE,2BAA2B,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,yBAAyB,CAAA;CAAE,CAAC,CA4BlI"}
1
+ {"version":3,"file":"auto-visual-proof-command.d.ts","sourceRoot":"","sources":["../../../src/runner/auto-visual-proof-command.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,yBAAyB,EAC/B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAA6D,KAAK,8BAA8B,EAAE,MAAM,mCAAmC,CAAC;AACnJ,OAAO,EAA2D,KAAK,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AAC/I,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAGnE,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,EAAE,uBAAuB,CAAC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,8BAA8B,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5E,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,6BAA6B,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3E;AAED,wBAAsB,yBAAyB,CAAC,KAAK,EAAE,2BAA2B,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,yBAAyB,CAAA;CAAE,CAAC,CAkClI"}