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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proof-routing.d.ts","sourceRoot":"","sources":["../../../src/runner/proof-routing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,8BAA8B,EAAE,MAAM,qBAAqB,CAAC;AAErE,MAAM,MAAM,yBAAyB,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AACtE,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,UAAU,GAAG,kBAAkB,GAAG,OAAO,CAAC;AAEpF,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,yBAAyB,CAAC;IAC1C,aAAa,EAAE,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC,UAAU,CAAC,CAAC;IAC7E,MAAM,EAAE,kBAAkB,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE;IACxC,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,GAAG,oBAAoB,CA0DvB;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE;IAChD,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,GAAG,OAAO,CAEV;AAED,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IACvD,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,GAAG,yBAAyB,CAE5B;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,GAAG,OAAO,CAEV;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,uBAAuB,GAAG;IACxE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,YAAY,EAAE;QACZ,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,mBAAmB,EAAE,OAAO,CAAC;QAC7B,qBAAqB,EAAE,OAAO,CAAC;KAChC,CAAC;CACH,CAmBA;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE;IACL,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,EACD,aAAa,EAAE,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC,UAAU,CAAC,EAC5E,SAAS,EAAE,OAAO,GACjB,OAAO,CAqBT;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,EAAE,aAAa,EAAE,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC,UAAU,CAAC,GAAG,yBAAyB,CAW1G;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE;IACtD,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,GAAG,yBAAyB,CAU5B;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,SAAS,GAAG,yBAAyB,CAQvF;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAEjE;AAED,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,OAAO,CAAC,yBAAyB,EAAE,MAAM,CAAC,GAAG,MAAM,CAEzG;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,EAAE,aAAa,EAAE,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC,UAAU,CAAC,GAAG,OAAO,CAwBxF"}
@@ -0,0 +1,182 @@
1
+ import { globMatches } from '../path-policy.js';
2
+ import { resolveAcceptanceProofStrategy } from './proof-strategy.js';
3
+ export function decideProofRouting(input) {
4
+ const proofStrategy = resolveAcceptanceProofStrategy({ config: input.config, issue: input.issue }).strategy;
5
+ const dispatchTarget = proofStrategyDispatchTarget(input, proofStrategy);
6
+ const desirable = visualProofDesirable(input, proofStrategy);
7
+ const applies = acceptanceProofApplies(input, proofStrategy, desirable);
8
+ if (proofStrategy === 'none' || proofStrategy === 'non-visual-smoke') {
9
+ return {
10
+ applies,
11
+ desirable,
12
+ dispatchTarget,
13
+ proofStrategy,
14
+ action: 'skip',
15
+ reason: 'proof strategy disables browser/mobile visual proof',
16
+ };
17
+ }
18
+ if (dispatchTarget === 'browser' || dispatchTarget === 'mobile') {
19
+ return {
20
+ applies,
21
+ desirable,
22
+ dispatchTarget,
23
+ proofStrategy,
24
+ action: 'dispatch',
25
+ reason: `${dispatchTarget} proof target matched`,
26
+ };
27
+ }
28
+ if (applies && !desirable) {
29
+ return {
30
+ applies: true,
31
+ desirable,
32
+ dispatchTarget,
33
+ proofStrategy,
34
+ action: 'allow-non-visual',
35
+ reason: 'acceptance proof applies without browser or mobile dispatch',
36
+ };
37
+ }
38
+ if (applies || desirable) {
39
+ return {
40
+ applies,
41
+ desirable,
42
+ dispatchTarget,
43
+ proofStrategy,
44
+ action: 'error',
45
+ reason: 'visual proof is desirable but no browser or mobile dispatch target matched',
46
+ };
47
+ }
48
+ return {
49
+ applies: false,
50
+ desirable,
51
+ dispatchTarget,
52
+ proofStrategy,
53
+ action: 'error',
54
+ reason: 'proof routing did not match issue text or changed paths',
55
+ };
56
+ }
57
+ export function shouldApplyVisualProofGate(input) {
58
+ return decideProofRouting(input).applies;
59
+ }
60
+ export function classifyVisualProofDispatchTarget(input) {
61
+ return decideProofRouting(input).dispatchTarget;
62
+ }
63
+ export function isVisualProofDesirable(input) {
64
+ return decideProofRouting(input).desirable;
65
+ }
66
+ export function runnerVisualProofPolicy(config) {
67
+ const visualProof = config.reviewGates.visualProof;
68
+ const acceptanceProof = config.reviewGates.acceptanceProof;
69
+ const commandTemplate = acceptanceProof.runnerValidationCommand?.trim();
70
+ return {
71
+ commandTemplate: commandTemplate || undefined,
72
+ artifactDir: acceptanceProof.artifactDir,
73
+ envPassthrough: acceptanceProof.envPassthrough ?? [],
74
+ timeoutMs: acceptanceProof.runnerTimeoutMs,
75
+ minScreenshotArtifacts: visualProof.minScreenshotArtifacts,
76
+ requireWhenDesirable: visualProof.requireWhenDesirable ?? false,
77
+ blockOnMissingProof: true,
78
+ browserProof: {
79
+ strictConsoleErrors: acceptanceProof.browserProof?.strictConsoleErrors ?? false,
80
+ strictNetworkFailures: acceptanceProof.browserProof?.strictNetworkFailures ?? false,
81
+ scenarioPath: acceptanceProof.browserProof?.scenarioPath,
82
+ baseUrl: acceptanceProof.browserProof?.baseUrl,
83
+ },
84
+ };
85
+ }
86
+ export function acceptanceProofApplies(input, proofStrategy, desirable) {
87
+ const acceptanceProof = input.config.reviewGates.acceptanceProof;
88
+ if (!acceptanceProof.enabled) {
89
+ return false;
90
+ }
91
+ if (proofStrategy === 'none' || proofStrategy === 'non-visual-smoke') {
92
+ return false;
93
+ }
94
+ if (proofStrategy === 'browser-visual' || proofStrategy === 'mobile-visual' || proofStrategy === 'visual') {
95
+ return true;
96
+ }
97
+ const issueText = `${input.issue.title}\n${input.issue.body}`;
98
+ const internalRunnerProofOnlyChange = input.changedFiles.length > 0
99
+ && input.changedFiles.every(isInternalRunnerProofPath);
100
+ const issueNeedsAcceptanceProof = !internalRunnerProofOnlyChange
101
+ && acceptanceProof.issueTextPatterns.some((pattern) => regexMatches(pattern, issueText));
102
+ const changedAcceptanceProofFiles = input.changedFiles.some((path) => acceptanceProof.changedPathGlobs.some((pattern) => globMatches(pattern, path)));
103
+ return issueNeedsAcceptanceProof || changedAcceptanceProofFiles || desirable;
104
+ }
105
+ export function proofStrategyDispatchTarget(input, proofStrategy) {
106
+ if (proofStrategy === 'none' || proofStrategy === 'non-visual-smoke') {
107
+ return 'none';
108
+ }
109
+ if (proofStrategy === 'browser-visual') {
110
+ return 'browser';
111
+ }
112
+ if (proofStrategy === 'mobile-visual') {
113
+ return 'mobile';
114
+ }
115
+ return changedFilesVisualDispatchTarget(input);
116
+ }
117
+ export function changedFilesVisualDispatchTarget(input) {
118
+ const normalizedFiles = input.changedFiles.map((path) => path.replaceAll('\\', '/').replace(/^\.\//u, ''));
119
+ const issueText = `${input.issue.title}\n${input.issue.body}`;
120
+ if (normalizedFiles.some(isMobileProofPath) || normalizedFiles.some((path) => isFlutterEntrypoint(path) && isMobileIssueText(issueText))) {
121
+ return 'mobile';
122
+ }
123
+ if (normalizedFiles.some((path) => input.config.reviewGates.visualProof.changedPathGlobs.some((pattern) => globMatches(pattern, path)))) {
124
+ return 'browser';
125
+ }
126
+ return 'none';
127
+ }
128
+ export function proofPlanDispatchTarget(proofPlan) {
129
+ if (proofPlan.mode === 'browser-visual') {
130
+ return 'browser';
131
+ }
132
+ if (proofPlan.mode === 'mobile-visual') {
133
+ return 'mobile';
134
+ }
135
+ return 'none';
136
+ }
137
+ export function isNonVisualProofMode(mode) {
138
+ return mode === 'non-visual-smoke' || mode === 'cli' || mode === 'api' || mode === 'worker';
139
+ }
140
+ export function visualStrategyDowngradeBlocker(target) {
141
+ return `Invalid proofPlan: non-visual proof cannot satisfy ${target} visual strategy`;
142
+ }
143
+ export function visualProofDesirable(input, proofStrategy) {
144
+ const visualProof = input.config.reviewGates.visualProof;
145
+ if (!visualProof.enabled) {
146
+ return false;
147
+ }
148
+ const issueText = `${input.issue.title}\n${input.issue.body}`;
149
+ const command = runnerVisualProofPolicy(input.config).commandTemplate;
150
+ if (proofStrategy === 'none' || proofStrategy === 'non-visual-smoke') {
151
+ return false;
152
+ }
153
+ if (proofStrategy === 'browser-visual' || proofStrategy === 'mobile-visual' || proofStrategy === 'visual') {
154
+ return Boolean(command);
155
+ }
156
+ const internalRunnerProofOnlyChange = input.changedFiles.length > 0
157
+ && input.changedFiles.every(isInternalRunnerProofPath);
158
+ const issueNeedsVisualProof = visualProof.enabled
159
+ && !internalRunnerProofOnlyChange
160
+ && visualProof.issueTextPatterns.some((pattern) => regexMatches(pattern, issueText));
161
+ const changedProofFiles = input.changedFiles.filter((path) => visualProof.changedPathGlobs.some((pattern) => globMatches(pattern, path)));
162
+ return issueNeedsVisualProof || changedProofFiles.length > 0;
163
+ }
164
+ function isInternalRunnerProofPath(path) {
165
+ return /^src\/runner\/(?:acceptance-proof|proof-routing|visual-proof-runner)\.ts$/u.test(path)
166
+ || /^test\/(?:acceptance-proof|visual-proof-runner)\.test\.ts$/u.test(path);
167
+ }
168
+ function isMobileProofPath(path) {
169
+ return /^(?:android|ios)\//u.test(path)
170
+ || /\.(?:xcodeproj|xcworkspace)\//u.test(path)
171
+ || /(?:^|\/)(?:build\.gradle|build\.gradle\.kts|gradlew|gradlew\.bat)$/u.test(path);
172
+ }
173
+ function isFlutterEntrypoint(path) {
174
+ return path === 'pubspec.yaml' || /^lib\/.+\.dart$/u.test(path);
175
+ }
176
+ function isMobileIssueText(text) {
177
+ return /\b(?:android|ios|iphone|ipad|flutter|mobile|emulator|apk|aab|dart)\b/iu.test(text);
178
+ }
179
+ function regexMatches(pattern, text) {
180
+ return new RegExp(pattern, 'iu').test(text);
181
+ }
182
+ //# sourceMappingURL=proof-routing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proof-routing.js","sourceRoot":"","sources":["../../../src/runner/proof-routing.ts"],"names":[],"mappings":"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"}
@@ -4,9 +4,18 @@ export interface ResolvedProofStrategy {
4
4
  strategy: AcceptanceProofStrategy;
5
5
  source: 'issue contract' | 'config default';
6
6
  }
7
+ export type AcceptanceProofRequirement = Exclude<AcceptanceProofStrategy, 'auto'>;
8
+ export interface ResolvedAcceptanceProofRequirement {
9
+ mode: AcceptanceProofRequirement | null;
10
+ source: ResolvedProofStrategy['source'];
11
+ }
7
12
  export declare function resolveAcceptanceProofStrategy(input: {
8
13
  config: CodexOrchestratorConfig;
9
14
  issue: GitHubIssue;
10
15
  }): ResolvedProofStrategy;
16
+ export declare function resolveAcceptanceProofRequirement(input: {
17
+ config: CodexOrchestratorConfig;
18
+ issue: GitHubIssue;
19
+ }): ResolvedAcceptanceProofRequirement;
11
20
  export declare function parseIssueProofStrategy(text: string): AcceptanceProofStrategy | undefined;
12
21
  //# sourceMappingURL=proof-strategy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"proof-strategy.d.ts","sourceRoot":"","sources":["../../../src/runner/proof-strategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,uBAAuB,EAAE,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC5H,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,uBAAuB,CAAC;IAClC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;CAC7C;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE;IACpD,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;CACpB,GAAG,qBAAqB,CASxB;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAQzF"}
1
+ {"version":3,"file":"proof-strategy.d.ts","sourceRoot":"","sources":["../../../src/runner/proof-strategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,uBAAuB,EAAE,KAAK,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC5H,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,uBAAuB,CAAC;IAClC,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;CAC7C;AAED,MAAM,MAAM,0BAA0B,GAAG,OAAO,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC;AAElF,MAAM,WAAW,kCAAkC;IACjD,IAAI,EAAE,0BAA0B,GAAG,IAAI,CAAC;IACxC,MAAM,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;CACzC;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE;IACpD,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;CACpB,GAAG,qBAAqB,CASxB;AAED,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IACvD,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;CACpB,GAAG,kCAAkC,CAMrC;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAQzF"}
@@ -9,6 +9,13 @@ export function resolveAcceptanceProofStrategy(input) {
9
9
  source: 'config default',
10
10
  };
11
11
  }
12
+ export function resolveAcceptanceProofRequirement(input) {
13
+ const resolved = resolveAcceptanceProofStrategy(input);
14
+ return {
15
+ mode: resolved.strategy === 'auto' ? null : resolved.strategy,
16
+ source: resolved.source,
17
+ };
18
+ }
12
19
  export function parseIssueProofStrategy(text) {
13
20
  const match = text.match(/(?:^|\n)\s*(?:[-*]\s*)?(?:\*\*)?(?:proof\s*strategy|proofStrategy)(?:\*\*)?\s*:\s*([a-z-]+)\s*(?:\n|$)/iu);
14
21
  const value = match?.[1]?.toLowerCase();
@@ -1 +1 @@
1
- {"version":3,"file":"proof-strategy.js","sourceRoot":"","sources":["../../../src/runner/proof-strategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAA8D,MAAM,qBAAqB,CAAC;AAQ5H,MAAM,UAAU,8BAA8B,CAAC,KAG9C;IACC,MAAM,QAAQ,GAAG,uBAAuB,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACtF,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC1D,CAAC;IACD,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,aAAa;QAChE,MAAM,EAAE,gBAAgB;KACzB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CACtB,0GAA0G,CAC3G,CAAC;IACF,MAAM,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;IACxC,OAAO,yBAAyB,CAAC,QAAQ,CAAC,KAAgC,CAAC;QACzE,CAAC,CAAC,KAAgC;QAClC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"proof-strategy.js","sourceRoot":"","sources":["../../../src/runner/proof-strategy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAA8D,MAAM,qBAAqB,CAAC;AAe5H,MAAM,UAAU,8BAA8B,CAAC,KAG9C;IACC,MAAM,QAAQ,GAAG,uBAAuB,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACtF,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC1D,CAAC;IACD,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,aAAa;QAChE,MAAM,EAAE,gBAAgB;KACzB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,KAGjD;IACC,MAAM,QAAQ,GAAG,8BAA8B,CAAC,KAAK,CAAC,CAAC;IACvD,OAAO;QACL,IAAI,EAAE,QAAQ,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ;QAC7D,MAAM,EAAE,QAAQ,CAAC,MAAM;KACxB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CACtB,0GAA0G,CAC3G,CAAC;IACF,MAAM,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;IACxC,OAAO,yBAAyB,CAAC,QAAQ,CAAC,KAAgC,CAAC;QACzE,CAAC,CAAC,KAAgC;QAClC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC"}
@@ -1,49 +1,13 @@
1
1
  import type { CodexOrchestratorConfig } from '../config/schema.js';
2
2
  import type { GitHubIssue } from '../github/issues.js';
3
- import { type ProofRoutingDecision, type VisualProofDispatchTarget } from './acceptance-proof-loop.js';
4
3
  import type { RunnerValidationLine } from './handoff-evidence.js';
5
4
  export declare function buildVisualProofPromptLines(config: CodexOrchestratorConfig, issue: GitHubIssue): string[];
6
5
  export declare function buildQualityGatePromptLines(config: CodexOrchestratorConfig): string[];
7
- export declare function shouldApplyVisualProofGate(input: {
8
- config: CodexOrchestratorConfig;
9
- issue: GitHubIssue;
10
- changedFiles: string[];
11
- }): boolean;
12
- export type { ProofRoutingAction, ProofRoutingDecision, VisualProofDispatchTarget } from './acceptance-proof-loop.js';
13
- export declare function decideProofRouting(input: {
14
- config: CodexOrchestratorConfig;
15
- issue: GitHubIssue;
16
- changedFiles: string[];
17
- }): ProofRoutingDecision;
18
- export declare function classifyVisualProofDispatchTarget(input: {
19
- config: CodexOrchestratorConfig;
20
- issue: GitHubIssue;
21
- changedFiles: string[];
22
- }): VisualProofDispatchTarget;
23
- export declare function isVisualProofDesirable(input: {
24
- config: CodexOrchestratorConfig;
25
- issue: GitHubIssue;
26
- changedFiles: string[];
27
- }): boolean;
6
+ export { classifyVisualProofDispatchTarget, decideProofRouting, isVisualProofDesirable, runnerVisualProofPolicy, shouldApplyVisualProofGate, type ProofRoutingAction, type ProofRoutingDecision, type VisualProofDispatchTarget, } from './proof-routing.js';
28
7
  export declare function hasPassedValidation(validation: RunnerValidationLine[], patterns: string[]): boolean;
29
8
  export declare function hasPassedTddValidation(validation: RunnerValidationLine[], patterns: string[]): boolean;
30
9
  export declare function validationText(line: RunnerValidationLine): string;
31
10
  export declare function isStrongVisualValidation(line: RunnerValidationLine): boolean;
32
11
  export declare function isRunnerVisualValidation(line: RunnerValidationLine): boolean;
33
12
  export declare function regexMatches(pattern: string, text: string): boolean;
34
- export declare function runnerVisualProofPolicy(config: CodexOrchestratorConfig): {
35
- commandTemplate?: string;
36
- artifactDir: string;
37
- envPassthrough: string[];
38
- timeoutMs?: number;
39
- minScreenshotArtifacts: number;
40
- requireWhenDesirable: boolean;
41
- blockOnMissingProof: boolean;
42
- browserProof: {
43
- scenarioPath?: string;
44
- baseUrl?: string;
45
- strictConsoleErrors: boolean;
46
- strictNetworkFailures: boolean;
47
- };
48
- };
49
13
  //# sourceMappingURL=review-gate-policy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"review-gate-policy.d.ts","sourceRoot":"","sources":["../../../src/runner/review-gate-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAML,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC/B,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,uBAAuB,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,EAAE,CAiEzG;AAkDD,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,uBAAuB,GAAG,MAAM,EAAE,CAerF;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE;IAChD,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,GAAG,OAAO,CAEV;AAED,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAEtH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE;IACxC,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,GAAG,oBAAoB,CAEvB;AAED,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IACvD,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,GAAG,yBAAyB,CAE5B;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB,GAAG,OAAO,CAEV;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,oBAAoB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAInG;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,oBAAoB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAoBtG;AAaD,wBAAgB,cAAc,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAEjE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAE5E;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAE5E;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,uBAAuB,GAAG;IACxE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,YAAY,EAAE;QACZ,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,mBAAmB,EAAE,OAAO,CAAC;QAC7B,qBAAqB,EAAE,OAAO,CAAC;KAChC,CAAC;CACH,CAEA"}
1
+ {"version":3,"file":"review-gate-policy.d.ts","sourceRoot":"","sources":["../../../src/runner/review-gate-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAQvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,uBAAuB,EAAE,KAAK,EAAE,WAAW,GAAG,MAAM,EAAE,CAoFzG;AA4FD,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,uBAAuB,GAAG,MAAM,EAAE,CAerF;AAED,OAAO,EACL,iCAAiC,EACjC,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,0BAA0B,EAC1B,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,GAC/B,MAAM,oBAAoB,CAAC;AAE5B,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,oBAAoB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAInG;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,oBAAoB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAoBtG;AAaD,wBAAgB,cAAc,CAAC,IAAI,EAAE,oBAAoB,GAAG,MAAM,CAEjE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAE5E;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAE5E;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnE"}
@@ -1,5 +1,5 @@
1
1
  import { uiEvidenceFailureDimensions } from './acceptance-proof.js';
2
- import { classifyVisualProofDispatchTarget as planVisualProofDispatchTarget, decideProofRouting as planProofRouting, isVisualProofDesirable as planVisualProofDesirable, runnerVisualProofPolicy as planRunnerVisualProofPolicy, shouldApplyVisualProofGate as planShouldApplyVisualProofGate, } from './acceptance-proof-loop.js';
2
+ import { decideProofRouting, runnerVisualProofPolicy, } from './proof-routing.js';
3
3
  import { resolveAcceptanceProofStrategy } from './proof-strategy.js';
4
4
  export function buildVisualProofPromptLines(config, issue) {
5
5
  const acceptanceProof = config.reviewGates.acceptanceProof;
@@ -9,6 +9,35 @@ export function buildVisualProofPromptLines(config, issue) {
9
9
  const routing = decideProofRouting({ config, issue, changedFiles: [] });
10
10
  const issueNumber = issue.number;
11
11
  const strategyLines = proofStrategyPromptLines(proofStrategy);
12
+ if (proofStrategy.strategy === 'auto') {
13
+ const autoLines = [
14
+ ...strategyLines,
15
+ 'Path and issue-text matches make Acceptance Proof applicable but do not select its proof mode.',
16
+ 'Choose the narrowest proofPlan mode from the acceptance behavior: use browser/mobile visual proof only for rendered or device-visible behavior, and use CLI/API/worker/non-visual smoke evidence for non-visual behavior.',
17
+ `Save any proof artifacts under ${policy.artifactDir}/issue-${issueNumber}/ and map proofPlan.validationCommands or proofPlan.requiredArtifacts to the concrete evidence.`,
18
+ 'Do not create browser/mobile routing markers, placeholder UI files, screenshot scenarios, or visual-proof shims merely because changed files live in a frontend or mobile directory.',
19
+ ];
20
+ if (!command) {
21
+ return [
22
+ ...autoLines,
23
+ 'If proofPlan selects browser-visual or mobile-visual, prepare the corresponding Proof Report uiEvidence contract and runner-owned browser or device proof inputs.',
24
+ 'For browser visual proof, prefer a Playwright-based proof script; for mobile visual proof, use runner-owned device-backed proof.',
25
+ ...androidMobileProofPromptLines(),
26
+ ...iosMobileProofPromptLines(),
27
+ ];
28
+ }
29
+ return [
30
+ ...autoLines,
31
+ ...runnerOwnedVisualProofCommandPromptLines({
32
+ acceptanceProof,
33
+ artifactDir: policy.artifactDir,
34
+ command,
35
+ envNames: policy.envPassthrough,
36
+ issueNumber,
37
+ conditional: true,
38
+ }),
39
+ ];
40
+ }
12
41
  if (routing.proofStrategy === 'non-visual-smoke') {
13
42
  return [
14
43
  ...strategyLines,
@@ -24,6 +53,14 @@ export function buildVisualProofPromptLines(config, issue) {
24
53
  'Do not create browser/mobile routing markers, placeholder UI files, screenshot scenarios, emulator scripts, or other visual-proof shims.',
25
54
  ];
26
55
  }
56
+ if (routing.action === 'allow-non-visual') {
57
+ return [
58
+ ...strategyLines,
59
+ `For acceptance proof, save non-visual smoke, test, log, or machine-readable artifacts under ${policy.artifactDir}/issue-${issueNumber}/ and include them as log, smoke-output, or other artifacts.`,
60
+ 'Do not create browser/mobile routing markers, placeholder UI files, screenshot scenarios, emulator scripts, or other visual-proof shims just to satisfy the configured runner-owned visual proof command.',
61
+ 'Do not claim runner-owned visual proof will run for this non-visual proof route; use proofPlan.validationCommands or proofPlan.requiredArtifacts to identify the concrete non-visual evidence.',
62
+ ];
63
+ }
27
64
  if (!command) {
28
65
  return [
29
66
  ...strategyLines,
@@ -36,16 +73,32 @@ export function buildVisualProofPromptLines(config, issue) {
36
73
  'If acceptance proof is not possible in this environment, state that explicitly in skippedChecks along with the concrete reason (missing dependencies, missing credentials, dev server cannot start, etc.).',
37
74
  ];
38
75
  }
39
- const envNames = policy.envPassthrough;
40
- const loginEnvLine = envNames.length > 0
41
- ? `The runner acceptance proof command will receive these project environment variables when they exist: ${envNames.join(', ')}. Use them for login if authentication is required; never hardcode credentials.`
42
- : 'If authentication is required, make the acceptance proof script read credentials from environment variables configured in reviewGates.acceptanceProof.envPassthrough; never hardcode credentials.';
43
76
  return [
44
77
  ...strategyLines,
45
- `For acceptance proof, prepare proof artifacts under ${policy.artifactDir}/issue-${issueNumber}/ and include them as screenshot, ui-dump, log, smoke-output, or other artifacts when you create them.`,
46
- `After your run, the runner will execute this visual proof command outside the child Codex sandbox as the configured acceptance proof command: ${command}.`,
47
- 'Prepare any project files this command needs, but do not execute this runner-owned command yourself or start long-lived browser/dev-server proof loops from child Codex.',
48
- `Proof script repair is allowed only in these proof-owned paths: ${acceptanceProof.proofOwnedPathGlobs.join(', ')}.`,
78
+ ...runnerOwnedVisualProofCommandPromptLines({
79
+ acceptanceProof,
80
+ artifactDir: policy.artifactDir,
81
+ command,
82
+ envNames: policy.envPassthrough,
83
+ issueNumber,
84
+ conditional: false,
85
+ }),
86
+ ];
87
+ }
88
+ function runnerOwnedVisualProofCommandPromptLines(input) {
89
+ const executionLine = input.conditional
90
+ ? `If proofPlan selects browser-visual or mobile-visual, the runner will execute this configured acceptance proof command outside the child Codex sandbox: ${input.command}.`
91
+ : `After your run, the runner will execute this visual proof command outside the child Codex sandbox as the configured acceptance proof command: ${input.command}.`;
92
+ const loginEnvLine = input.envNames.length > 0
93
+ ? `The runner acceptance proof command will receive these project environment variables when they exist: ${input.envNames.join(', ')}. Use them for login if authentication is required; never hardcode credentials.`
94
+ : 'If authentication is required, make the acceptance proof script read credentials from environment variables configured in reviewGates.acceptanceProof.envPassthrough; never hardcode credentials.';
95
+ return [
96
+ `For acceptance proof, prepare proof artifacts under ${input.artifactDir}/issue-${input.issueNumber}/ and include them as screenshot, ui-dump, log, smoke-output, or other artifacts when you create them.`,
97
+ executionLine,
98
+ input.conditional
99
+ ? 'Prepare runner-owned browser or mobile proof inputs only when the selected proofPlan is visual; otherwise map concrete non-visual evidence in the completion report.'
100
+ : 'Prepare any project files this command needs, but do not execute this runner-owned command yourself or start long-lived browser/dev-server proof loops from child Codex.',
101
+ `Proof script repair is allowed only in these proof-owned paths: ${input.acceptanceProof.proofOwnedPathGlobs.join(', ')}.`,
49
102
  'Product-code changes made during the proof phase are blockers; route missing behavior back through implementation instead.',
50
103
  'Every required acceptance criterion must map to high-confidence artifact evidence before Draft PR Handoff.',
51
104
  'For visual/UI work, screenshots and UI dumps require a Proof Report uiEvidence contract with workflowScope, viewportCoverage, artifactFreshness, layoutReview, copyReview, and sourceInputs.',
@@ -125,18 +178,7 @@ export function buildQualityGatePromptLines(config) {
125
178
  `Run cleanup-review before code-review when the runtime change touches at least ${quality.cleanupReview.runtimeFileThreshold} runtime files, and report it as a passed validation line.`,
126
179
  ];
127
180
  }
128
- export function shouldApplyVisualProofGate(input) {
129
- return planShouldApplyVisualProofGate(input);
130
- }
131
- export function decideProofRouting(input) {
132
- return planProofRouting(input);
133
- }
134
- export function classifyVisualProofDispatchTarget(input) {
135
- return planVisualProofDispatchTarget(input);
136
- }
137
- export function isVisualProofDesirable(input) {
138
- return planVisualProofDesirable(input);
139
- }
181
+ export { classifyVisualProofDispatchTarget, decideProofRouting, isVisualProofDesirable, runnerVisualProofPolicy, shouldApplyVisualProofGate, } from './proof-routing.js';
140
182
  export function hasPassedValidation(validation, patterns) {
141
183
  return validation.some((line) => line.status === 'passed' && patterns.some((pattern) => regexMatches(pattern, validationText(line))));
142
184
  }
@@ -179,9 +221,6 @@ export function isRunnerVisualValidation(line) {
179
221
  export function regexMatches(pattern, text) {
180
222
  return new RegExp(pattern, 'iu').test(text);
181
223
  }
182
- export function runnerVisualProofPolicy(config) {
183
- return planRunnerVisualProofPolicy(config);
184
- }
185
224
  function hasTddRedEvidence(text) {
186
225
  return /\bred\s*:/iu.test(text)
187
226
  || /\bred\b[\s\S]{0,160}\bfail(?:ed|ing)?\b/iu.test(text)
@@ -1 +1 @@
1
- {"version":3,"file":"review-gate-policy.js","sourceRoot":"","sources":["../../../src/runner/review-gate-policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review-gate-policy.js","sourceRoot":"","sources":["../../../src/runner/review-gate-policy.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"review-gates.d.ts","sourceRoot":"","sources":["../../../src/runner/review-gates.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAOvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAaxD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,oBAAoB,EAAE,CAAC;IACnC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,EAAE,sBAAsB,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;CAC5B;AAED,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAErE,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACnD,MAAM,EAAE,uBAAuB,CAAC;IAChC,MAAM,EAAE,wBAAwB,CAAC;CAClC,GAAG,gBAAgB,CAMnB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,eAAe,GAAG,gBAAgB,CAyF5E"}
1
+ {"version":3,"file":"review-gates.d.ts","sourceRoot":"","sources":["../../../src/runner/review-gates.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAOvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAcxD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,EAAE,oBAAoB,EAAE,CAAC;IACnC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,EAAE,sBAAsB,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;CAC5B;AAED,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAErE,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACnD,MAAM,EAAE,uBAAuB,CAAC;IAChC,MAAM,EAAE,wBAAwB,CAAC;CAClC,GAAG,gBAAgB,CAMnB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,eAAe,GAAG,gBAAgB,CA8F5E"}
@@ -1,6 +1,7 @@
1
1
  import { existsSync } from 'node:fs';
2
2
  import { join } from 'node:path';
3
3
  import { acceptsScreenshotArtifactPath, classifyChangedPaths, globMatches, isRunnerVisualProofCodeArtifactPath, } from '../path-policy.js';
4
+ import { isNonVisualProofMode } from './proof-routing.js';
4
5
  import { hasPassedTddValidation, hasPassedValidation, isVisualProofDesirable, isRunnerVisualValidation, isStrongVisualValidation, runnerVisualProofPolicy, shouldApplyVisualProofGate, } from './review-gate-policy.js';
5
6
  export { shouldApplyVisualProofGate } from './review-gate-policy.js';
6
7
  export function evaluateParentRiskRoutingGate(input) {
@@ -22,6 +23,10 @@ export function evaluateReviewGates(input) {
22
23
  if (input.config.reviewGates.riskRouting.mode === 'block') {
23
24
  blockers.push(...riskRoutingFindings.map((finding) => runnerBlocker('risk-routing-policy', `Risk routing gate requires: ${finding}.`)));
24
25
  }
26
+ const proofMode = input.report.proofPlan.mode;
27
+ if (proofMode === 'none' || isNonVisualProofMode(proofMode)) {
28
+ return reviewGateResult(reasons, warnings, blockers);
29
+ }
25
30
  const visualProofDesirable = isVisualProofDesirable(input);
26
31
  const visualProofGateApplies = shouldApplyVisualProofGate(input);
27
32
  if (!visualProofDesirable && !visualProofGateApplies) {
@@ -1 +1 @@
1
- {"version":3,"file":"review-gates.js","sourceRoot":"","sources":["../../../src/runner/review-gates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review-gates.js","sourceRoot":"","sources":["../../../src/runner/review-gates.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"visual-proof-runner.d.ts","sourceRoot":"","sources":["../../../src/runner/visual-proof-runner.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAIL,KAAK,8BAA8B,EACpC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAW/E,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,sBAAsB,CAAC;IAC/B,aAAa,EAAE,oBAAoB,CAAC;CACrC;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,oBAAoB,EAAE,CAAC;IACnC,SAAS,EAAE,sBAAsB,CAAC,WAAW,CAAC,CAAC;IAC/C,sBAAsB,CAAC,EAAE,8BAA8B,CAAC;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CAAC,4BAA4B,GAAG,SAAS,CAAC,CA8EnD;AAED,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAgI1G"}
1
+ {"version":3,"file":"visual-proof-runner.d.ts","sourceRoot":"","sources":["../../../src/runner/visual-proof-runner.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAIL,KAAK,8BAA8B,EACpC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAW/E,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,uBAAuB,CAAC;IAChC,KAAK,EAAE,WAAW,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,sBAAsB,CAAC;IAC/B,aAAa,EAAE,oBAAoB,CAAC;CACrC;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,oBAAoB,EAAE,CAAC;IACnC,SAAS,EAAE,sBAAsB,CAAC,WAAW,CAAC,CAAC;IAC/C,sBAAsB,CAAC,EAAE,8BAA8B,CAAC;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CAAC,4BAA4B,GAAG,SAAS,CAAC,CA+EnD;AAED,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAgI1G"}
@@ -7,7 +7,7 @@ import { fileURLToPath } from 'node:url';
7
7
  import { normalizePath } from '../path-policy.js';
8
8
  import { buildAcceptanceProofReportOutcome, buildBlockedAcceptanceProofOutcome, readAcceptanceProofReport, } from './acceptance-proof.js';
9
9
  import { browserProofRuntimeEnv } from './browser-proof-contract.js';
10
- import { runnerVisualProofPolicy, shouldApplyVisualProofGate } from './review-gate-policy.js';
10
+ import { runnerVisualProofPolicy, shouldApplyVisualProofGate } from './proof-routing.js';
11
11
  export async function runRunnerVisualProofAdapter(input) {
12
12
  const policy = runnerVisualProofPolicy(input.config);
13
13
  const commandTemplate = policy.commandTemplate;
@@ -42,6 +42,7 @@ export async function runRunnerVisualProofAdapter(input) {
42
42
  [browserProofRuntimeEnv.playwrightProfileDir]: playwrightProfileDir,
43
43
  CODEX_ORCHESTRATOR_WORKTREE_PATH: input.worktreePath,
44
44
  CODEX_ORCHESTRATOR_CHANGED_FILES: input.changedFiles.join('\n'),
45
+ CODEX_ORCHESTRATOR_PROOF_MODE: input.report.proofPlan.mode,
45
46
  [browserProofRuntimeEnv.playwrightBrowsersPath]: playwrightBrowsersDir,
46
47
  [browserProofRuntimeEnv.browserCacheDir]: playwrightBrowsersDir,
47
48
  CODEX_ORCHESTRATOR_ISSUE_TITLE: input.issue.title,