oh-my-codex 0.17.0 → 0.17.2

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 (178) hide show
  1. package/Cargo.lock +5 -5
  2. package/Cargo.toml +1 -1
  3. package/dist/cli/__tests__/question.test.js +2 -0
  4. package/dist/cli/__tests__/question.test.js.map +1 -1
  5. package/dist/cli/__tests__/ralph-goal-mode-contract.test.js +3 -0
  6. package/dist/cli/__tests__/ralph-goal-mode-contract.test.js.map +1 -1
  7. package/dist/cli/__tests__/ralph.test.js +0 -124
  8. package/dist/cli/__tests__/ralph.test.js.map +1 -1
  9. package/dist/cli/__tests__/setup-install-mode.test.js +156 -3
  10. package/dist/cli/__tests__/setup-install-mode.test.js.map +1 -1
  11. package/dist/cli/__tests__/setup-refresh.test.js +3 -3
  12. package/dist/cli/__tests__/setup-refresh.test.js.map +1 -1
  13. package/dist/cli/__tests__/team.test.js +166 -42
  14. package/dist/cli/__tests__/team.test.js.map +1 -1
  15. package/dist/cli/doctor.js +9 -4
  16. package/dist/cli/doctor.js.map +1 -1
  17. package/dist/cli/plugin-marketplace.d.ts +5 -1
  18. package/dist/cli/plugin-marketplace.d.ts.map +1 -1
  19. package/dist/cli/plugin-marketplace.js +31 -2
  20. package/dist/cli/plugin-marketplace.js.map +1 -1
  21. package/dist/cli/question.d.ts +1 -1
  22. package/dist/cli/question.d.ts.map +1 -1
  23. package/dist/cli/question.js +98 -4
  24. package/dist/cli/question.js.map +1 -1
  25. package/dist/cli/ralph.d.ts.map +1 -1
  26. package/dist/cli/ralph.js +1 -49
  27. package/dist/cli/ralph.js.map +1 -1
  28. package/dist/cli/setup.d.ts +1 -0
  29. package/dist/cli/setup.d.ts.map +1 -1
  30. package/dist/cli/setup.js +75 -9
  31. package/dist/cli/setup.js.map +1 -1
  32. package/dist/cli/team.d.ts.map +1 -1
  33. package/dist/cli/team.js +21 -29
  34. package/dist/cli/team.js.map +1 -1
  35. package/dist/config/generator.d.ts +4 -0
  36. package/dist/config/generator.d.ts.map +1 -1
  37. package/dist/config/generator.js +58 -0
  38. package/dist/config/generator.js.map +1 -1
  39. package/dist/hooks/__tests__/agents-overlay.test.js +29 -0
  40. package/dist/hooks/__tests__/agents-overlay.test.js.map +1 -1
  41. package/dist/hooks/__tests__/session.test.js +126 -1
  42. package/dist/hooks/__tests__/session.test.js.map +1 -1
  43. package/dist/hooks/agents-overlay.d.ts.map +1 -1
  44. package/dist/hooks/agents-overlay.js +6 -3
  45. package/dist/hooks/agents-overlay.js.map +1 -1
  46. package/dist/hooks/session.d.ts +11 -3
  47. package/dist/hooks/session.d.ts.map +1 -1
  48. package/dist/hooks/session.js +68 -6
  49. package/dist/hooks/session.js.map +1 -1
  50. package/dist/hud/__tests__/reconcile.test.js +63 -0
  51. package/dist/hud/__tests__/reconcile.test.js.map +1 -1
  52. package/dist/hud/__tests__/tmux.test.d.ts +2 -0
  53. package/dist/hud/__tests__/tmux.test.d.ts.map +1 -0
  54. package/dist/hud/__tests__/tmux.test.js +92 -0
  55. package/dist/hud/__tests__/tmux.test.js.map +1 -0
  56. package/dist/hud/reconcile.d.ts +2 -0
  57. package/dist/hud/reconcile.d.ts.map +1 -1
  58. package/dist/hud/reconcile.js +14 -1
  59. package/dist/hud/reconcile.js.map +1 -1
  60. package/dist/hud/tmux.d.ts +12 -0
  61. package/dist/hud/tmux.d.ts.map +1 -1
  62. package/dist/hud/tmux.js +88 -0
  63. package/dist/hud/tmux.js.map +1 -1
  64. package/dist/mcp/__tests__/hermes-bridge.test.js +82 -1
  65. package/dist/mcp/__tests__/hermes-bridge.test.js.map +1 -1
  66. package/dist/mcp/hermes-bridge.d.ts +34 -1
  67. package/dist/mcp/hermes-bridge.d.ts.map +1 -1
  68. package/dist/mcp/hermes-bridge.js +75 -0
  69. package/dist/mcp/hermes-bridge.js.map +1 -1
  70. package/dist/mcp/hermes-server.d.ts +111 -6
  71. package/dist/mcp/hermes-server.d.ts.map +1 -1
  72. package/dist/mcp/hermes-server.js +38 -1
  73. package/dist/mcp/hermes-server.js.map +1 -1
  74. package/dist/pipeline/__tests__/stages.test.js +18 -9
  75. package/dist/pipeline/__tests__/stages.test.js.map +1 -1
  76. package/dist/pipeline/stages/team-exec.d.ts.map +1 -1
  77. package/dist/pipeline/stages/team-exec.js +2 -7
  78. package/dist/pipeline/stages/team-exec.js.map +1 -1
  79. package/dist/planning/__tests__/approved-execution-lifecycle-matrix.test.js +111 -269
  80. package/dist/planning/__tests__/approved-execution-lifecycle-matrix.test.js.map +1 -1
  81. package/dist/planning/__tests__/approved-launch-hint-lineage-matrix.test.js +31 -72
  82. package/dist/planning/__tests__/approved-launch-hint-lineage-matrix.test.js.map +1 -1
  83. package/dist/planning/__tests__/artifacts.test.js +27 -372
  84. package/dist/planning/__tests__/artifacts.test.js.map +1 -1
  85. package/dist/planning/artifacts.d.ts +1 -14
  86. package/dist/planning/artifacts.d.ts.map +1 -1
  87. package/dist/planning/artifacts.js +11 -31
  88. package/dist/planning/artifacts.js.map +1 -1
  89. package/dist/question/__tests__/state.test.js +349 -1
  90. package/dist/question/__tests__/state.test.js.map +1 -1
  91. package/dist/question/__tests__/ui.test.js +6 -6
  92. package/dist/question/__tests__/ui.test.js.map +1 -1
  93. package/dist/question/events.d.ts +53 -0
  94. package/dist/question/events.d.ts.map +1 -0
  95. package/dist/question/events.js +201 -0
  96. package/dist/question/events.js.map +1 -0
  97. package/dist/question/state.d.ts +30 -2
  98. package/dist/question/state.d.ts.map +1 -1
  99. package/dist/question/state.js +276 -5
  100. package/dist/question/state.js.map +1 -1
  101. package/dist/question/types.d.ts +1 -0
  102. package/dist/question/types.d.ts.map +1 -1
  103. package/dist/question/types.js.map +1 -1
  104. package/dist/question/ui.d.ts.map +1 -1
  105. package/dist/question/ui.js +3 -18
  106. package/dist/question/ui.js.map +1 -1
  107. package/dist/ralph/__tests__/completion-audit.test.js +39 -0
  108. package/dist/ralph/__tests__/completion-audit.test.js.map +1 -1
  109. package/dist/scripts/__tests__/codex-native-hook.test.js +111 -1
  110. package/dist/scripts/__tests__/codex-native-hook.test.js.map +1 -1
  111. package/dist/scripts/__tests__/run-test-files.test.js +22 -0
  112. package/dist/scripts/__tests__/run-test-files.test.js.map +1 -1
  113. package/dist/scripts/codex-native-hook.d.ts.map +1 -1
  114. package/dist/scripts/codex-native-hook.js +93 -1
  115. package/dist/scripts/codex-native-hook.js.map +1 -1
  116. package/dist/scripts/codex-native-pre-post.d.ts.map +1 -1
  117. package/dist/scripts/codex-native-pre-post.js +12 -6
  118. package/dist/scripts/codex-native-pre-post.js.map +1 -1
  119. package/dist/scripts/run-test-files.js +12 -1
  120. package/dist/scripts/run-test-files.js.map +1 -1
  121. package/dist/team/__tests__/approved-execution.test.js +25 -24
  122. package/dist/team/__tests__/approved-execution.test.js.map +1 -1
  123. package/dist/team/__tests__/runtime.test.js +173 -26
  124. package/dist/team/__tests__/runtime.test.js.map +1 -1
  125. package/dist/team/__tests__/scaling.test.js +66 -17
  126. package/dist/team/__tests__/scaling.test.js.map +1 -1
  127. package/dist/team/__tests__/tmux-session.test.js +42 -0
  128. package/dist/team/__tests__/tmux-session.test.js.map +1 -1
  129. package/dist/team/__tests__/worker-bootstrap.test.js +205 -0
  130. package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -1
  131. package/dist/team/approved-execution.d.ts +13 -0
  132. package/dist/team/approved-execution.d.ts.map +1 -1
  133. package/dist/team/approved-execution.js +65 -30
  134. package/dist/team/approved-execution.js.map +1 -1
  135. package/dist/team/runtime.d.ts.map +1 -1
  136. package/dist/team/runtime.js +28 -24
  137. package/dist/team/runtime.js.map +1 -1
  138. package/dist/team/scaling.d.ts.map +1 -1
  139. package/dist/team/scaling.js +7 -8
  140. package/dist/team/scaling.js.map +1 -1
  141. package/dist/team/tmux-session.d.ts.map +1 -1
  142. package/dist/team/tmux-session.js +48 -2
  143. package/dist/team/tmux-session.js.map +1 -1
  144. package/dist/team/ultragoal-context.d.ts +35 -0
  145. package/dist/team/ultragoal-context.d.ts.map +1 -0
  146. package/dist/team/ultragoal-context.js +191 -0
  147. package/dist/team/ultragoal-context.js.map +1 -0
  148. package/dist/ultragoal/__tests__/docs-contract.test.js +19 -0
  149. package/dist/ultragoal/__tests__/docs-contract.test.js.map +1 -1
  150. package/package.json +1 -1
  151. package/plugins/oh-my-codex/.codex-plugin/plugin.json +1 -1
  152. package/plugins/oh-my-codex/skills/plan/SKILL.md +3 -3
  153. package/plugins/oh-my-codex/skills/ralph/SKILL.md +2 -2
  154. package/plugins/oh-my-codex/skills/ralplan/SKILL.md +1 -1
  155. package/plugins/oh-my-codex/skills/team/SKILL.md +6 -0
  156. package/plugins/oh-my-codex/skills/ultragoal/SKILL.md +11 -0
  157. package/skills/plan/SKILL.md +3 -3
  158. package/skills/ralph/SKILL.md +2 -2
  159. package/skills/ralplan/SKILL.md +1 -1
  160. package/skills/team/SKILL.md +6 -0
  161. package/skills/ultragoal/SKILL.md +11 -0
  162. package/src/scripts/__tests__/codex-native-hook.test.ts +133 -1
  163. package/src/scripts/__tests__/run-test-files.test.ts +32 -0
  164. package/src/scripts/codex-native-hook.ts +121 -2
  165. package/src/scripts/codex-native-pre-post.ts +12 -6
  166. package/src/scripts/run-test-files.ts +13 -2
  167. package/dist/planning/__tests__/context-pack-status.test.d.ts +0 -2
  168. package/dist/planning/__tests__/context-pack-status.test.d.ts.map +0 -1
  169. package/dist/planning/__tests__/context-pack-status.test.js +0 -795
  170. package/dist/planning/__tests__/context-pack-status.test.js.map +0 -1
  171. package/dist/planning/__tests__/ready-context-pack-role-refs.test.d.ts +0 -2
  172. package/dist/planning/__tests__/ready-context-pack-role-refs.test.d.ts.map +0 -1
  173. package/dist/planning/__tests__/ready-context-pack-role-refs.test.js +0 -612
  174. package/dist/planning/__tests__/ready-context-pack-role-refs.test.js.map +0 -1
  175. package/dist/planning/context-pack-status.d.ts +0 -73
  176. package/dist/planning/context-pack-status.d.ts.map +0 -1
  177. package/dist/planning/context-pack-status.js +0 -745
  178. package/dist/planning/context-pack-status.js.map +0 -1
