oh-my-codex 0.18.11 → 0.18.13

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 (196) hide show
  1. package/Cargo.lock +6 -6
  2. package/Cargo.toml +1 -1
  3. package/README.md +9 -1
  4. package/dist/autopilot/__tests__/ralplan-gate.test.js +668 -0
  5. package/dist/autopilot/__tests__/ralplan-gate.test.js.map +1 -1
  6. package/dist/autopilot/completion-gate.d.ts +10 -0
  7. package/dist/autopilot/completion-gate.d.ts.map +1 -0
  8. package/dist/autopilot/completion-gate.js +154 -0
  9. package/dist/autopilot/completion-gate.js.map +1 -0
  10. package/dist/autopilot/ralplan-gate.d.ts.map +1 -1
  11. package/dist/autopilot/ralplan-gate.js +42 -21
  12. package/dist/autopilot/ralplan-gate.js.map +1 -1
  13. package/dist/cli/__tests__/codex-plugin-layout.test.js +46 -3
  14. package/dist/cli/__tests__/codex-plugin-layout.test.js.map +1 -1
  15. package/dist/cli/__tests__/doctor-invalid-config.test.js +35 -0
  16. package/dist/cli/__tests__/doctor-invalid-config.test.js.map +1 -1
  17. package/dist/cli/__tests__/doctor-warning-copy.test.js +317 -0
  18. package/dist/cli/__tests__/doctor-warning-copy.test.js.map +1 -1
  19. package/dist/cli/__tests__/index.test.js +120 -2
  20. package/dist/cli/__tests__/index.test.js.map +1 -1
  21. package/dist/cli/__tests__/launch-fallback.test.js +1 -1
  22. package/dist/cli/__tests__/launch-fallback.test.js.map +1 -1
  23. package/dist/cli/__tests__/resume.test.js +217 -1
  24. package/dist/cli/__tests__/resume.test.js.map +1 -1
  25. package/dist/cli/__tests__/session-scoped-runtime.test.js +101 -0
  26. package/dist/cli/__tests__/session-scoped-runtime.test.js.map +1 -1
  27. package/dist/cli/__tests__/session-search-help.test.js +3 -2
  28. package/dist/cli/__tests__/session-search-help.test.js.map +1 -1
  29. package/dist/cli/__tests__/session-search.test.js +64 -2
  30. package/dist/cli/__tests__/session-search.test.js.map +1 -1
  31. package/dist/cli/__tests__/setup-agents-overwrite.test.js +289 -1
  32. package/dist/cli/__tests__/setup-agents-overwrite.test.js.map +1 -1
  33. package/dist/cli/__tests__/setup-install-mode.test.js +290 -17
  34. package/dist/cli/__tests__/setup-install-mode.test.js.map +1 -1
  35. package/dist/cli/__tests__/setup-prompts-overwrite.test.js +74 -0
  36. package/dist/cli/__tests__/setup-prompts-overwrite.test.js.map +1 -1
  37. package/dist/cli/__tests__/setup-scope.test.js +45 -0
  38. package/dist/cli/__tests__/setup-scope.test.js.map +1 -1
  39. package/dist/cli/__tests__/state.test.js +93 -0
  40. package/dist/cli/__tests__/state.test.js.map +1 -1
  41. package/dist/cli/__tests__/update.test.js +157 -3
  42. package/dist/cli/__tests__/update.test.js.map +1 -1
  43. package/dist/cli/__tests__/version-sync-contract.test.js +2 -0
  44. package/dist/cli/__tests__/version-sync-contract.test.js.map +1 -1
  45. package/dist/cli/doctor.d.ts.map +1 -1
  46. package/dist/cli/doctor.js +90 -12
  47. package/dist/cli/doctor.js.map +1 -1
  48. package/dist/cli/index.d.ts +13 -4
  49. package/dist/cli/index.d.ts.map +1 -1
  50. package/dist/cli/index.js +439 -46
  51. package/dist/cli/index.js.map +1 -1
  52. package/dist/cli/project-runtime-codex-homes.d.ts +6 -0
  53. package/dist/cli/project-runtime-codex-homes.d.ts.map +1 -0
  54. package/dist/cli/project-runtime-codex-homes.js +27 -0
  55. package/dist/cli/project-runtime-codex-homes.js.map +1 -0
  56. package/dist/cli/session-search.d.ts.map +1 -1
  57. package/dist/cli/session-search.js +8 -1
  58. package/dist/cli/session-search.js.map +1 -1
  59. package/dist/cli/setup.d.ts +2 -2
  60. package/dist/cli/setup.d.ts.map +1 -1
  61. package/dist/cli/setup.js +482 -126
  62. package/dist/cli/setup.js.map +1 -1
  63. package/dist/cli/state.d.ts.map +1 -1
  64. package/dist/cli/state.js +79 -8
  65. package/dist/cli/state.js.map +1 -1
  66. package/dist/cli/update.d.ts +1 -0
  67. package/dist/cli/update.d.ts.map +1 -1
  68. package/dist/cli/update.js +42 -10
  69. package/dist/cli/update.js.map +1 -1
  70. package/dist/config/__tests__/codex-hooks.test.js +73 -29
  71. package/dist/config/__tests__/codex-hooks.test.js.map +1 -1
  72. package/dist/config/codex-hooks.d.ts +14 -0
  73. package/dist/config/codex-hooks.d.ts.map +1 -1
  74. package/dist/config/codex-hooks.js +54 -51
  75. package/dist/config/codex-hooks.js.map +1 -1
  76. package/dist/config/generator.d.ts +1 -1
  77. package/dist/config/generator.d.ts.map +1 -1
  78. package/dist/config/generator.js +1 -1
  79. package/dist/config/generator.js.map +1 -1
  80. package/dist/hooks/__tests__/best-practice-research-skill.test.js +12 -0
  81. package/dist/hooks/__tests__/best-practice-research-skill.test.js.map +1 -1
  82. package/dist/hud/__tests__/authority.test.js +45 -12
  83. package/dist/hud/__tests__/authority.test.js.map +1 -1
  84. package/dist/hud/__tests__/reconcile.test.js +95 -0
  85. package/dist/hud/__tests__/reconcile.test.js.map +1 -1
  86. package/dist/hud/__tests__/render.test.js +6 -6
  87. package/dist/hud/__tests__/render.test.js.map +1 -1
  88. package/dist/hud/__tests__/tmux.test.js +2 -2
  89. package/dist/hud/__tests__/tmux.test.js.map +1 -1
  90. package/dist/hud/authority.d.ts.map +1 -1
  91. package/dist/hud/authority.js +17 -2
  92. package/dist/hud/authority.js.map +1 -1
  93. package/dist/hud/index.js +1 -4
  94. package/dist/hud/index.js.map +1 -1
  95. package/dist/hud/reconcile.d.ts.map +1 -1
  96. package/dist/hud/reconcile.js +42 -0
  97. package/dist/hud/reconcile.js.map +1 -1
  98. package/dist/hud/render.d.ts.map +1 -1
  99. package/dist/hud/render.js +6 -0
  100. package/dist/hud/render.js.map +1 -1
  101. package/dist/hud/tmux.d.ts.map +1 -1
  102. package/dist/hud/tmux.js +5 -4
  103. package/dist/hud/tmux.js.map +1 -1
  104. package/dist/mcp/__tests__/bootstrap.test.js +31 -1
  105. package/dist/mcp/__tests__/bootstrap.test.js.map +1 -1
  106. package/dist/mcp/bootstrap.d.ts +1 -0
  107. package/dist/mcp/bootstrap.d.ts.map +1 -1
  108. package/dist/mcp/bootstrap.js +32 -0
  109. package/dist/mcp/bootstrap.js.map +1 -1
  110. package/dist/modes/__tests__/base-autopilot-gates.test.d.ts +2 -0
  111. package/dist/modes/__tests__/base-autopilot-gates.test.d.ts.map +1 -0
  112. package/dist/modes/__tests__/base-autopilot-gates.test.js +154 -0
  113. package/dist/modes/__tests__/base-autopilot-gates.test.js.map +1 -0
  114. package/dist/modes/base.d.ts +4 -1
  115. package/dist/modes/base.d.ts.map +1 -1
  116. package/dist/modes/base.js +71 -1
  117. package/dist/modes/base.js.map +1 -1
  118. package/dist/pipeline/__tests__/orchestrator.test.js +144 -3
  119. package/dist/pipeline/__tests__/orchestrator.test.js.map +1 -1
  120. package/dist/pipeline/__tests__/stages.test.js +109 -0
  121. package/dist/pipeline/__tests__/stages.test.js.map +1 -1
  122. package/dist/pipeline/orchestrator.d.ts.map +1 -1
  123. package/dist/pipeline/orchestrator.js +11 -4
  124. package/dist/pipeline/orchestrator.js.map +1 -1
  125. package/dist/pipeline/stages/code-review.d.ts +2 -0
  126. package/dist/pipeline/stages/code-review.d.ts.map +1 -1
  127. package/dist/pipeline/stages/code-review.js +2 -0
  128. package/dist/pipeline/stages/code-review.js.map +1 -1
  129. package/dist/pipeline/stages/ultraqa.d.ts +3 -0
  130. package/dist/pipeline/stages/ultraqa.d.ts.map +1 -1
  131. package/dist/pipeline/stages/ultraqa.js +3 -0
  132. package/dist/pipeline/stages/ultraqa.js.map +1 -1
  133. package/dist/ralplan/__tests__/consensus-gate.test.d.ts +2 -0
  134. package/dist/ralplan/__tests__/consensus-gate.test.d.ts.map +1 -0
  135. package/dist/ralplan/__tests__/consensus-gate.test.js +631 -0
  136. package/dist/ralplan/__tests__/consensus-gate.test.js.map +1 -0
  137. package/dist/ralplan/consensus-gate.d.ts +9 -1
  138. package/dist/ralplan/consensus-gate.d.ts.map +1 -1
  139. package/dist/ralplan/consensus-gate.js +287 -65
  140. package/dist/ralplan/consensus-gate.js.map +1 -1
  141. package/dist/scripts/__tests__/codex-native-hook.test.js +481 -0
  142. package/dist/scripts/__tests__/codex-native-hook.test.js.map +1 -1
  143. package/dist/scripts/codex-native-hook.d.ts.map +1 -1
  144. package/dist/scripts/codex-native-hook.js +145 -25
  145. package/dist/scripts/codex-native-hook.js.map +1 -1
  146. package/dist/scripts/codex-native-pre-post.d.ts +1 -0
  147. package/dist/scripts/codex-native-pre-post.d.ts.map +1 -1
  148. package/dist/scripts/codex-native-pre-post.js +130 -0
  149. package/dist/scripts/codex-native-pre-post.js.map +1 -1
  150. package/dist/session-history/__tests__/search.test.js +166 -0
  151. package/dist/session-history/__tests__/search.test.js.map +1 -1
  152. package/dist/session-history/search.d.ts +7 -0
  153. package/dist/session-history/search.d.ts.map +1 -1
  154. package/dist/session-history/search.js +83 -24
  155. package/dist/session-history/search.js.map +1 -1
  156. package/dist/sidecar/__tests__/collector.test.js +60 -0
  157. package/dist/sidecar/__tests__/collector.test.js.map +1 -1
  158. package/dist/sidecar/collector.d.ts.map +1 -1
  159. package/dist/sidecar/collector.js +3 -6
  160. package/dist/sidecar/collector.js.map +1 -1
  161. package/dist/state/__tests__/operations.test.js +622 -0
  162. package/dist/state/__tests__/operations.test.js.map +1 -1
  163. package/dist/state/__tests__/skill-active.test.js +82 -0
  164. package/dist/state/__tests__/skill-active.test.js.map +1 -1
  165. package/dist/state/operations.d.ts.map +1 -1
  166. package/dist/state/operations.js +31 -9
  167. package/dist/state/operations.js.map +1 -1
  168. package/dist/state/skill-active.d.ts.map +1 -1
  169. package/dist/state/skill-active.js +41 -1
  170. package/dist/state/skill-active.js.map +1 -1
  171. package/dist/team/__tests__/runtime.test.js +81 -57
  172. package/dist/team/__tests__/runtime.test.js.map +1 -1
  173. package/dist/team/runtime.js +4 -4
  174. package/dist/team/runtime.js.map +1 -1
  175. package/dist/utils/__tests__/paths.test.js +23 -0
  176. package/dist/utils/__tests__/paths.test.js.map +1 -1
  177. package/dist/utils/__tests__/version.test.js +27 -0
  178. package/dist/utils/__tests__/version.test.js.map +1 -1
  179. package/dist/utils/paths.d.ts.map +1 -1
  180. package/dist/utils/paths.js +4 -2
  181. package/dist/utils/paths.js.map +1 -1
  182. package/dist/utils/version.d.ts.map +1 -1
  183. package/dist/utils/version.js +7 -2
  184. package/dist/utils/version.js.map +1 -1
  185. package/dist/verification/__tests__/ci-rust-gates.test.js +4 -2
  186. package/dist/verification/__tests__/ci-rust-gates.test.js.map +1 -1
  187. package/dist/verification/__tests__/dev-merge-issue-close-workflow.test.js +71 -3
  188. package/dist/verification/__tests__/dev-merge-issue-close-workflow.test.js.map +1 -1
  189. package/package.json +1 -1
  190. package/plugins/oh-my-codex/.codex-plugin/plugin.json +1 -1
  191. package/plugins/oh-my-codex/hooks/codex-native-hook.mjs +53 -2
  192. package/plugins/oh-my-codex/skills/best-practice-research/SKILL.md +6 -1
  193. package/skills/best-practice-research/SKILL.md +6 -1
  194. package/src/scripts/__tests__/codex-native-hook.test.ts +615 -0
  195. package/src/scripts/codex-native-hook.ts +162 -32
  196. package/src/scripts/codex-native-pre-post.ts +137 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ralplan-gate.test.js","sourceRoot":"","sources":["../../../src/autopilot/__tests__/ralplan-gate.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ralplan-gate.test.js","sourceRoot":"","sources":["../../../src/autopilot/__tests__/ralplan-gate.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ type JsonObject = Record<string, unknown>;
