codex-orchestrator 0.1.45 → 0.1.47
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 +28 -0
- package/dist/src/runner/acceptance-proof-loop.d.ts +1 -46
- package/dist/src/runner/acceptance-proof-loop.d.ts.map +1 -1
- package/dist/src/runner/acceptance-proof-loop.js +22 -202
- package/dist/src/runner/acceptance-proof-loop.js.map +1 -1
- package/dist/src/runner/auto-visual-proof-command.d.ts +1 -1
- package/dist/src/runner/auto-visual-proof-command.d.ts.map +1 -1
- package/dist/src/runner/auto-visual-proof-command.js +21 -2
- package/dist/src/runner/auto-visual-proof-command.js.map +1 -1
- package/dist/src/runner/completion-report.d.ts +6 -1
- package/dist/src/runner/completion-report.d.ts.map +1 -1
- package/dist/src/runner/completion-report.js +26 -1
- package/dist/src/runner/completion-report.js.map +1 -1
- package/dist/src/runner/handoff-evidence.d.ts.map +1 -1
- package/dist/src/runner/handoff-evidence.js +13 -8
- package/dist/src/runner/handoff-evidence.js.map +1 -1
- package/dist/src/runner/local-execution-session.d.ts.map +1 -1
- package/dist/src/runner/local-execution-session.js +19 -5
- package/dist/src/runner/local-execution-session.js.map +1 -1
- package/dist/src/runner/prompt.d.ts.map +1 -1
- package/dist/src/runner/prompt.js +6 -3
- package/dist/src/runner/prompt.js.map +1 -1
- package/dist/src/runner/proof-routing.d.ts +73 -0
- package/dist/src/runner/proof-routing.d.ts.map +1 -0
- package/dist/src/runner/proof-routing.js +182 -0
- package/dist/src/runner/proof-routing.js.map +1 -0
- package/dist/src/runner/proof-strategy.d.ts +9 -0
- package/dist/src/runner/proof-strategy.d.ts.map +1 -1
- package/dist/src/runner/proof-strategy.js +7 -0
- package/dist/src/runner/proof-strategy.js.map +1 -1
- package/dist/src/runner/review-gate-policy.d.ts +1 -37
- package/dist/src/runner/review-gate-policy.d.ts.map +1 -1
- package/dist/src/runner/review-gate-policy.js +55 -24
- package/dist/src/runner/review-gate-policy.js.map +1 -1
- package/dist/src/runner/review-gates.d.ts.map +1 -1
- package/dist/src/runner/review-gates.js +46 -1
- package/dist/src/runner/review-gates.js.map +1 -1
- package/dist/src/runner/visual-proof-runner.d.ts.map +1 -1
- package/dist/src/runner/visual-proof-runner.js +2 -1
- package/dist/src/runner/visual-proof-runner.js.map +1 -1
- package/docs/deep-dive.md +33 -7
- package/package.json +1 -1
- package/prompts/workflows/issue-tree-orchestration.md +1 -1
- package/prompts/workflows/scoped-implementation.md +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,34 @@ The format is based on Keep a Changelog, and this project follows SemVer.
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [0.1.47] - 2026-07-13
|
|
10
|
+
|
|
11
|
+
### Changed
|
|
12
|
+
- Scoped review handoffs now distinguish genuinely maintainer-only checks from
|
|
13
|
+
checks that an implementation agent can run before handoff.
|
|
14
|
+
- Failed configured checks are preserved as explicit residual-risk warnings
|
|
15
|
+
after the agent's own validation succeeds instead of blocking publication.
|
|
16
|
+
- The repo-local self-improvement workflow now resolves `codex` through `PATH`
|
|
17
|
+
rather than depending on a macOS application-bundle path.
|
|
18
|
+
|
|
19
|
+
### Fixed
|
|
20
|
+
- Review evidence validation now rejects maintainer-only claims that omit a
|
|
21
|
+
concrete reason or merely defer agent-verifiable work.
|
|
22
|
+
|
|
23
|
+
## [0.1.46] - 2026-07-13
|
|
24
|
+
|
|
25
|
+
### Changed
|
|
26
|
+
- Automatic Acceptance Proof routing now treats issue text and changed paths as
|
|
27
|
+
applicability hints while the validated proof plan remains authoritative.
|
|
28
|
+
- Self-improvement discovery now emits an explicit proof strategy selected from
|
|
29
|
+
observable behavior instead of relying on file-location inference.
|
|
30
|
+
|
|
31
|
+
### Fixed
|
|
32
|
+
- Non-visual frontend refactors no longer require browser screenshots merely
|
|
33
|
+
because they touch frontend paths.
|
|
34
|
+
- Runner command dispatch and strict legacy visual gates no longer override an
|
|
35
|
+
accepted non-visual proof plan.
|
|
36
|
+
|
|
9
37
|
## [0.1.45] - 2026-07-07
|
|
10
38
|
|
|
11
39
|
### Added
|
|
@@ -3,10 +3,8 @@ import type { GitHubIssue } from '../github/issues.js';
|
|
|
3
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 {
|
|
6
|
+
import { type VisualProofDispatchTarget } from './proof-routing.js';
|
|
7
7
|
export type AcceptanceProofPlanKind = 'skip' | 'adaptive' | 'command' | 'report-validation' | 'blocked';
|
|
8
|
-
export type VisualProofDispatchTarget = 'browser' | 'mobile' | 'none';
|
|
9
|
-
export type ProofRoutingAction = 'skip' | 'dispatch' | 'allow-non-visual' | 'error';
|
|
10
8
|
export interface AcceptanceProofPlan {
|
|
11
9
|
kind: AcceptanceProofPlanKind;
|
|
12
10
|
applies: boolean;
|
|
@@ -77,14 +75,6 @@ export interface RunAcceptanceProofLoopAttemptInput {
|
|
|
77
75
|
}) => AcceptanceProofScopeResult;
|
|
78
76
|
artifactExists?: (path: string) => boolean;
|
|
79
77
|
}
|
|
80
|
-
export interface ProofRoutingDecision {
|
|
81
|
-
applies: boolean;
|
|
82
|
-
desirable: boolean;
|
|
83
|
-
dispatchTarget: VisualProofDispatchTarget;
|
|
84
|
-
proofStrategy: ReturnType<typeof resolveAcceptanceProofStrategy>['strategy'];
|
|
85
|
-
action: ProofRoutingAction;
|
|
86
|
-
reason: string;
|
|
87
|
-
}
|
|
88
78
|
export type ProofPlanValidationResult = {
|
|
89
79
|
ok: true;
|
|
90
80
|
proofPlan: ProofPlan;
|
|
@@ -104,39 +94,4 @@ export declare function validateProofPlan(input: {
|
|
|
104
94
|
implementationReport: ScopedCompletionReport;
|
|
105
95
|
}): ProofPlanValidationResult;
|
|
106
96
|
export declare function runAcceptanceProofLoopAttempt(input: RunAcceptanceProofLoopAttemptInput): Promise<AcceptanceProofLoopOutcome>;
|
|
107
|
-
export declare function decideProofRouting(input: {
|
|
108
|
-
config: CodexOrchestratorConfig;
|
|
109
|
-
issue: GitHubIssue;
|
|
110
|
-
changedFiles: string[];
|
|
111
|
-
}): ProofRoutingDecision;
|
|
112
|
-
export declare function shouldApplyVisualProofGate(input: {
|
|
113
|
-
config: CodexOrchestratorConfig;
|
|
114
|
-
issue: GitHubIssue;
|
|
115
|
-
changedFiles: string[];
|
|
116
|
-
}): boolean;
|
|
117
|
-
export declare function classifyVisualProofDispatchTarget(input: {
|
|
118
|
-
config: CodexOrchestratorConfig;
|
|
119
|
-
issue: GitHubIssue;
|
|
120
|
-
changedFiles: string[];
|
|
121
|
-
}): VisualProofDispatchTarget;
|
|
122
|
-
export declare function isVisualProofDesirable(input: {
|
|
123
|
-
config: CodexOrchestratorConfig;
|
|
124
|
-
issue: GitHubIssue;
|
|
125
|
-
changedFiles: string[];
|
|
126
|
-
}): boolean;
|
|
127
|
-
export declare function runnerVisualProofPolicy(config: CodexOrchestratorConfig): {
|
|
128
|
-
commandTemplate?: string;
|
|
129
|
-
artifactDir: string;
|
|
130
|
-
envPassthrough: string[];
|
|
131
|
-
timeoutMs?: number;
|
|
132
|
-
minScreenshotArtifacts: number;
|
|
133
|
-
requireWhenDesirable: boolean;
|
|
134
|
-
blockOnMissingProof: boolean;
|
|
135
|
-
browserProof: {
|
|
136
|
-
scenarioPath?: string;
|
|
137
|
-
baseUrl?: string;
|
|
138
|
-
strictConsoleErrors: boolean;
|
|
139
|
-
strictNetworkFailures: boolean;
|
|
140
|
-
};
|
|
141
|
-
};
|
|
142
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":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"acceptance-proof-loop.d.ts","sourceRoot":"","sources":["../../../src/runner/acceptance-proof-loop.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
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
6
|
const proofPlanValidation = validateProofPlan(input);
|
|
@@ -77,34 +77,33 @@ export function planAcceptanceProofAttempt(input) {
|
|
|
77
77
|
}
|
|
78
78
|
export function validateProofPlan(input) {
|
|
79
79
|
const proofPlan = input.implementationReport.proofPlan;
|
|
80
|
-
const
|
|
80
|
+
const proofRequirement = resolveAcceptanceProofRequirement({ config: input.config, issue: input.issue }).mode;
|
|
81
81
|
const dispatchTarget = proofPlanDispatchTarget(proofPlan);
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
return { ok: false, blocker: visualStrategyDowngradeBlocker('browser'), retryable: true };
|
|
89
|
-
}
|
|
90
|
-
if (proofStrategy === 'visual' && dispatchTarget === 'none') {
|
|
91
|
-
return { ok: false, blocker: 'Invalid proofPlan: non-visual proof cannot satisfy visual strategy', retryable: true };
|
|
92
|
-
}
|
|
93
|
-
if (proofStrategy === 'non-visual-smoke' && (proofPlan.mode === 'browser-visual' || proofPlan.mode === 'mobile-visual')) {
|
|
94
|
-
return { ok: false, blocker: 'Invalid proofPlan: visual proof cannot satisfy non-visual proof strategy', retryable: true };
|
|
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
|
+
};
|
|
95
88
|
}
|
|
96
|
-
if (isNonVisualProofMode(proofPlan.mode)
|
|
97
|
-
&& (inferredDispatchTarget !== 'none' || changedFilesVisualTarget !== 'none')) {
|
|
98
|
-
const visualTarget = inferredDispatchTarget !== 'none' ? inferredDispatchTarget : changedFilesVisualTarget;
|
|
99
|
-
if (visualTarget === 'none') {
|
|
100
|
-
throw new Error('Expected visual proof target for non-visual proof plan downgrade.');
|
|
101
|
-
}
|
|
89
|
+
if (proofRequirement === 'non-visual-smoke' && !isNonVisualProofMode(proofPlan.mode)) {
|
|
102
90
|
return {
|
|
103
91
|
ok: false,
|
|
104
|
-
blocker:
|
|
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',
|
|
105
95
|
retryable: true,
|
|
106
96
|
};
|
|
107
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
|
+
}
|
|
108
107
|
return {
|
|
109
108
|
ok: true,
|
|
110
109
|
proofPlan,
|
|
@@ -383,188 +382,9 @@ function commandFailureSummary(adapterResult) {
|
|
|
383
382
|
const prefix = adapterResult.adapterKind === 'adaptive' ? 'Acceptance proof failed' : 'runner acceptance proof failed';
|
|
384
383
|
return `${prefix}: ${adapterResult.outputSummary || `exit ${adapterResult.exitCode}`}`;
|
|
385
384
|
}
|
|
386
|
-
export function decideProofRouting(input) {
|
|
387
|
-
const proofStrategy = resolveAcceptanceProofStrategy({ config: input.config, issue: input.issue }).strategy;
|
|
388
|
-
const dispatchTarget = proofStrategyDispatchTarget(input, proofStrategy);
|
|
389
|
-
const desirable = visualProofDesirable(input, proofStrategy);
|
|
390
|
-
const applies = acceptanceProofApplies(input, proofStrategy, desirable);
|
|
391
|
-
if (proofStrategy === 'none' || proofStrategy === 'non-visual-smoke') {
|
|
392
|
-
return {
|
|
393
|
-
applies,
|
|
394
|
-
desirable,
|
|
395
|
-
dispatchTarget,
|
|
396
|
-
proofStrategy,
|
|
397
|
-
action: 'skip',
|
|
398
|
-
reason: 'proof strategy disables browser/mobile visual proof',
|
|
399
|
-
};
|
|
400
|
-
}
|
|
401
|
-
if (dispatchTarget === 'browser' || dispatchTarget === 'mobile') {
|
|
402
|
-
return {
|
|
403
|
-
applies,
|
|
404
|
-
desirable,
|
|
405
|
-
dispatchTarget,
|
|
406
|
-
proofStrategy,
|
|
407
|
-
action: 'dispatch',
|
|
408
|
-
reason: `${dispatchTarget} proof target matched`,
|
|
409
|
-
};
|
|
410
|
-
}
|
|
411
|
-
if (applies && !desirable) {
|
|
412
|
-
return {
|
|
413
|
-
applies: true,
|
|
414
|
-
desirable,
|
|
415
|
-
dispatchTarget,
|
|
416
|
-
proofStrategy,
|
|
417
|
-
action: 'allow-non-visual',
|
|
418
|
-
reason: 'acceptance proof applies without browser or mobile dispatch',
|
|
419
|
-
};
|
|
420
|
-
}
|
|
421
|
-
if (applies || desirable) {
|
|
422
|
-
return {
|
|
423
|
-
applies,
|
|
424
|
-
desirable,
|
|
425
|
-
dispatchTarget,
|
|
426
|
-
proofStrategy,
|
|
427
|
-
action: 'error',
|
|
428
|
-
reason: 'visual proof is desirable but no browser or mobile dispatch target matched',
|
|
429
|
-
};
|
|
430
|
-
}
|
|
431
|
-
return {
|
|
432
|
-
applies: false,
|
|
433
|
-
desirable,
|
|
434
|
-
dispatchTarget,
|
|
435
|
-
proofStrategy,
|
|
436
|
-
action: 'error',
|
|
437
|
-
reason: 'proof routing did not match issue text or changed paths',
|
|
438
|
-
};
|
|
439
|
-
}
|
|
440
|
-
export function shouldApplyVisualProofGate(input) {
|
|
441
|
-
return decideProofRouting(input).applies;
|
|
442
|
-
}
|
|
443
|
-
export function classifyVisualProofDispatchTarget(input) {
|
|
444
|
-
return decideProofRouting(input).dispatchTarget;
|
|
445
|
-
}
|
|
446
|
-
export function isVisualProofDesirable(input) {
|
|
447
|
-
return decideProofRouting(input).desirable;
|
|
448
|
-
}
|
|
449
|
-
export function runnerVisualProofPolicy(config) {
|
|
450
|
-
const visualProof = config.reviewGates.visualProof;
|
|
451
|
-
const acceptanceProof = config.reviewGates.acceptanceProof;
|
|
452
|
-
const commandTemplate = acceptanceProof.runnerValidationCommand?.trim();
|
|
453
|
-
return {
|
|
454
|
-
commandTemplate: commandTemplate || undefined,
|
|
455
|
-
artifactDir: acceptanceProof.artifactDir,
|
|
456
|
-
envPassthrough: acceptanceProof.envPassthrough ?? [],
|
|
457
|
-
timeoutMs: acceptanceProof.runnerTimeoutMs,
|
|
458
|
-
minScreenshotArtifacts: visualProof.minScreenshotArtifacts,
|
|
459
|
-
requireWhenDesirable: visualProof.requireWhenDesirable ?? false,
|
|
460
|
-
blockOnMissingProof: true,
|
|
461
|
-
browserProof: {
|
|
462
|
-
strictConsoleErrors: acceptanceProof.browserProof?.strictConsoleErrors ?? false,
|
|
463
|
-
strictNetworkFailures: acceptanceProof.browserProof?.strictNetworkFailures ?? false,
|
|
464
|
-
scenarioPath: acceptanceProof.browserProof?.scenarioPath,
|
|
465
|
-
baseUrl: acceptanceProof.browserProof?.baseUrl,
|
|
466
|
-
},
|
|
467
|
-
};
|
|
468
|
-
}
|
|
469
|
-
function acceptanceProofApplies(input, proofStrategy, desirable) {
|
|
470
|
-
const acceptanceProof = input.config.reviewGates.acceptanceProof;
|
|
471
|
-
if (!acceptanceProof.enabled) {
|
|
472
|
-
return false;
|
|
473
|
-
}
|
|
474
|
-
if (proofStrategy === 'none' || proofStrategy === 'non-visual-smoke') {
|
|
475
|
-
return false;
|
|
476
|
-
}
|
|
477
|
-
if (proofStrategy === 'browser-visual' || proofStrategy === 'mobile-visual' || proofStrategy === 'visual') {
|
|
478
|
-
return true;
|
|
479
|
-
}
|
|
480
|
-
const issueText = `${input.issue.title}\n${input.issue.body}`;
|
|
481
|
-
const internalRunnerProofOnlyChange = input.changedFiles.length > 0
|
|
482
|
-
&& input.changedFiles.every(isInternalRunnerProofPath);
|
|
483
|
-
const issueNeedsAcceptanceProof = !internalRunnerProofOnlyChange
|
|
484
|
-
&& acceptanceProof.issueTextPatterns.some((pattern) => regexMatches(pattern, issueText));
|
|
485
|
-
const changedAcceptanceProofFiles = input.changedFiles.some((path) => acceptanceProof.changedPathGlobs.some((pattern) => globMatches(pattern, path)));
|
|
486
|
-
return issueNeedsAcceptanceProof || changedAcceptanceProofFiles || desirable;
|
|
487
|
-
}
|
|
488
|
-
function proofStrategyDispatchTarget(input, proofStrategy) {
|
|
489
|
-
if (proofStrategy === 'none' || proofStrategy === 'non-visual-smoke') {
|
|
490
|
-
return 'none';
|
|
491
|
-
}
|
|
492
|
-
if (proofStrategy === 'browser-visual') {
|
|
493
|
-
return 'browser';
|
|
494
|
-
}
|
|
495
|
-
if (proofStrategy === 'mobile-visual') {
|
|
496
|
-
return 'mobile';
|
|
497
|
-
}
|
|
498
|
-
return changedFilesVisualDispatchTarget(input);
|
|
499
|
-
}
|
|
500
|
-
function changedFilesVisualDispatchTarget(input) {
|
|
501
|
-
const normalizedFiles = input.changedFiles.map((path) => path.replaceAll('\\', '/').replace(/^\.\//u, ''));
|
|
502
|
-
const issueText = `${input.issue.title}\n${input.issue.body}`;
|
|
503
|
-
if (normalizedFiles.some(isMobileProofPath) || normalizedFiles.some((path) => isFlutterEntrypoint(path) && isMobileIssueText(issueText))) {
|
|
504
|
-
return 'mobile';
|
|
505
|
-
}
|
|
506
|
-
if (normalizedFiles.some((path) => input.config.reviewGates.visualProof.changedPathGlobs.some((pattern) => globMatches(pattern, path)))) {
|
|
507
|
-
return 'browser';
|
|
508
|
-
}
|
|
509
|
-
return 'none';
|
|
510
|
-
}
|
|
511
|
-
function proofPlanDispatchTarget(proofPlan) {
|
|
512
|
-
if (proofPlan.mode === 'browser-visual') {
|
|
513
|
-
return 'browser';
|
|
514
|
-
}
|
|
515
|
-
if (proofPlan.mode === 'mobile-visual') {
|
|
516
|
-
return 'mobile';
|
|
517
|
-
}
|
|
518
|
-
return 'none';
|
|
519
|
-
}
|
|
520
|
-
function isNonVisualProofMode(mode) {
|
|
521
|
-
return mode === 'non-visual-smoke' || mode === 'cli' || mode === 'api' || mode === 'worker';
|
|
522
|
-
}
|
|
523
|
-
function visualStrategyDowngradeBlocker(target) {
|
|
524
|
-
return `Invalid proofPlan: non-visual proof cannot satisfy ${target} visual strategy`;
|
|
525
|
-
}
|
|
526
|
-
function visualProofDesirable(input, proofStrategy) {
|
|
527
|
-
const visualProof = input.config.reviewGates.visualProof;
|
|
528
|
-
if (!visualProof.enabled) {
|
|
529
|
-
return false;
|
|
530
|
-
}
|
|
531
|
-
const issueText = `${input.issue.title}\n${input.issue.body}`;
|
|
532
|
-
const command = runnerVisualProofPolicy(input.config).commandTemplate;
|
|
533
|
-
if (proofStrategy === 'none' || proofStrategy === 'non-visual-smoke') {
|
|
534
|
-
return false;
|
|
535
|
-
}
|
|
536
|
-
if (proofStrategy === 'browser-visual' || proofStrategy === 'mobile-visual' || proofStrategy === 'visual') {
|
|
537
|
-
return Boolean(command);
|
|
538
|
-
}
|
|
539
|
-
const internalRunnerProofOnlyChange = input.changedFiles.length > 0
|
|
540
|
-
&& input.changedFiles.every(isInternalRunnerProofPath);
|
|
541
|
-
const issueNeedsVisualProof = visualProof.enabled
|
|
542
|
-
&& !internalRunnerProofOnlyChange
|
|
543
|
-
&& visualProof.issueTextPatterns.some((pattern) => regexMatches(pattern, issueText));
|
|
544
|
-
const changedProofFiles = input.changedFiles.filter((path) => visualProof.changedPathGlobs.some((pattern) => globMatches(pattern, path)));
|
|
545
|
-
return issueNeedsVisualProof || changedProofFiles.length > 0;
|
|
546
|
-
}
|
|
547
385
|
function hasAcceptanceProofProfile(config) {
|
|
548
386
|
return Boolean(config.codex.profiles?.['acceptance-proof']);
|
|
549
387
|
}
|
|
550
|
-
function isInternalRunnerProofPath(path) {
|
|
551
|
-
return /^src\/runner\/(?:acceptance-proof|visual-proof-runner)\.ts$/u.test(path)
|
|
552
|
-
|| /^test\/(?:acceptance-proof|visual-proof-runner)\.test\.ts$/u.test(path);
|
|
553
|
-
}
|
|
554
|
-
function isMobileProofPath(path) {
|
|
555
|
-
return /^(?:android|ios)\//u.test(path)
|
|
556
|
-
|| /\.(?:xcodeproj|xcworkspace)\//u.test(path)
|
|
557
|
-
|| /(?:^|\/)(?:build\.gradle|build\.gradle\.kts|gradlew|gradlew\.bat)$/u.test(path);
|
|
558
|
-
}
|
|
559
|
-
function isFlutterEntrypoint(path) {
|
|
560
|
-
return path === 'pubspec.yaml' || /^lib\/.+\.dart$/u.test(path);
|
|
561
|
-
}
|
|
562
|
-
function isMobileIssueText(text) {
|
|
563
|
-
return /\b(?:android|ios|iphone|ipad|flutter|mobile|emulator|apk|aab|dart)\b/iu.test(text);
|
|
564
|
-
}
|
|
565
|
-
function regexMatches(pattern, text) {
|
|
566
|
-
return new RegExp(pattern, 'iu').test(text);
|
|
567
|
-
}
|
|
568
388
|
function mergeProofArtifacts(left, right) {
|
|
569
389
|
const seen = new Set(left.map((artifact) => artifact.url ?? artifact.path ?? artifact.description));
|
|
570
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 './
|
|
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,
|
|
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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { decideProofRouting, } from './
|
|
1
|
+
import { decideProofRouting, } from './proof-routing.js';
|
|
2
2
|
import { parseBrowserVisualProofArgs, runBrowserVisualProofCommand } from './browser-visual-proof-command.js';
|
|
3
3
|
import { parseMobileVisualProofArgs, runMobileVisualProofCommand } from './mobile-visual-proof-command.js';
|
|
4
|
+
import { proofPlanModes } from './completion-report.js';
|
|
4
5
|
export async function runAutoVisualProofCommand(input) {
|
|
5
6
|
const env = input.env ?? process.env;
|
|
6
7
|
const issue = autoIssueFromEnv(env);
|
|
@@ -8,7 +9,13 @@ export async function runAutoVisualProofCommand(input) {
|
|
|
8
9
|
.split(/\r?\n/u)
|
|
9
10
|
.map((line) => line.trim())
|
|
10
11
|
.filter(Boolean);
|
|
11
|
-
const
|
|
12
|
+
const plannedTarget = validatedProofPlanTarget(env);
|
|
13
|
+
const routing = plannedTarget !== undefined
|
|
14
|
+
? {
|
|
15
|
+
action: plannedTarget === 'none' ? 'allow-non-visual' : 'dispatch',
|
|
16
|
+
dispatchTarget: plannedTarget,
|
|
17
|
+
}
|
|
18
|
+
: decideProofRouting({ config: input.config, issue, changedFiles });
|
|
12
19
|
const target = routing.dispatchTarget;
|
|
13
20
|
if (routing.action === 'dispatch' && target === 'browser') {
|
|
14
21
|
const parsed = parseBrowserVisualProofArgs(input.args, env);
|
|
@@ -29,6 +36,18 @@ export async function runAutoVisualProofCommand(input) {
|
|
|
29
36
|
}
|
|
30
37
|
throw new Error('visual-proof auto could not select browser or mobile proof from changed files. Provide web/mobile changed paths or use visual-proof browser/mobile explicitly.');
|
|
31
38
|
}
|
|
39
|
+
function validatedProofPlanTarget(env) {
|
|
40
|
+
const mode = env.CODEX_ORCHESTRATOR_PROOF_MODE;
|
|
41
|
+
if (!mode)
|
|
42
|
+
return undefined;
|
|
43
|
+
if (mode === 'browser-visual')
|
|
44
|
+
return 'browser';
|
|
45
|
+
if (mode === 'mobile-visual')
|
|
46
|
+
return 'mobile';
|
|
47
|
+
if (proofPlanModes.includes(mode))
|
|
48
|
+
return 'none';
|
|
49
|
+
throw new Error(`visual-proof auto received unsupported validated proof mode: ${mode}`);
|
|
50
|
+
}
|
|
32
51
|
function autoIssueFromEnv(env) {
|
|
33
52
|
const number = Number(env.CODEX_ORCHESTRATOR_ISSUE_NUMBER);
|
|
34
53
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-visual-proof-command.js","sourceRoot":"","sources":["../../../src/runner/auto-visual-proof-command.ts"],"names":[],"mappings":"AACA,OAAO,EACL,kBAAkB,GAEnB,MAAM,
|
|
1
|
+
{"version":3,"file":"auto-visual-proof-command.js","sourceRoot":"","sources":["../../../src/runner/auto-visual-proof-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,10 @@ export interface ValidationItem {
|
|
|
24
24
|
evidence?: ValidationEvidence;
|
|
25
25
|
}
|
|
26
26
|
export type ReviewHandoffRisk = 'low' | 'medium' | 'high';
|
|
27
|
+
export interface MaintainerOnlyCheck {
|
|
28
|
+
check: string;
|
|
29
|
+
reasonAgentCouldNotVerify: string;
|
|
30
|
+
}
|
|
27
31
|
export declare const scopedArtifactTypes: readonly ["screenshot", "ui-dump", "log", "smoke-output", "other"];
|
|
28
32
|
export type ScopedArtifactType = (typeof scopedArtifactTypes)[number];
|
|
29
33
|
export declare const proofPlanModes: readonly ["none", "non-visual-smoke", "cli", "api", "worker", "browser-visual", "mobile-visual"];
|
|
@@ -60,7 +64,8 @@ export interface ScopedCompletionReport {
|
|
|
60
64
|
implementedContract: string[];
|
|
61
65
|
proofByAcceptanceCriteria: string[];
|
|
62
66
|
reviewFocus: string[];
|
|
63
|
-
|
|
67
|
+
agentVerifiedChecks?: string[];
|
|
68
|
+
maintainerOnlyChecks?: MaintainerOnlyCheck[];
|
|
64
69
|
};
|
|
65
70
|
promotion?: {
|
|
66
71
|
reason: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"completion-report.d.ts","sourceRoot":"","sources":["../../../src/runner/completion-report.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsB,KAAK,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGjD,YAAY,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,iBAAiB,CAAC;AAC/D,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AAC/D,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,eAAe,CAAC;IACtB,GAAG,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,QAAQ,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5D,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,QAAQ,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/D;AAED,MAAM,MAAM,kBAAkB,GAAG,6BAA6B,CAAC;AAC/D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,gBAAgB,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,kBAAkB,CAAC;CAC/B;AACD,MAAM,MAAM,iBAAiB,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAC1D,eAAO,MAAM,mBAAmB,oEAAqE,CAAC;AACtG,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AACtE,eAAO,MAAM,cAAc,kGAQjB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAC5D,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,QAAQ,CAAC;AACzD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,YAAY,CAAC,EAAE,qBAAqB,CAAC;CACtC;AACD,MAAM,MAAM,oBAAoB,GAC5B,kBAAkB,GAClB,oBAAoB,GACpB,yBAAyB,GACzB,8BAA8B,CAAC;AAEnC,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,gBAAgB,CAAC;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,kBAAkB,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjG,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,iBAAiB,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,oBAAoB,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9E,aAAa,CAAC,EAAE;QACd,QAAQ,EAAE,iBAAiB,CAAC;QAC5B,SAAS,EAAE,iBAAiB,CAAC;QAC7B,mBAAmB,EAAE,MAAM,EAAE,CAAC;QAC9B,yBAAyB,EAAE,MAAM,EAAE,CAAC;QACpC,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,
|
|
1
|
+
{"version":3,"file":"completion-report.d.ts","sourceRoot":"","sources":["../../../src/runner/completion-report.ts"],"names":[],"mappings":"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"}
|
|
@@ -135,7 +135,32 @@ function assertReviewHandoff(value) {
|
|
|
135
135
|
assertStringArray(record.implementedContract, 'reviewHandoff.implementedContract');
|
|
136
136
|
assertStringArray(record.proofByAcceptanceCriteria, 'reviewHandoff.proofByAcceptanceCriteria');
|
|
137
137
|
assertStringArray(record.reviewFocus, 'reviewHandoff.reviewFocus');
|
|
138
|
-
|
|
138
|
+
if ('agentVerifiedChecks' in record) {
|
|
139
|
+
assertStringArray(record.agentVerifiedChecks, 'reviewHandoff.agentVerifiedChecks');
|
|
140
|
+
}
|
|
141
|
+
if ('maintainerOnlyChecks' in record) {
|
|
142
|
+
assertMaintainerOnlyChecks(record.maintainerOnlyChecks);
|
|
143
|
+
}
|
|
144
|
+
if ('humanReviewChecklist' in record) {
|
|
145
|
+
throw new Error('Invalid scoped completion report: reviewHandoff.humanReviewChecklist is not supported; use agentVerifiedChecks and maintainerOnlyChecks');
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
function assertMaintainerOnlyChecks(value) {
|
|
149
|
+
if (!Array.isArray(value)) {
|
|
150
|
+
throw new Error('Invalid scoped completion report: reviewHandoff.maintainerOnlyChecks must be an array');
|
|
151
|
+
}
|
|
152
|
+
value.forEach((item, index) => {
|
|
153
|
+
if (typeof item !== 'object' || item === null || Array.isArray(item)) {
|
|
154
|
+
throw new Error(`Invalid scoped completion report: reviewHandoff.maintainerOnlyChecks[${index}] must be an object`);
|
|
155
|
+
}
|
|
156
|
+
const record = item;
|
|
157
|
+
if (typeof record.check !== 'string' || record.check.trim().length === 0) {
|
|
158
|
+
throw new Error(`Invalid scoped completion report: reviewHandoff.maintainerOnlyChecks[${index}].check must be a non-empty string`);
|
|
159
|
+
}
|
|
160
|
+
if (typeof record.reasonAgentCouldNotVerify !== 'string' || record.reasonAgentCouldNotVerify.trim().length === 0) {
|
|
161
|
+
throw new Error(`Invalid scoped completion report: reviewHandoff.maintainerOnlyChecks[${index}].reasonAgentCouldNotVerify must be a non-empty string`);
|
|
162
|
+
}
|
|
163
|
+
});
|
|
139
164
|
}
|
|
140
165
|
function assertPlanAutoCompletionReport(value) {
|
|
141
166
|
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|