@@ -3,7 +3,8 @@ import { mkdtemp, rm } from 'node:fs/promises';
3
3
  import { tmpdir } from 'node:os';
4
4
  import { join } from 'node:path';
5
5
  import { afterEach, describe, it } from 'node:test';
6
- import { createQuestionRecord, getQuestionRecordPath, markQuestionAnswered, markQuestionPrompting, markQuestionTerminalError, readQuestionRecord, waitForQuestionTerminalState, } from '../state.js';
6
+ import { createQuestionRecord, getQuestionRecordPath, markQuestionAnswered, markQuestionPrompting, markQuestionTerminalError, QuestionSubmitError, readQuestionRecord, submitQuestionAnswerById, waitForQuestionTerminalState, } from '../state.js';
7
+ import { appendQuestionAnsweredEventOnce, appendQuestionEvent, readQuestionEvents } from '../events.js';
7
8
  const tempDirs = [];
8
9
  async function makeRepo() {
9
10
  const cwd = await mkdtemp(join(tmpdir(), 'omx-question-state-'));
@@ -28,6 +29,291 @@ describe('question state', () => {
28
29
  assert.equal(loaded?.question, 'Pick one');
29
30
  assert.equal(loaded?.type, 'single-answerable');
30
31
  });
32
+ it('emits a structured creation event with correlation metadata', async () => {
33
+ const cwd = await makeRepo();
34
+ const { record } = await createQuestionRecord(cwd, {
35
+ header: 'Decision',
36
+ question: 'Pick one',
37
+ options: [{ label: 'A', value: 'a', description: 'Alpha lane' }],
38
+ allow_other: false,
39
+ other_label: 'Other',
40
+ multi_select: false,
41
+ source: 'test-source',
42
+ }, 'sess-events', new Date('2026-05-11T00:00:00.000Z'), {
43
+ emitEvent: true,
44
+ timeoutMs: 1234,
45
+ runId: 'run-1',
46
+ });
47
+ const event = (await readQuestionEvents(cwd)).find((item) => item.question_id === record.question_id);
48
+ assert.equal(event?.type, 'question-created');
49
+ assert.equal(event?.session_id, 'sess-events');
50
+ assert.equal(event?.run_id, 'run-1');
51
+ assert.equal(event?.context_summary, 'Decision — Pick one');
52
+ assert.equal(event?.option_schema?.[0]?.options[0]?.description, 'Alpha lane');
53
+ assert.equal(event?.state?.timeout_ms, 1234);
54
+ });
55
+ it('submits bounded answers by id and rejects duplicate stale or unknown submissions', async () => {
56
+ const cwd = await makeRepo();
57
+ const { record } = await createQuestionRecord(cwd, {
58
+ question: 'Pick one',
59
+ options: [{ label: 'A', value: 'a' }],
60
+ allow_other: false,
61
+ other_label: 'Other',
62
+ multi_select: false,
63
+ }, 'sess-submit');
64
+ const submitted = await submitQuestionAnswerById(cwd, record.question_id, {
65
+ answer: {
66
+ kind: 'option',
67
+ value: 'a',
68
+ selected_labels: ['A'],
69
+ selected_values: ['a'],
70
+ },
71
+ }, { sessionId: 'sess-submit' });
72
+ assert.equal(submitted.record.status, 'answered');
73
+ assert.equal(submitted.record.answer?.value, 'a');
74
+ const events = await readQuestionEvents(cwd);
75
+ assert.equal(events.at(-1)?.type, 'question-answered');
76
+ assert.equal(events.at(-1)?.state?.answer_count, 1);
77
+ await assert.rejects(() => submitQuestionAnswerById(cwd, record.question_id, {
78
+ answer: {
79
+ kind: 'option',
80
+ value: 'a',
81
+ selected_labels: ['A'],
82
+ selected_values: ['a'],
83
+ },
84
+ }, { sessionId: 'sess-submit' }), (error) => error instanceof QuestionSubmitError && error.code === 'question_not_open');
85
+ await assert.rejects(() => submitQuestionAnswerById(cwd, 'question-missing', {
86
+ answer: {
87
+ kind: 'option',
88
+ value: 'a',
89
+ selected_labels: ['A'],
90
+ selected_values: ['a'],
91
+ },
92
+ }, { sessionId: 'sess-submit' }), (error) => error instanceof QuestionSubmitError && error.code === 'question_unknown');
93
+ });
94
+ it('rejects submitted answers that do not match the prompt option schema', async () => {
95
+ const cwd = await makeRepo();
96
+ const { record } = await createQuestionRecord(cwd, {
97
+ questions: [
98
+ {
99
+ id: 'single',
100
+ question: 'Pick one',
101
+ options: [{ label: 'A', value: 'a' }],
102
+ allow_other: false,
103
+ other_label: 'Other',
104
+ multi_select: false,
105
+ type: 'single-answerable',
106
+ },
107
+ {
108
+ id: 'multi',
109
+ question: 'Pick many',
110
+ options: [{ label: 'B', value: 'b' }, { label: 'C', value: 'c' }],
111
+ allow_other: false,
112
+ other_label: 'Other',
113
+ multi_select: true,
114
+ type: 'multi-answerable',
115
+ },
116
+ ],
117
+ question: 'Pick one',
118
+ options: [{ label: 'A', value: 'a' }],
119
+ allow_other: false,
120
+ other_label: 'Other',
121
+ multi_select: false,
122
+ }, 'sess-invalid');
123
+ await assert.rejects(() => submitQuestionAnswerById(cwd, record.question_id, {
124
+ answers: [
125
+ {
126
+ question_id: 'single',
127
+ answer: { kind: 'option', value: 'missing', selected_labels: ['Missing'], selected_values: ['missing'] },
128
+ },
129
+ {
130
+ question_id: 'multi',
131
+ answer: { kind: 'multi', value: ['b'], selected_labels: ['B'], selected_values: ['b'] },
132
+ },
133
+ ],
134
+ }, { sessionId: 'sess-invalid' }), (error) => error instanceof QuestionSubmitError && error.code === 'question_invalid_answer');
135
+ await assert.rejects(() => submitQuestionAnswerById(cwd, record.question_id, {
136
+ answers: [
137
+ {
138
+ question_id: 'single',
139
+ answer: { kind: 'other', value: 'custom', selected_labels: ['Other'], selected_values: ['custom'], other_text: 'custom' },
140
+ },
141
+ {
142
+ question_id: 'multi',
143
+ answer: { kind: 'multi', value: ['b'], selected_labels: ['B'], selected_values: ['b'] },
144
+ },
145
+ ],
146
+ }, { sessionId: 'sess-invalid' }), (error) => error instanceof QuestionSubmitError && error.code === 'question_invalid_answer');
147
+ await assert.rejects(() => submitQuestionAnswerById(cwd, record.question_id, {
148
+ answers: [
149
+ {
150
+ question_id: 'single',
151
+ answer: { kind: 'multi', value: ['a'], selected_labels: ['A'], selected_values: ['a'] },
152
+ },
153
+ {
154
+ question_id: 'multi',
155
+ answer: { kind: 'multi', value: ['b'], selected_labels: ['B'], selected_values: ['b'] },
156
+ },
157
+ ],
158
+ }, { sessionId: 'sess-invalid' }), (error) => error instanceof QuestionSubmitError && error.code === 'question_invalid_answer');
159
+ const loaded = await readQuestionRecord(getQuestionRecordPath(cwd, record.question_id, 'sess-invalid'));
160
+ assert.equal(loaded?.status, 'pending');
161
+ });
162
+ it('rejects other answers whose selected labels do not exactly match the other label', async () => {
163
+ const cwd = await makeRepo();
164
+ const { record } = await createQuestionRecord(cwd, {
165
+ question: 'Pick one',
166
+ options: [{ label: 'A', value: 'a' }],
167
+ allow_other: true,
168
+ other_label: 'Something else',
169
+ multi_select: false,
170
+ }, 'sess-other-labels');
171
+ await assert.rejects(() => submitQuestionAnswerById(cwd, record.question_id, {
172
+ answer: {
173
+ kind: 'other',
174
+ value: 'custom',
175
+ selected_labels: ['Something else', 'custom'],
176
+ selected_values: ['custom'],
177
+ other_text: 'custom',
178
+ },
179
+ }, { sessionId: 'sess-other-labels' }), (error) => error instanceof QuestionSubmitError && error.code === 'question_invalid_answer');
180
+ await assert.rejects(() => submitQuestionAnswerById(cwd, record.question_id, {
181
+ answer: {
182
+ kind: 'other',
183
+ value: 'custom',
184
+ selected_labels: ['Other'],
185
+ selected_values: ['custom'],
186
+ other_text: 'custom',
187
+ },
188
+ }, { sessionId: 'sess-other-labels' }), (error) => error instanceof QuestionSubmitError && error.code === 'question_invalid_answer');
189
+ const loaded = await readQuestionRecord(getQuestionRecordPath(cwd, record.question_id, 'sess-other-labels'));
190
+ assert.equal(loaded?.status, 'pending');
191
+ });
192
+ it('rejects multi answers whose selected labels do not match selected values', async () => {
193
+ const cwd = await makeRepo();
194
+ const { record } = await createQuestionRecord(cwd, {
195
+ question: 'Pick many',
196
+ options: [{ label: 'B', value: 'b' }, { label: 'C', value: 'c' }],
197
+ allow_other: true,
198
+ other_label: 'Other value',
199
+ multi_select: true,
200
+ type: 'multi-answerable',
201
+ }, 'sess-multi-labels');
202
+ await assert.rejects(() => submitQuestionAnswerById(cwd, record.question_id, {
203
+ answer: {
204
+ kind: 'multi',
205
+ value: ['b', 'c'],
206
+ selected_labels: ['C', 'B'],
207
+ selected_values: ['b', 'c'],
208
+ },
209
+ }, { sessionId: 'sess-multi-labels' }), (error) => error instanceof QuestionSubmitError && error.code === 'question_invalid_answer');
210
+ await assert.rejects(() => submitQuestionAnswerById(cwd, record.question_id, {
211
+ answer: {
212
+ kind: 'multi',
213
+ value: ['b', 'custom'],
214
+ selected_labels: ['B', 'custom'],
215
+ selected_values: ['b', 'custom'],
216
+ other_text: 'custom',
217
+ },
218
+ }, { sessionId: 'sess-multi-labels' }), (error) => error instanceof QuestionSubmitError && error.code === 'question_invalid_answer');
219
+ const loaded = await readQuestionRecord(getQuestionRecordPath(cwd, record.question_id, 'sess-multi-labels'));
220
+ assert.equal(loaded?.status, 'pending');
221
+ });
222
+ it('dedupes answered lifecycle events when a waiting command observes an externally submitted answer', async () => {
223
+ const cwd = await makeRepo();
224
+ const { record, recordPath } = await createQuestionRecord(cwd, {
225
+ question: 'Pick one',
226
+ options: [{ label: 'A', value: 'a' }],
227
+ allow_other: false,
228
+ other_label: 'Other',
229
+ multi_select: false,
230
+ }, 'sess-external', new Date('2026-05-11T00:00:00.000Z'), {
231
+ emitEvent: true,
232
+ runId: 'run-external-answer',
233
+ });
234
+ const submitted = await submitQuestionAnswerById(cwd, record.question_id, {
235
+ answer: {
236
+ kind: 'option',
237
+ value: 'a',
238
+ selected_labels: ['A'],
239
+ selected_values: ['a'],
240
+ },
241
+ }, { sessionId: 'sess-external' });
242
+ const duplicateAppend = await appendQuestionAnsweredEventOnce(cwd, submitted.record, {
243
+ recordPath,
244
+ timeoutMs: 5000,
245
+ });
246
+ assert.equal(duplicateAppend.appended, false);
247
+ const answeredEvents = (await readQuestionEvents(cwd)).filter((event) => (event.type === 'question-answered' && event.question_id === record.question_id));
248
+ assert.equal(answeredEvents.length, 1);
249
+ assert.equal(answeredEvents[0]?.run_id, 'run-external-answer');
250
+ assert.equal(answeredEvents[0]?.state?.answer_count, 1);
251
+ });
252
+ it('serializes concurrent duplicate submissions so only one answer is accepted', async () => {
253
+ const cwd = await makeRepo();
254
+ const { record } = await createQuestionRecord(cwd, {
255
+ question: 'Pick one',
256
+ options: [{ label: 'A', value: 'a' }],
257
+ allow_other: false,
258
+ other_label: 'Other',
259
+ multi_select: false,
260
+ }, 'sess-race');
261
+ const payload = {
262
+ answer: {
263
+ kind: 'option',
264
+ value: 'a',
265
+ selected_labels: ['A'],
266
+ selected_values: ['a'],
267
+ },
268
+ };
269
+ const results = await Promise.allSettled([
270
+ submitQuestionAnswerById(cwd, record.question_id, payload, { sessionId: 'sess-race' }),
271
+ submitQuestionAnswerById(cwd, record.question_id, payload, { sessionId: 'sess-race' }),
272
+ ]);
273
+ assert.equal(results.filter((result) => result.status === 'fulfilled').length, 1);
274
+ const rejected = results.find((result) => result.status === 'rejected');
275
+ assert.equal(rejected?.reason instanceof QuestionSubmitError, true);
276
+ assert.equal((rejected?.reason).code, 'question_not_open');
277
+ const answeredEvents = (await readQuestionEvents(cwd)).filter((event) => (event.type === 'question-answered' && event.question_id === record.question_id));
278
+ assert.equal(answeredEvents.length, 1);
279
+ });
280
+ it('preserves original run_id correlation on later answered and error events', async () => {
281
+ const cwd = await makeRepo();
282
+ const { record, recordPath } = await createQuestionRecord(cwd, {
283
+ question: 'Pick one',
284
+ options: [{ label: 'A', value: 'a' }],
285
+ allow_other: false,
286
+ other_label: 'Other',
287
+ multi_select: false,
288
+ }, 'sess-run', new Date('2026-05-11T00:00:00.000Z'), {
289
+ emitEvent: true,
290
+ runId: 'run-original',
291
+ });
292
+ await submitQuestionAnswerById(cwd, record.question_id, {
293
+ answer: {
294
+ kind: 'option',
295
+ value: 'a',
296
+ selected_labels: ['A'],
297
+ selected_values: ['a'],
298
+ },
299
+ }, { sessionId: 'sess-run' });
300
+ const answerEvent = (await readQuestionEvents(cwd)).find((event) => (event.type === 'question-answered' && event.question_id === record.question_id));
301
+ assert.equal(answerEvent?.run_id, 'run-original');
302
+ const { recordPath: errorPath } = await createQuestionRecord(cwd, {
303
+ question: 'Pick one',
304
+ options: [{ label: 'A', value: 'a' }],
305
+ allow_other: false,
306
+ other_label: 'Other',
307
+ multi_select: false,
308
+ }, 'sess-run', new Date('2026-05-11T00:01:00.000Z'), {
309
+ emitEvent: true,
310
+ runId: 'run-error-original',
311
+ });
312
+ const errorRecord = await markQuestionTerminalError(errorPath, 'error', 'question_runtime_failed', 'boom');
313
+ await appendQuestionEvent(cwd, 'question-error', errorRecord, { recordPath: errorPath });
314
+ const errorEvent = (await readQuestionEvents(cwd)).find((event) => (event.type === 'question-error' && event.question_id === errorRecord.question_id));
315
+ assert.equal(errorEvent?.run_id, 'run-error-original');
316
+ });
31
317
  it('waits for terminal answered state and returns free-text other values exactly', async () => {
32
318
  const cwd = await makeRepo();
33
319
  const { recordPath } = await createQuestionRecord(cwd, {
@@ -98,5 +384,67 @@ describe('question state', () => {
98
384
  assert.equal(loaded?.answer?.value, 'a');
99
385
  assert.equal(loaded?.renderer?.return_target, '%11');
100
386
  });
387
+ it('injects answered text to the persisted renderer return pane', async () => {
388
+ const cwd = await makeRepo();
389
+ const { recordPath } = await createQuestionRecord(cwd, {
390
+ question: 'Pick one',
391
+ options: [{ label: 'A', value: 'a' }],
392
+ allow_other: false,
393
+ other_label: 'Other',
394
+ multi_select: false,
395
+ }, 'sess-inject');
396
+ await markQuestionPrompting(recordPath, {
397
+ renderer: 'tmux-pane',
398
+ target: '%42',
399
+ launched_at: '2026-05-14T00:00:00.000Z',
400
+ return_target: '%11',
401
+ return_transport: 'tmux-send-keys',
402
+ });
403
+ const injected = [];
404
+ const record = await markQuestionAnswered(recordPath, {
405
+ kind: 'option',
406
+ value: 'a',
407
+ selected_labels: ['A'],
408
+ selected_values: ['a'],
409
+ }, {
410
+ injectAnswersToPane: (paneId, answers) => {
411
+ injected.push({ paneId, values: answers.map((entry) => entry.answer.value) });
412
+ return true;
413
+ },
414
+ });
415
+ assert.equal(record.status, 'answered');
416
+ assert.deepEqual(injected, [{ paneId: '%11', values: ['a'] }]);
417
+ });
418
+ it('skips return-pane injection when renderer metadata has no valid tmux return target', async () => {
419
+ const cwd = await makeRepo();
420
+ const { recordPath } = await createQuestionRecord(cwd, {
421
+ question: 'Pick one',
422
+ options: [{ label: 'A', value: 'a' }],
423
+ allow_other: false,
424
+ other_label: 'Other',
425
+ multi_select: false,
426
+ }, 'sess-no-inject');
427
+ await markQuestionPrompting(recordPath, {
428
+ renderer: 'tmux-pane',
429
+ target: '%42',
430
+ launched_at: '2026-05-14T00:00:00.000Z',
431
+ return_target: 'not-a-pane',
432
+ return_transport: 'tmux-send-keys',
433
+ });
434
+ let injected = false;
435
+ const record = await markQuestionAnswered(recordPath, {
436
+ kind: 'option',
437
+ value: 'a',
438
+ selected_labels: ['A'],
439
+ selected_values: ['a'],
440
+ }, {
441
+ injectAnswersToPane: () => {
442
+ injected = true;
443
+ return true;
444
+ },
445
+ });
446
+ assert.equal(record.status, 'answered');
447
+ assert.equal(injected, false);
448
+ });
101
449
  });
102
450
  //# sourceMappingURL=state.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"state.test.js","sourceRoot":"","sources":["../../../src/question/__tests__/state.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.test.js","sourceRoot":"","sources":["../../../src/question/__tests__/state.test.ts"],"names":[],"mappings":"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"}
@@ -215,7 +215,7 @@ describe('question ui arrow navigation', () => {
215
215
  await rm(cwd, { recursive: true, force: true });
216
216
  }
217
217
  });
218
- it('injects using fresh renderer metadata when the UI read a pre-prompting record', async () => {
218
+ it('answers and injects through persisted renderer metadata when it races the UI answer', async () => {
219
219
  const cwd = await mkdtemp(join(tmpdir(), 'omx-question-ui-stale-record-'));
220
220
  try {
221
221
  const { recordPath } = await createQuestionRecord(cwd, {
@@ -263,7 +263,7 @@ describe('question ui arrow navigation', () => {
263
263
  await rm(cwd, { recursive: true, force: true });
264
264
  }
265
265
  });
266
- it('falls back to launcher-provided return-target env when prompting metadata races the UI answer', async () => {
266
+ it('does not use launcher return-target env as an answer transport', async () => {
267
267
  const cwd = await mkdtemp(join(tmpdir(), 'omx-question-ui-env-return-'));
268
268
  try {
269
269
  const { recordPath } = await createQuestionRecord(cwd, {
@@ -293,13 +293,13 @@ describe('question ui arrow navigation', () => {
293
293
  input.emit('keypress', '', { name: 'enter' });
294
294
  }, 25);
295
295
  await runPromise;
296
- assert.deepEqual(injected, [{ paneId: '%11', value: 'a' }]);
296
+ assert.deepEqual(injected, []);
297
297
  }
298
298
  finally {
299
299
  await rm(cwd, { recursive: true, force: true });
300
300
  }
301
301
  });
302
- it('submits multi-answerable checkbox selections through the env return-target fallback', async () => {
302
+ it('persists multi-answerable checkbox selections without return-pane injection', async () => {
303
303
  const cwd = await mkdtemp(join(tmpdir(), 'omx-question-ui-multi-env-return-'));
304
304
  try {
305
305
  const { recordPath } = await createQuestionRecord(cwd, {
@@ -335,7 +335,7 @@ describe('question ui arrow navigation', () => {
335
335
  input.emit('keypress', '', { name: 'enter' });
336
336
  }, 25);
337
337
  await runPromise;
338
- assert.deepEqual(injected, [{ paneId: '%11', value: ['a', 'b'] }]);
338
+ assert.deepEqual(injected, []);
339
339
  const loaded = await readQuestionRecord(recordPath);
340
340
  assert.equal(loaded?.status, 'answered');
341
341
  assert.deepEqual(loaded?.answer?.selected_values, ['a', 'b']);
@@ -401,7 +401,7 @@ describe('question ui batch wizard', () => {
401
401
  await rm(cwd, { recursive: true, force: true });
402
402
  }
403
403
  });
404
- it('injects every batch answer into the return pane', async () => {
404
+ it('persists every batch answer and injects through return-pane metadata', async () => {
405
405
  const cwd = await mkdtemp(join(tmpdir(), 'omx-question-ui-batch-inject-'));
406
406
  try {
407
407
  const { recordPath } = await createQuestionRecord(cwd, normalizeQuestionInput({
@@ -1 +1 @@
1
- {"version":3,"file":"ui.test.js","sourceRoot":"","sources":["../../../src/question/__tests__/ui.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ui.test.js","sourceRoot":"","sources":["../../../src/question/__tests__/ui.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import type { QuestionAnswerEntry, QuestionRecord } from './types.js';
2
+ export type QuestionEventType = 'question-created' | 'question-answered' | 'question-error';
3
+ export interface QuestionEventRecord {
4
+ kind: 'omx.question-event/v1';
5
+ event_id: string;
6
+ type: QuestionEventType;
7
+ question_id: string;
8
+ session_id?: string;
9
+ run_id?: string;
10
+ created_at: string;
11
+ question_created_at?: string;
12
+ status: QuestionRecord['status'];
13
+ source?: string;
14
+ context_summary?: string;
15
+ option_schema?: QuestionRecord['questions'];
16
+ state?: {
17
+ record_path?: string;
18
+ renderer?: QuestionRecord['renderer'];
19
+ timeout_ms?: number;
20
+ error?: QuestionRecord['error'];
21
+ answer_count?: number;
22
+ };
23
+ }
24
+ export declare function getQuestionEventsPath(cwd: string): string;
25
+ export declare function resolveQuestionRunId(env?: NodeJS.ProcessEnv): string | undefined;
26
+ export declare function summarizeQuestionContext(record: QuestionRecord): string;
27
+ export declare function buildQuestionEvent(type: QuestionEventType, record: QuestionRecord, options?: {
28
+ recordPath?: string;
29
+ timeoutMs?: number;
30
+ runId?: string;
31
+ now?: Date;
32
+ }): QuestionEventRecord;
33
+ export declare function appendQuestionEvent(cwd: string, type: QuestionEventType, record: QuestionRecord, options?: {
34
+ recordPath?: string;
35
+ timeoutMs?: number;
36
+ runId?: string;
37
+ now?: Date;
38
+ }): Promise<QuestionEventRecord>;
39
+ export declare function appendQuestionAnsweredEventOnce(cwd: string, record: QuestionRecord, options?: {
40
+ recordPath?: string;
41
+ timeoutMs?: number;
42
+ runId?: string;
43
+ now?: Date;
44
+ }): Promise<{
45
+ event: QuestionEventRecord;
46
+ appended: boolean;
47
+ }>;
48
+ export declare function readQuestionEvents(cwd: string, options?: {
49
+ limit?: number;
50
+ type?: QuestionEventType;
51
+ }): Promise<QuestionEventRecord[]>;
52
+ export declare function normalizeSubmittedAnswers(record: QuestionRecord, raw: unknown): QuestionAnswerEntry[];
53
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/question/events.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEtE,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,GAAG,mBAAmB,GAAG,gBAAgB,CAAC;AAK5F,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,uBAAuB,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,iBAAiB,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC;IAC5C,KAAK,CAAC,EAAE;QACN,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;QACtC,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;QAChC,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;CACH;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEzD;AAgFD,wBAAgB,oBAAoB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,GAAG,SAAS,CAE7F;AAOD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAOvE;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,iBAAiB,EACvB,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,IAAI,CAAA;CAAO,GACpF,mBAAmB,CAyBrB;AAED,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,iBAAiB,EACvB,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,IAAI,CAAA;CAAO,GACpF,OAAO,CAAC,mBAAmB,CAAC,CAM9B;AAED,wBAAsB,+BAA+B,CACnD,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,IAAI,CAAA;CAAO,GACpF,OAAO,CAAC;IAAE,KAAK,EAAE,mBAAmB,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAAC,CAS5D;AAED,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,iBAAiB,CAAA;CAAO,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAKhJ;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,OAAO,GAAG,mBAAmB,EAAE,CAmCrG"}