2
+ export declare function isAutopilotSuccessfulTerminalState(state: JsonObject): boolean;
3
+ export declare function hasCleanCodeReviewEvidence(value: unknown): boolean;
4
+ export declare function hasCleanUltraqaEvidence(value: unknown): boolean;
5
+ export declare function hasCleanAutopilotReviewAndQaEvidence(state: JsonObject): boolean;
6
+ export declare function validateAutopilotCompletionTransition(currentState: JsonObject, nextState: JsonObject, options?: {
7
+ allowUnknownActivePhaseCompletion?: boolean;
8
+ }): string | null;
9
+ export {};
10
+ //# sourceMappingURL=completion-gate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completion-gate.d.ts","sourceRoot":"","sources":["../../src/autopilot/completion-gate.ts"],"names":[],"mappings":"AAGA,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AA+B1C,wBAAgB,kCAAkC,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAW7E;AA2CD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAUlE;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAa/D;AAED,wBAAgB,oCAAoC,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAU/E;AAED,wBAAgB,qCAAqC,CACnD,YAAY,EAAE,UAAU,EACxB,SAAS,EAAE,UAAU,EACrB,OAAO,GAAE;IAAE,iCAAiC,CAAC,EAAE,OAAO,CAAA;CAAO,GAC5D,MAAM,GAAG,IAAI,CAkCf"}
@@ -0,0 +1,154 @@
1
+ import { deriveAutopilotChildPhase, normalizeAutopilotPhase } from './fsm.js';
2
+ import { inferRunOutcome, inferTerminalLifecycleOutcome } from '../runtime/run-outcome.js';
3
+ function objectRecord(value) {
4
+ return value && typeof value === 'object' && !Array.isArray(value) ? value : {};
5
+ }
6
+ function nonEmptyString(value) {
7
+ return typeof value === 'string' ? value.trim() : '';
8
+ }
9
+ function stateField(state, key) {
10
+ if (Object.prototype.hasOwnProperty.call(state, key))
11
+ return state[key];
12
+ return objectRecord(state.state)[key];
13
+ }
14
+ function hasAnyStringField(value, keys) {
15
+ return keys.some((key) => nonEmptyString(value[key]).length > 0);
16
+ }
17
+ function stringField(value, key) {
18
+ return nonEmptyString(value[key]);
19
+ }
20
+ function isImplementationPhase(phase) {
21
+ return phase === 'ultragoal' || phase === 'team' || phase === 'ralph';
22
+ }
23
+ function isActiveAutopilotState(state) {
24
+ return state.mode === 'autopilot' && state.active === true;
25
+ }
26
+ export function isAutopilotSuccessfulTerminalState(state) {
27
+ const phase = normalizeAutopilotPhase(state.current_phase);
28
+ const runOutcome = inferRunOutcome(state);
29
+ const lifecycleOutcome = inferTerminalLifecycleOutcome(state);
30
+ if (phase === 'failed' || runOutcome === 'failed' || runOutcome === 'cancelled' || runOutcome === 'blocked_on_user')
31
+ return false;
32
+ if (lifecycleOutcome === 'failed' || lifecycleOutcome === 'blocked' || lifecycleOutcome === 'userinterlude' || lifecycleOutcome === 'askuserQuestion')
33
+ return false;
34
+ if (phase === 'complete')
35
+ return true;
36
+ if (runOutcome === 'finish')
37
+ return true;
38
+ if (lifecycleOutcome === 'finished')
39
+ return true;
40
+ if (nonEmptyString(state.completed_at))
41
+ return true;
42
+ return state.active === false;
43
+ }
44
+ function urlLooksLikeCi(url) {
45
+ return /github\.com\/[^/]+\/[^/]+\/actions\/runs\//i.test(url);
46
+ }
47
+ function evidenceText(value, keys) {
48
+ return keys.map((key) => nonEmptyString(value[key]).toLowerCase()).filter(Boolean).join('\n');
49
+ }
50
+ function looksLikeUltraqaEvidence(value) {
51
+ return /\bultraqa\b|\bqa[_-]?verdict\b|\bqa[_-]?evidence\b/.test(evidenceText(value, ['source', 'artifact_path', 'url', 'review_url', 'qa_url']));
52
+ }
53
+ function looksLikeCodeReviewEvidence(value) {
54
+ return /\bcode[-_]?review\b|\breview[_-]?verdict\b|\breview[_-]?evidence\b|\breviews\//.test(evidenceText(value, ['source', 'artifact_path', 'url', 'review_url', 'qa_url']));
55
+ }
56
+ function hasCodeReviewLocator(value) {
57
+ const artifactPath = stringField(value, 'artifact_path').toLowerCase();
58
+ const reviewUrl = stringField(value, 'review_url');
59
+ if (artifactPath)
60
+ return looksLikeCodeReviewEvidence(value);
61
+ return reviewUrl.length > 0 || hasAnyStringField(value, ['thread_id', 'agent_id', 'tool_call_id', 'url']);
62
+ }
63
+ function hasUltraqaLocator(value) {
64
+ const artifactPath = stringField(value, 'artifact_path').toLowerCase();
65
+ const qaUrl = stringField(value, 'qa_url');
66
+ const url = stringField(value, 'url');
67
+ if (artifactPath)
68
+ return looksLikeUltraqaEvidence(value) || /\bqa\b/.test(artifactPath);
69
+ return qaUrl.length > 0 || urlLooksLikeCi(url) || hasAnyStringField(value, ['tool_call_id', 'thread_id']);
70
+ }
71
+ function evidenceLocatorSet(value) {
72
+ return new Set(['artifact_path', 'url', 'review_url', 'qa_url', 'thread_id', 'tool_call_id', 'agent_id']
73
+ .map((key) => nonEmptyString(value[key]))
74
+ .filter(Boolean));
75
+ }
76
+ export function hasCleanCodeReviewEvidence(value) {
77
+ const verdict = objectRecord(value);
78
+ if (verdict.clean !== true)
79
+ return false;
80
+ if (nonEmptyString(verdict.stage) !== 'code-review')
81
+ return false;
82
+ if (nonEmptyString(verdict.recommendation).toUpperCase() !== 'APPROVE')
83
+ return false;
84
+ if (nonEmptyString(verdict.architectural_status).toUpperCase() !== 'CLEAR')
85
+ return false;
86
+ if (looksLikeUltraqaEvidence(verdict))
87
+ return false;
88
+ const url = nonEmptyString(verdict.url);
89
+ if (url && urlLooksLikeCi(url))
90
+ return false;
91
+ return hasCodeReviewLocator(verdict);
92
+ }
93
+ export function hasCleanUltraqaEvidence(value) {
94
+ const verdict = objectRecord(value);
95
+ if (verdict.clean !== true)
96
+ return false;
97
+ if (nonEmptyString(verdict.stage) !== 'ultraqa')
98
+ return false;
99
+ const source = nonEmptyString(verdict.source).toLowerCase();
100
+ if (source === 'leader' || source.includes('code-review'))
101
+ return false;
102
+ if (looksLikeCodeReviewEvidence(verdict))
103
+ return false;
104
+ if (verdict.skipped === true) {
105
+ return (nonEmptyString(verdict.reason).length > 0 || nonEmptyString(verdict.skip_reason).length > 0) && hasUltraqaLocator(verdict);
106
+ }
107
+ return hasUltraqaLocator(verdict);
108
+ }
109
+ export function hasCleanAutopilotReviewAndQaEvidence(state) {
110
+ const review = objectRecord(stateField(state, 'review_verdict'));
111
+ const qa = objectRecord(stateField(state, 'qa_verdict'));
112
+ if (!hasCleanCodeReviewEvidence(review) || !hasCleanUltraqaEvidence(qa))
113
+ return false;
114
+ const reviewLocators = evidenceLocatorSet(review);
115
+ const qaLocators = evidenceLocatorSet(qa);
116
+ for (const locator of reviewLocators) {
117
+ if (qaLocators.has(locator))
118
+ return false;
119
+ }
120
+ return true;
121
+ }
122
+ export function validateAutopilotCompletionTransition(currentState, nextState, options = {}) {
123
+ const current = { ...currentState, mode: 'autopilot' };
124
+ const next = { ...nextState, mode: 'autopilot' };
125
+ const currentPhase = deriveAutopilotChildPhase(current);
126
+ const nextPhase = deriveAutopilotChildPhase(next);
127
+ const successfulTerminal = isAutopilotSuccessfulTerminalState(next);
128
+ if (successfulTerminal
129
+ && isActiveAutopilotState(current)
130
+ && currentPhase === null
131
+ && options.allowUnknownActivePhaseCompletion !== true) {
132
+ return 'Cannot complete Autopilot from an unknown active phase; restore a valid Autopilot phase before terminalization.';
133
+ }
134
+ if (currentPhase === 'deep-interview' && successfulTerminal) {
135
+ return 'Cannot complete Autopilot before ralplan gate: deep-interview may only advance to ralplan.';
136
+ }
137
+ if (currentPhase === 'ralplan' && successfulTerminal) {
138
+ return 'Cannot complete Autopilot before ultragoal gate: ralplan may only advance to ultragoal.';
139
+ }
140
+ if (isImplementationPhase(currentPhase) && successfulTerminal) {
141
+ return `Cannot complete Autopilot before code-review gate: ${currentPhase} may only advance to code-review.`;
142
+ }
143
+ if (isImplementationPhase(currentPhase) && nextPhase === 'ultraqa') {
144
+ return `Cannot skip Autopilot code-review gate: ${currentPhase} may only advance to code-review.`;
145
+ }
146
+ if (currentPhase === 'code-review' && successfulTerminal) {
147
+ return 'Cannot complete Autopilot before ultraqa gate: code-review may only advance to ultraqa.';
148
+ }
149
+ if (currentPhase === 'ultraqa' && successfulTerminal && !hasCleanAutopilotReviewAndQaEvidence(nextState)) {
150
+ return 'Cannot complete Autopilot from ultraqa without clean code-review and ultraqa verdict evidence.';
151
+ }
152
+ return null;
153
+ }
154
+ //# sourceMappingURL=completion-gate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completion-gate.js","sourceRoot":"","sources":["../../src/autopilot/completion-gate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ralplan-gate.d.ts","sourceRoot":"","sources":["../../src/autopilot/ralplan-gate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwC,KAAK,4BAA4B,EAAE,MAAM,8BAA8B,CAAC;AAEvH,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE1C,MAAM,WAAW,kCAAkC;IACjD,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IACjC,SAAS,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,qCAAqC;IACpD,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,4BAA4B,CAAC;CACzC;AAoCD,wBAAgB,qCAAqC,CACnD,KAAK,EAAE,kCAAkC,GACxC,qCAAqC,CAoBvC;AAED,wBAAgB,uCAAuC,CACrD,QAAQ,EAAE,qCAAqC,GAC9C,MAAM,CAKR"}
1
+ {"version":3,"file":"ralplan-gate.d.ts","sourceRoot":"","sources":["../../src/autopilot/ralplan-gate.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,4BAA4B,EAClC,MAAM,8BAA8B,CAAC;AAEtC,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE1C,MAAM,WAAW,kCAAkC;IACjD,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IACjC,SAAS,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,qCAAqC;IACpD,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,4BAA4B,CAAC;CACzC;AA+CD,wBAAgB,qCAAqC,CACnD,KAAK,EAAE,kCAAkC,GACxC,qCAAqC,CA2BvC;AAYD,wBAAgB,uCAAuC,CACrD,QAAQ,EAAE,qCAAqC,GAC9C,MAAM,CAKR"}
@@ -1,4 +1,4 @@
1
- import { buildRalplanConsensusGateFromSources } from '../ralplan/consensus-gate.js';
1
+ import { buildRalplanConsensusGateFromSources, RALPLAN_CONSENSUS_BLOCKED_REASONS, withParentReturnToRalplanContext, } from '../ralplan/consensus-gate.js';
2
2
  function safeObject(value) {
3
3
  return value && typeof value === 'object' && !Array.isArray(value)
4
4
  ? value
@@ -13,30 +13,44 @@ function handoffArtifacts(state) {
13
13
  function ralplanHandoff(state) {
14
14
  return safeObject(handoffArtifacts(state)?.ralplan);
15
15
  }
16
- function gateSources(input) {
17
- const sources = [];
18
- for (const [label, state] of [
19
- ['next-autopilot-state', input.nextState],
20
- ['current-autopilot-state', input.currentState],
21
- ]) {
22
- if (!state)
23
- continue;
24
- sources.push({ source: label, value: state });
25
- const handoffs = handoffArtifacts(state);
26
- if (handoffs)
27
- sources.push({ source: `${label}:handoff_artifacts`, value: handoffs });
28
- const ralplan = ralplanHandoff(state);
29
- if (ralplan)
30
- sources.push({ source: `${label}:handoff_artifacts.ralplan`, value: ralplan });
16
+ function sourcesForState(label, state) {
17
+ if (!state)
18
+ return [];
19
+ const sources = [{ source: label, value: state }];
20
+ const handoffs = handoffArtifacts(state);
21
+ if (handoffs) {
22
+ sources.push({
23
+ source: `${label}:handoff_artifacts`,
24
+ value: withParentReturnToRalplanContext(handoffs, state),
25
+ });
26
+ }
27
+ const ralplan = ralplanHandoff(state);
28
+ if (ralplan) {
29
+ sources.push({
30
+ source: `${label}:handoff_artifacts.ralplan`,
31
+ value: withParentReturnToRalplanContext(ralplan, state),
32
+ });
31
33
  }
32
34
  return sources;
33
35
  }
36
+ function gateSources(input) {
37
+ return [
38
+ ...sourcesForState('next-autopilot-state', input.nextState),
39
+ ...sourcesForState('current-autopilot-state', input.currentState),
40
+ ];
41
+ }
34
42
  export function canAdvanceAutopilotRalplanToUltragoal(input) {
35
- const evidence = buildRalplanConsensusGateFromSources(gateSources(input), {
43
+ const options = {
36
44
  cwd: input.cwd,
37
45
  sessionId: input.sessionId,
38
46
  requireNativeSubagents: true,
39
- });
47
+ };
48
+ const nextStateEvidence = buildRalplanConsensusGateFromSources(sourcesForState('next-autopilot-state', input.nextState), options);
49
+ const evidence = nextStateEvidence.complete
50
+ || nextStateEvidence.blockedReason === RALPLAN_CONSENSUS_BLOCKED_REASONS.nonApprovingReview
51
+ || nextStateEvidence.blockedReason === RALPLAN_CONSENSUS_BLOCKED_REASONS.nativeSubagentEvidenceMissing
52
+ ? nextStateEvidence
53
+ : buildRalplanConsensusGateFromSources(gateSources(input), options);
40
54
  if (evidence.complete) {
41
55
  return {
42
56
  allowed: true,
@@ -46,12 +60,19 @@ export function canAdvanceAutopilotRalplanToUltragoal(input) {
46
60
  }
47
61
  return {
48
62
  allowed: false,
49
- reason: evidence.blockedReason === 'native_subagent_consensus_evidence_missing'
50
- ? 'ralplan consensus lacks tracker-backed native architect and critic lanes'
51
- : 'missing ralplan consensus gate with tracker-backed native architect and critic lanes',
63
+ reason: ralplanConsensusBlockedReason(evidence),
52
64
  evidence,
53
65
  };
54
66
  }
67
+ function ralplanConsensusBlockedReason(evidence) {
68
+ if (evidence.blockedReason === RALPLAN_CONSENSUS_BLOCKED_REASONS.nativeSubagentEvidenceMissing) {
69
+ return 'ralplan consensus lacks tracker-backed native architect and critic lanes';
70
+ }
71
+ if (evidence.blockedReason === RALPLAN_CONSENSUS_BLOCKED_REASONS.nonApprovingReview) {
72
+ return 'ralplan consensus gate contains non-approving architect or critic review evidence';
73
+ }
74
+ return 'missing ralplan consensus gate with tracker-backed native architect and critic lanes';
75
+ }
55
76
  export function buildAutopilotRalplanUltragoalGateError(decision) {
56
77
  const details = decision.evidence?.blockedDetails?.length
57
78
  ? ` Details: ${decision.evidence.blockedDetails.join('; ')}.`
@@ -1 +1 @@
1
- {"version":3,"file":"ralplan-gate.js","sourceRoot":"","sources":["../../src/autopilot/ralplan-gate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oCAAoC,EAAqC,MAAM,8BAA8B,CAAC;AAiBvH,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAChE,CAAC,CAAC,KAAmB;QACrB,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,SAAS,WAAW,CAAC,KAAoC;IACvD,OAAO,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAoC;IAC5D,OAAO,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC,CAAC;AACnG,CAAC;AAED,SAAS,cAAc,CAAC,KAAoC;IAC1D,OAAO,UAAU,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,WAAW,CAAC,KAAyC;IAC5D,MAAM,OAAO,GAA8C,EAAE,CAAC;IAC9D,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI;QAC3B,CAAC,sBAAsB,EAAE,KAAK,CAAC,SAAS,CAAC;QACzC,CAAC,yBAAyB,EAAE,KAAK,CAAC,YAAY,CAAC;KACvC,EAAE,CAAC;QACX,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,QAAQ;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,oBAAoB,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACtF,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,OAAO;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,4BAA4B,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,qCAAqC,CACnD,KAAyC;IAEzC,MAAM,QAAQ,GAAG,oCAAoC,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE;QACxE,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,sBAAsB,EAAE,IAAI;KAC7B,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACtB,OAAO;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,uEAAuE;YAC/E,QAAQ;SACT,CAAC;IACJ,CAAC;IACD,OAAO;QACL,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,QAAQ,CAAC,aAAa,KAAK,4CAA4C;YAC7E,CAAC,CAAC,0EAA0E;YAC5E,CAAC,CAAC,sFAAsF;QAC1F,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uCAAuC,CACrD,QAA+C;IAE/C,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,EAAE,cAAc,EAAE,MAAM;QACvD,CAAC,CAAC,aAAa,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;QAC7D,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,2CAA2C,QAAQ,CAAC,MAAM,IAAI,OAAO,EAAE,CAAC;AACjF,CAAC"}
1
+ {"version":3,"file":"ralplan-gate.js","sourceRoot":"","sources":["../../src/autopilot/ralplan-gate.ts"],"names":[],"mappings":"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"}
@@ -380,7 +380,7 @@ describe('official Codex plugin layout', () => {
380
380
  assert.equal(output.stopReason, 'plugin_stop_hook_launcher_empty_stdout');
381
381
  });
382
382
  });
383
- it('does not append fallback Stop JSON after partial child stdout', async () => {
383
+ it('replaces partial Stop child stdout with fallback Stop JSON', async () => {
384
384
  await withPluginCacheCopy(async (cachePluginRoot, cacheRoot) => {
385
385
  const commandPath = join(cacheRoot, process.platform === 'win32' ? 'partial.cmd' : 'partial.sh');
386
386
  if (process.platform === 'win32') {
@@ -391,11 +391,54 @@ describe('official Codex plugin layout', () => {
391
391
  await chmod(commandPath, 0o755);
392
392
  }
393
393
  const result = runPluginNativeHook(cachePluginRoot, JSON.stringify({ hook_event_name: 'Stop', session_id: 'sess-plugin-partial-stop' }), { OMX_NATIVE_HOOK_COMMAND: commandPath });
394
- assert.equal(result.status, 2, result.stderr || result.stdout);
395
- assert.equal(result.stdout, 'PARTIAL');
394
+ assert.equal(result.status, 0, result.stderr || result.stdout);
395
+ assert.doesNotMatch(result.stdout, /PARTIAL/);
396
+ const output = parseSingleJsonStdout(result.stdout);
397
+ assert.equal(output.decision, 'block');
398
+ assert.equal(output.stopReason, 'plugin_stop_hook_launcher_invalid_stdout');
399
+ });
400
+ });
401
+ it('preserves valid Stop child JSON even when the child exits nonzero', async () => {
402
+ await withPluginCacheCopy(async (cachePluginRoot, cacheRoot) => {
403
+ const commandPath = join(cacheRoot, process.platform === 'win32' ? 'valid-json-exit.cmd' : 'valid-json-exit.sh');
404
+ if (process.platform === 'win32') {
405
+ await writeFile(commandPath, '@echo off\r\necho {"decision":"block","stopReason":"child_valid_json"}\r\nexit /b 7\r\n', 'utf-8');
406
+ }
407
+ else {
408
+ await writeFile(commandPath, `#!/bin/sh
409
+ printf '{"decision":"block","stopReason":"child_valid_json"}\n'
410
+ exit 7
411
+ `, 'utf-8');
412
+ await chmod(commandPath, 0o755);
413
+ }
414
+ const result = runPluginNativeHook(cachePluginRoot, JSON.stringify({ hook_event_name: 'Stop', session_id: 'sess-plugin-valid-json-exit-stop' }), { OMX_NATIVE_HOOK_COMMAND: commandPath });
415
+ assert.equal(result.status, 0, result.stderr || result.stdout);
416
+ const output = parseSingleJsonStdout(result.stdout);
417
+ assert.equal(output.decision, 'block');
418
+ assert.equal(output.stopReason, 'child_valid_json');
396
419
  assert.doesNotMatch(result.stdout, /plugin_stop_hook_launcher/);
397
420
  });
398
421
  });
422
+ it('replaces oversized Stop child stdout with fallback Stop JSON', async () => {
423
+ await withPluginCacheCopy(async (cachePluginRoot, cacheRoot) => {
424
+ const commandPath = join(cacheRoot, process.platform === 'win32' ? 'oversized-stop-stdout.cmd' : 'oversized-stop-stdout.sh');
425
+ if (process.platform === 'win32') {
426
+ await writeFile(commandPath, '@echo off\r\nfor /L %%i in (1,1,1100000) do <nul set /p=x\r\n', 'utf-8');
427
+ }
428
+ else {
429
+ await writeFile(commandPath, `#!/bin/sh
430
+ head -c 1100000 /dev/zero | tr '\0' x
431
+ `, 'utf-8');
432
+ await chmod(commandPath, 0o755);
433
+ }
434
+ const result = runPluginNativeHook(cachePluginRoot, JSON.stringify({ hook_event_name: 'Stop', session_id: 'sess-plugin-oversized-stdout-stop' }), { OMX_NATIVE_HOOK_COMMAND: commandPath });
435
+ assert.equal(result.status, 0, result.stderr || result.stdout);
436
+ assert.ok(result.stdout.length < 2000, 'oversized child stdout should not leak to Stop stdout');
437
+ const output = parseSingleJsonStdout(result.stdout);
438
+ assert.equal(output.decision, 'block');
439
+ assert.equal(output.stopReason, 'plugin_stop_hook_launcher_stdout_oversized');
440
+ });
441
+ });
399
442
  it('emits Stop JSON for malformed Stop-looking stdin before invalid launcher failure', async () => {
400
443
  await withPluginCacheCopy(async (cachePluginRoot) => {
401
444
  await writeFile(join(cachePluginRoot, 'hooks', 'omx-command.json'), '{"command":', 'utf-8');