oh-my-codex 0.20.2 → 0.20.3

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 (367) hide show
  1. package/Cargo.lock +7 -6
  2. package/Cargo.toml +1 -1
  3. package/README.md +26 -0
  4. package/crates/omx-runtime/Cargo.toml +1 -0
  5. package/crates/omx-runtime/src/main.rs +25 -2
  6. package/crates/omx-runtime/tests/execution.rs +219 -0
  7. package/crates/omx-runtime-core/src/dispatch.rs +96 -10
  8. package/crates/omx-runtime-core/src/engine.rs +839 -29
  9. package/crates/omx-runtime-core/src/lib.rs +8 -0
  10. package/dist/agents/__tests__/definitions.test.js +81 -0
  11. package/dist/agents/__tests__/definitions.test.js.map +1 -1
  12. package/dist/agents/__tests__/native-config.test.js +25 -0
  13. package/dist/agents/__tests__/native-config.test.js.map +1 -1
  14. package/dist/agents/native-config.d.ts +2 -1
  15. package/dist/agents/native-config.d.ts.map +1 -1
  16. package/dist/agents/native-config.js.map +1 -1
  17. package/dist/auth/hotswap.d.ts +6 -0
  18. package/dist/auth/hotswap.d.ts.map +1 -1
  19. package/dist/auth/hotswap.js +85 -15
  20. package/dist/auth/hotswap.js.map +1 -1
  21. package/dist/autopilot/__tests__/ralplan-gate.test.js +1 -1
  22. package/dist/autopilot/__tests__/ralplan-gate.test.js.map +1 -1
  23. package/dist/cli/__tests__/auth.test.js +60 -6
  24. package/dist/cli/__tests__/auth.test.js.map +1 -1
  25. package/dist/cli/__tests__/codex-plugin-layout.test.js +80 -0
  26. package/dist/cli/__tests__/codex-plugin-layout.test.js.map +1 -1
  27. package/dist/cli/__tests__/doctor-warning-copy.test.js +103 -1
  28. package/dist/cli/__tests__/doctor-warning-copy.test.js.map +1 -1
  29. package/dist/cli/__tests__/exec.test.js +136 -0
  30. package/dist/cli/__tests__/exec.test.js.map +1 -1
  31. package/dist/cli/__tests__/index.test.js +258 -4
  32. package/dist/cli/__tests__/index.test.js.map +1 -1
  33. package/dist/cli/__tests__/launch-fallback.test.js +287 -1
  34. package/dist/cli/__tests__/launch-fallback.test.js.map +1 -1
  35. package/dist/cli/__tests__/mcp-parity.test.js +4 -1
  36. package/dist/cli/__tests__/mcp-parity.test.js.map +1 -1
  37. package/dist/cli/__tests__/native-hook-claim-journal.test.js +84 -6
  38. package/dist/cli/__tests__/native-hook-claim-journal.test.js.map +1 -1
  39. package/dist/cli/__tests__/ralph-goal-mode-contract.test.js +3 -3
  40. package/dist/cli/__tests__/ralph-goal-mode-contract.test.js.map +1 -1
  41. package/dist/cli/__tests__/ralph.test.js +3 -3
  42. package/dist/cli/__tests__/ralph.test.js.map +1 -1
  43. package/dist/cli/__tests__/ralplan-bootstrap-3181.test.js +56 -171
  44. package/dist/cli/__tests__/ralplan-bootstrap-3181.test.js.map +1 -1
  45. package/dist/cli/__tests__/ralplan.test.js +37 -111
  46. package/dist/cli/__tests__/ralplan.test.js.map +1 -1
  47. package/dist/cli/__tests__/resume.test.js +11 -10
  48. package/dist/cli/__tests__/resume.test.js.map +1 -1
  49. package/dist/cli/__tests__/session-search-help.test.js +25 -1
  50. package/dist/cli/__tests__/session-search-help.test.js.map +1 -1
  51. package/dist/cli/__tests__/setup-install-mode.test.js +42 -4
  52. package/dist/cli/__tests__/setup-install-mode.test.js.map +1 -1
  53. package/dist/cli/__tests__/team.test.js +105 -7
  54. package/dist/cli/__tests__/team.test.js.map +1 -1
  55. package/dist/cli/__tests__/uninstall.test.js +46 -0
  56. package/dist/cli/__tests__/uninstall.test.js.map +1 -1
  57. package/dist/cli/__tests__/windows-popup-loop-contract.test.js +2 -1
  58. package/dist/cli/__tests__/windows-popup-loop-contract.test.js.map +1 -1
  59. package/dist/cli/doctor.d.ts +3 -0
  60. package/dist/cli/doctor.d.ts.map +1 -1
  61. package/dist/cli/doctor.js +15 -2
  62. package/dist/cli/doctor.js.map +1 -1
  63. package/dist/cli/index.d.ts +4 -1
  64. package/dist/cli/index.d.ts.map +1 -1
  65. package/dist/cli/index.js +138 -38
  66. package/dist/cli/index.js.map +1 -1
  67. package/dist/cli/mcp-parity.js +2 -2
  68. package/dist/cli/mcp-parity.js.map +1 -1
  69. package/dist/cli/native-hook-claim-journal.d.ts +16 -5
  70. package/dist/cli/native-hook-claim-journal.d.ts.map +1 -1
  71. package/dist/cli/native-hook-claim-journal.js +42 -29
  72. package/dist/cli/native-hook-claim-journal.js.map +1 -1
  73. package/dist/cli/ralph.js +2 -2
  74. package/dist/cli/ralph.js.map +1 -1
  75. package/dist/cli/ralplan.d.ts +4 -8
  76. package/dist/cli/ralplan.d.ts.map +1 -1
  77. package/dist/cli/ralplan.js +19 -112
  78. package/dist/cli/ralplan.js.map +1 -1
  79. package/dist/cli/session-search.d.ts +5 -0
  80. package/dist/cli/session-search.d.ts.map +1 -1
  81. package/dist/cli/session-search.js +87 -0
  82. package/dist/cli/session-search.js.map +1 -1
  83. package/dist/cli/setup.d.ts +5 -0
  84. package/dist/cli/setup.d.ts.map +1 -1
  85. package/dist/cli/setup.js +80 -31
  86. package/dist/cli/setup.js.map +1 -1
  87. package/dist/cli/uninstall.d.ts +9 -0
  88. package/dist/cli/uninstall.d.ts.map +1 -1
  89. package/dist/cli/uninstall.js +61 -19
  90. package/dist/cli/uninstall.js.map +1 -1
  91. package/dist/compat/__tests__/rust-runtime-compat.test.js +1 -1
  92. package/dist/config/__tests__/generator-idempotent.test.js +330 -1
  93. package/dist/config/__tests__/generator-idempotent.test.js.map +1 -1
  94. package/dist/config/__tests__/generator-notify.test.js +2 -2
  95. package/dist/config/__tests__/generator-notify.test.js.map +1 -1
  96. package/dist/config/__tests__/models.test.js +67 -3
  97. package/dist/config/__tests__/models.test.js.map +1 -1
  98. package/dist/config/generator.d.ts +4 -20
  99. package/dist/config/generator.d.ts.map +1 -1
  100. package/dist/config/generator.js +499 -119
  101. package/dist/config/generator.js.map +1 -1
  102. package/dist/config/models.d.ts +12 -2
  103. package/dist/config/models.d.ts.map +1 -1
  104. package/dist/config/models.js +15 -1
  105. package/dist/config/models.js.map +1 -1
  106. package/dist/hooks/__tests__/agents-overlay.test.js +2 -2
  107. package/dist/hooks/__tests__/agents-overlay.test.js.map +1 -1
  108. package/dist/hooks/__tests__/keyword-detector.test.js +4 -4
  109. package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
  110. package/dist/hooks/__tests__/notify-fallback-watcher.test.js +238 -543
  111. package/dist/hooks/__tests__/notify-fallback-watcher.test.js.map +1 -1
  112. package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js +38 -4
  113. package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js.map +1 -1
  114. package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js +96 -9
  115. package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js.map +1 -1
  116. package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js +531 -12
  117. package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js.map +1 -1
  118. package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js +155 -23
  119. package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js.map +1 -1
  120. package/dist/hooks/__tests__/notify-hook-team-tmux-guard.test.js +482 -32
  121. package/dist/hooks/__tests__/notify-hook-team-tmux-guard.test.js.map +1 -1
  122. package/dist/hooks/__tests__/notify-hook-tmux-heal.test.js +68 -1
  123. package/dist/hooks/__tests__/notify-hook-tmux-heal.test.js.map +1 -1
  124. package/dist/hooks/__tests__/notify-hook-tmux-scrollback.test.js +7 -1
  125. package/dist/hooks/__tests__/notify-hook-tmux-scrollback.test.js.map +1 -1
  126. package/dist/hooks/__tests__/notify-hook-worker-idle.test.js +43 -4
  127. package/dist/hooks/__tests__/notify-hook-worker-idle.test.js.map +1 -1
  128. package/dist/hooks/__tests__/session.test.js +348 -2
  129. package/dist/hooks/__tests__/session.test.js.map +1 -1
  130. package/dist/hooks/agents-overlay.js +1 -1
  131. package/dist/hooks/session.d.ts +26 -2
  132. package/dist/hooks/session.d.ts.map +1 -1
  133. package/dist/hooks/session.js +169 -13
  134. package/dist/hooks/session.js.map +1 -1
  135. package/dist/leader/__tests__/contract.test.js +57 -7
  136. package/dist/leader/__tests__/contract.test.js.map +1 -1
  137. package/dist/leader/contract.d.ts +16 -0
  138. package/dist/leader/contract.d.ts.map +1 -1
  139. package/dist/leader/contract.js +79 -4
  140. package/dist/leader/contract.js.map +1 -1
  141. package/dist/mcp/__tests__/code-intel-server.test.js +31 -3
  142. package/dist/mcp/__tests__/code-intel-server.test.js.map +1 -1
  143. package/dist/mcp/__tests__/wiki-server.test.js +18 -0
  144. package/dist/mcp/__tests__/wiki-server.test.js.map +1 -1
  145. package/dist/mcp/code-intel-server.d.ts.map +1 -1
  146. package/dist/mcp/code-intel-server.js +13 -3
  147. package/dist/mcp/code-intel-server.js.map +1 -1
  148. package/dist/mcp/wiki-server.d.ts +11 -0
  149. package/dist/mcp/wiki-server.d.ts.map +1 -1
  150. package/dist/mcp/wiki-server.js +9 -2
  151. package/dist/mcp/wiki-server.js.map +1 -1
  152. package/dist/modes/__tests__/base-tmux-pane.test.js +4 -4
  153. package/dist/modes/__tests__/base-tmux-pane.test.js.map +1 -1
  154. package/dist/notifications/temp-contract.d.ts.map +1 -1
  155. package/dist/notifications/temp-contract.js +4 -0
  156. package/dist/notifications/temp-contract.js.map +1 -1
  157. package/dist/pipeline/__tests__/orchestrator.test.js +4 -4
  158. package/dist/pipeline/__tests__/orchestrator.test.js.map +1 -1
  159. package/dist/pipeline/__tests__/stages.test.js +8 -8
  160. package/dist/pipeline/__tests__/stages.test.js.map +1 -1
  161. package/dist/ralplan/__tests__/consensus-gate.test.js +134 -10
  162. package/dist/ralplan/__tests__/consensus-gate.test.js.map +1 -1
  163. package/dist/ralplan/__tests__/documented-leader-preflight.test.d.ts +2 -0
  164. package/dist/ralplan/__tests__/documented-leader-preflight.test.d.ts.map +1 -0
  165. package/dist/ralplan/__tests__/documented-leader-preflight.test.js +46 -0
  166. package/dist/ralplan/__tests__/documented-leader-preflight.test.js.map +1 -0
  167. package/dist/ralplan/__tests__/runtime.test.js +8 -4
  168. package/dist/ralplan/__tests__/runtime.test.js.map +1 -1
  169. package/dist/ralplan/consensus-gate.d.ts.map +1 -1
  170. package/dist/ralplan/consensus-gate.js +58 -50
  171. package/dist/ralplan/consensus-gate.js.map +1 -1
  172. package/dist/ralplan/documented-leader-preflight.d.ts +34 -0
  173. package/dist/ralplan/documented-leader-preflight.d.ts.map +1 -0
  174. package/dist/ralplan/documented-leader-preflight.js +58 -0
  175. package/dist/ralplan/documented-leader-preflight.js.map +1 -0
  176. package/dist/ralplan/runtime.d.ts +1 -0
  177. package/dist/ralplan/runtime.d.ts.map +1 -1
  178. package/dist/ralplan/runtime.js +11 -7
  179. package/dist/ralplan/runtime.js.map +1 -1
  180. package/dist/runtime/__tests__/bridge.test.js +42 -1
  181. package/dist/runtime/__tests__/bridge.test.js.map +1 -1
  182. package/dist/runtime/bridge.d.ts +12 -0
  183. package/dist/runtime/bridge.d.ts.map +1 -1
  184. package/dist/runtime/bridge.js +52 -1
  185. package/dist/runtime/bridge.js.map +1 -1
  186. package/dist/scripts/__tests__/codex-native-hook.test.js +2620 -487
  187. package/dist/scripts/__tests__/codex-native-hook.test.js.map +1 -1
  188. package/dist/scripts/__tests__/reasoning-artifact-contract.test.d.ts +2 -0
  189. package/dist/scripts/__tests__/reasoning-artifact-contract.test.d.ts.map +1 -0
  190. package/dist/scripts/__tests__/reasoning-artifact-contract.test.js +108 -0
  191. package/dist/scripts/__tests__/reasoning-artifact-contract.test.js.map +1 -0
  192. package/dist/scripts/__tests__/role-intent-bootstrap-e2e-3181.test.js +46 -173
  193. package/dist/scripts/__tests__/role-intent-bootstrap-e2e-3181.test.js.map +1 -1
  194. package/dist/scripts/__tests__/role-intent-durable-recovery-3181.test.js +39 -159
  195. package/dist/scripts/__tests__/role-intent-durable-recovery-3181.test.js.map +1 -1
  196. package/dist/scripts/__tests__/smoke-packed-install.test.js +254 -2
  197. package/dist/scripts/__tests__/smoke-packed-install.test.js.map +1 -1
  198. package/dist/scripts/codex-native-hook.d.ts +4 -1
  199. package/dist/scripts/codex-native-hook.d.ts.map +1 -1
  200. package/dist/scripts/codex-native-hook.js +11013 -1153
  201. package/dist/scripts/codex-native-hook.js.map +1 -1
  202. package/dist/scripts/notify-fallback-watcher.js +82 -108
  203. package/dist/scripts/notify-fallback-watcher.js.map +1 -1
  204. package/dist/scripts/notify-hook/auto-nudge.d.ts.map +1 -1
  205. package/dist/scripts/notify-hook/auto-nudge.js +74 -3
  206. package/dist/scripts/notify-hook/auto-nudge.js.map +1 -1
  207. package/dist/scripts/notify-hook/team-dispatch.d.ts +9 -0
  208. package/dist/scripts/notify-hook/team-dispatch.d.ts.map +1 -1
  209. package/dist/scripts/notify-hook/team-dispatch.js +234 -79
  210. package/dist/scripts/notify-hook/team-dispatch.js.map +1 -1
  211. package/dist/scripts/notify-hook/team-leader-nudge.d.ts.map +1 -1
  212. package/dist/scripts/notify-hook/team-leader-nudge.js +39 -13
  213. package/dist/scripts/notify-hook/team-leader-nudge.js.map +1 -1
  214. package/dist/scripts/notify-hook/team-tmux-guard.d.ts +12 -4
  215. package/dist/scripts/notify-hook/team-tmux-guard.d.ts.map +1 -1
  216. package/dist/scripts/notify-hook/team-tmux-guard.js +365 -44
  217. package/dist/scripts/notify-hook/team-tmux-guard.js.map +1 -1
  218. package/dist/scripts/notify-hook/team-worker-stop.d.ts.map +1 -1
  219. package/dist/scripts/notify-hook/team-worker-stop.js +19 -18
  220. package/dist/scripts/notify-hook/team-worker-stop.js.map +1 -1
  221. package/dist/scripts/notify-hook/team-worker.d.ts +3 -0
  222. package/dist/scripts/notify-hook/team-worker.d.ts.map +1 -1
  223. package/dist/scripts/notify-hook/team-worker.js +37 -28
  224. package/dist/scripts/notify-hook/team-worker.js.map +1 -1
  225. package/dist/scripts/notify-hook/tmux-injection.d.ts.map +1 -1
  226. package/dist/scripts/notify-hook/tmux-injection.js +28 -2
  227. package/dist/scripts/notify-hook/tmux-injection.js.map +1 -1
  228. package/dist/scripts/notify-hook.js +1 -0
  229. package/dist/scripts/notify-hook.js.map +1 -1
  230. package/dist/scripts/smoke-packed-install.d.ts +48 -3
  231. package/dist/scripts/smoke-packed-install.d.ts.map +1 -1
  232. package/dist/scripts/smoke-packed-install.js +2796 -13
  233. package/dist/scripts/smoke-packed-install.js.map +1 -1
  234. package/dist/state/__tests__/mode-state-context.test.js +54 -0
  235. package/dist/state/__tests__/mode-state-context.test.js.map +1 -1
  236. package/dist/state/__tests__/operations.test.js +2 -0
  237. package/dist/state/__tests__/operations.test.js.map +1 -1
  238. package/dist/state/mode-state-context.d.ts +5 -0
  239. package/dist/state/mode-state-context.d.ts.map +1 -1
  240. package/dist/state/mode-state-context.js +59 -0
  241. package/dist/state/mode-state-context.js.map +1 -1
  242. package/dist/subagents/__tests__/leader-bootstrap-3181.test.js +24 -245
  243. package/dist/subagents/__tests__/leader-bootstrap-3181.test.js.map +1 -1
  244. package/dist/subagents/tracker.d.ts +1 -82
  245. package/dist/subagents/tracker.d.ts.map +1 -1
  246. package/dist/subagents/tracker.js +3 -275
  247. package/dist/subagents/tracker.js.map +1 -1
  248. package/dist/team/__tests__/api-interop.test.js +91 -1
  249. package/dist/team/__tests__/api-interop.test.js.map +1 -1
  250. package/dist/team/__tests__/delivery-e2e-smoke.test.js +52 -10
  251. package/dist/team/__tests__/delivery-e2e-smoke.test.js.map +1 -1
  252. package/dist/team/__tests__/idle-nudge.test.js +45 -15
  253. package/dist/team/__tests__/idle-nudge.test.js.map +1 -1
  254. package/dist/team/__tests__/mcp-comm.test.js +93 -27
  255. package/dist/team/__tests__/mcp-comm.test.js.map +1 -1
  256. package/dist/team/__tests__/model-contract.test.js +110 -3
  257. package/dist/team/__tests__/model-contract.test.js.map +1 -1
  258. package/dist/team/__tests__/runtime-cli.test.js +9 -0
  259. package/dist/team/__tests__/runtime-cli.test.js.map +1 -1
  260. package/dist/team/__tests__/runtime.test.js +3204 -335
  261. package/dist/team/__tests__/runtime.test.js.map +1 -1
  262. package/dist/team/__tests__/scaling.test.js +2359 -142
  263. package/dist/team/__tests__/scaling.test.js.map +1 -1
  264. package/dist/team/__tests__/state.test.js +804 -36
  265. package/dist/team/__tests__/state.test.js.map +1 -1
  266. package/dist/team/__tests__/team-ops-contract.test.js +6 -0
  267. package/dist/team/__tests__/team-ops-contract.test.js.map +1 -1
  268. package/dist/team/__tests__/tmux-session.test.js +3049 -784
  269. package/dist/team/__tests__/tmux-session.test.js.map +1 -1
  270. package/dist/team/__tests__/worker-runtime-identity.test.js +38 -2
  271. package/dist/team/__tests__/worker-runtime-identity.test.js.map +1 -1
  272. package/dist/team/__tests__/worktree.test.js +6 -0
  273. package/dist/team/__tests__/worktree.test.js.map +1 -1
  274. package/dist/team/api-interop.d.ts.map +1 -1
  275. package/dist/team/api-interop.js +15 -9
  276. package/dist/team/api-interop.js.map +1 -1
  277. package/dist/team/exact-pane.d.ts +23 -0
  278. package/dist/team/exact-pane.d.ts.map +1 -0
  279. package/dist/team/exact-pane.js +133 -0
  280. package/dist/team/exact-pane.js.map +1 -0
  281. package/dist/team/idle-nudge.d.ts +12 -1
  282. package/dist/team/idle-nudge.d.ts.map +1 -1
  283. package/dist/team/idle-nudge.js +41 -14
  284. package/dist/team/idle-nudge.js.map +1 -1
  285. package/dist/team/model-contract.d.ts +2 -5
  286. package/dist/team/model-contract.d.ts.map +1 -1
  287. package/dist/team/model-contract.js +59 -17
  288. package/dist/team/model-contract.js.map +1 -1
  289. package/dist/team/runtime.d.ts +1 -0
  290. package/dist/team/runtime.d.ts.map +1 -1
  291. package/dist/team/runtime.js +1244 -180
  292. package/dist/team/runtime.js.map +1 -1
  293. package/dist/team/scaling.d.ts +13 -1
  294. package/dist/team/scaling.d.ts.map +1 -1
  295. package/dist/team/scaling.js +1430 -384
  296. package/dist/team/scaling.js.map +1 -1
  297. package/dist/team/state/dispatch.d.ts.map +1 -1
  298. package/dist/team/state/dispatch.js +26 -8
  299. package/dist/team/state/dispatch.js.map +1 -1
  300. package/dist/team/state/locks.d.ts.map +1 -1
  301. package/dist/team/state/locks.js +61 -13
  302. package/dist/team/state/locks.js.map +1 -1
  303. package/dist/team/state/tasks.d.ts.map +1 -1
  304. package/dist/team/state/tasks.js +4 -3
  305. package/dist/team/state/tasks.js.map +1 -1
  306. package/dist/team/state.d.ts +67 -1
  307. package/dist/team/state.d.ts.map +1 -1
  308. package/dist/team/state.js +636 -129
  309. package/dist/team/state.js.map +1 -1
  310. package/dist/team/team-ops.d.ts +5 -0
  311. package/dist/team/team-ops.d.ts.map +1 -1
  312. package/dist/team/team-ops.js +4 -0
  313. package/dist/team/team-ops.js.map +1 -1
  314. package/dist/team/tmux-session.d.ts +123 -23
  315. package/dist/team/tmux-session.d.ts.map +1 -1
  316. package/dist/team/tmux-session.js +1250 -291
  317. package/dist/team/tmux-session.js.map +1 -1
  318. package/dist/team/worktree.d.ts.map +1 -1
  319. package/dist/team/worktree.js +4 -0
  320. package/dist/team/worktree.js.map +1 -1
  321. package/dist/utils/__tests__/file-durability.test.d.ts +2 -0
  322. package/dist/utils/__tests__/file-durability.test.d.ts.map +1 -0
  323. package/dist/utils/__tests__/file-durability.test.js +57 -0
  324. package/dist/utils/__tests__/file-durability.test.js.map +1 -0
  325. package/dist/utils/file-durability.d.ts +15 -0
  326. package/dist/utils/file-durability.d.ts.map +1 -0
  327. package/dist/utils/file-durability.js +37 -0
  328. package/dist/utils/file-durability.js.map +1 -0
  329. package/dist/verification/__tests__/dev-merge-issue-close-workflow.test.js +3 -0
  330. package/dist/verification/__tests__/dev-merge-issue-close-workflow.test.js.map +1 -1
  331. package/dist/wiki/lint.d.ts +4 -1
  332. package/dist/wiki/lint.d.ts.map +1 -1
  333. package/dist/wiki/lint.js +3 -2
  334. package/dist/wiki/lint.js.map +1 -1
  335. package/package.json +1 -1
  336. package/plugins/oh-my-codex/.codex-plugin/plugin.json +1 -1
  337. package/plugins/oh-my-codex/hooks/codex-native-hook.mjs +24 -0
  338. package/plugins/oh-my-codex/skills/ralph/SKILL.md +6 -4
  339. package/plugins/oh-my-codex/skills/ralplan/SKILL.md +3 -2
  340. package/plugins/oh-my-codex/skills/team/SKILL.md +13 -9
  341. package/skills/ralph/SKILL.md +6 -4
  342. package/skills/ralplan/SKILL.md +3 -2
  343. package/skills/team/SKILL.md +13 -9
  344. package/src/scripts/__tests__/codex-native-hook.test.ts +2826 -497
  345. package/src/scripts/__tests__/reasoning-artifact-contract.test.ts +129 -0
  346. package/src/scripts/__tests__/role-intent-bootstrap-e2e-3181.test.ts +48 -185
  347. package/src/scripts/__tests__/role-intent-durable-recovery-3181.test.ts +44 -177
  348. package/src/scripts/__tests__/smoke-packed-install.test.ts +320 -2
  349. package/src/scripts/codex-native-hook.ts +10715 -1069
  350. package/src/scripts/notify-fallback-watcher.ts +84 -115
  351. package/src/scripts/notify-hook/auto-nudge.ts +71 -3
  352. package/src/scripts/notify-hook/team-dispatch.ts +242 -75
  353. package/src/scripts/notify-hook/team-leader-nudge.ts +40 -18
  354. package/src/scripts/notify-hook/team-tmux-guard.ts +366 -39
  355. package/src/scripts/notify-hook/team-worker-stop.ts +20 -16
  356. package/src/scripts/notify-hook/team-worker.ts +39 -26
  357. package/src/scripts/notify-hook/tmux-injection.ts +28 -2
  358. package/src/scripts/notify-hook.ts +1 -0
  359. package/src/scripts/smoke-packed-install.ts +3196 -14
  360. package/dist/subagents/__tests__/adapted-role-binding.test.d.ts +0 -2
  361. package/dist/subagents/__tests__/adapted-role-binding.test.d.ts.map +0 -1
  362. package/dist/subagents/__tests__/adapted-role-binding.test.js +0 -988
  363. package/dist/subagents/__tests__/adapted-role-binding.test.js.map +0 -1
  364. package/dist/subagents/adapted-role-binding.d.ts +0 -17
  365. package/dist/subagents/adapted-role-binding.d.ts.map +0 -1
  366. package/dist/subagents/adapted-role-binding.js +0 -75
  367. package/dist/subagents/adapted-role-binding.js.map +0 -1
@@ -10,6 +10,13 @@ import { executeTeamApiOperation } from '../api-interop.js';
10
10
  import { sendWorkerMessage, broadcastWorkerMessage } from '../runtime.js';
11
11
  import { drainPendingTeamDispatch } from '../../scripts/notify-hook/team-dispatch.js';
12
12
  import { teamCommand } from '../../cli/team.js';
13
+ const EXACT_GLOBAL_PANE_PROOF_COMMAND = 'list-panes -a -F #{pane_id}\t#{pane_dead}\t#{pane_pid}';
14
+ function assertExactPaneProofBeforeTargetEffect(tmuxLog, paneId) {
15
+ const commands = tmuxLog.trim().split('\n').filter(Boolean);
16
+ const effectIndex = commands.findIndex((command) => command.startsWith(`send-keys -t ${paneId} `));
17
+ assert.ok(effectIndex >= 0, `expected send-keys target effect for ${paneId}`);
18
+ assert.ok(commands.slice(0, effectIndex).includes(EXACT_GLOBAL_PANE_PROOF_COMMAND), `expected exact global pane proof before send-keys for ${paneId}`);
19
+ }
13
20
  function buildFakeTmux(tmuxLogPath) {
14
21
  const bufferPath = `${tmuxLogPath}.buffer`;
15
22
  return `#!/usr/bin/env bash
@@ -38,6 +45,13 @@ fi
38
45
  if [[ "$cmd" == "paste-buffer" ]]; then
39
46
  exit 0
40
47
  fi
48
+ if [[ "$cmd" == "show-option" ]]; then
49
+ if [[ "$*" == *"@omx_team_pane_owner_id" ]]; then
50
+ echo "delivery-smoke-owner"
51
+ exit 0
52
+ fi
53
+ exit 1
54
+ fi
41
55
  if [[ "$cmd" == "display-message" ]]; then
42
56
  target=""
43
57
  fmt=""
@@ -83,7 +97,11 @@ if [[ "$cmd" == "send-keys" ]]; then
83
97
  exit 0
84
98
  fi
85
99
  if [[ "$cmd" == "list-panes" ]]; then
86
- printf '%%10\t111\n%%11\t112\n%%12\t113\n%%95\t195\n'
100
+ if [[ "$#" -eq 3 && "$1" == "-a" && "$2" == "-F" && "$3" == "#{pane_id}\t#{pane_dead}\t#{pane_pid}" ]]; then
101
+ printf '%%10\t0\t111\n%%11\t0\t112\n%%12\t0\t113\n%%95\t0\t195\n%%96\t0\t196\n'
102
+ else
103
+ printf '%%10\t111\n%%11\t112\n%%12\t113\n%%95\t195\n%%96\t196\n'
104
+ fi
87
105
  exit 0
88
106
  fi
89
107
  exit 0
@@ -121,6 +139,11 @@ const mailboxPath = path.join(dir, 'mailbox.json');
121
139
  const dispatch = readJson(dispatchPath, { records: [] });
122
140
  const mailbox = readJson(mailboxPath, { records: [] });
123
141
  const timestamp = nowIso();
142
+ if (command.command === 'CaptureSnapshot') {
143
+ writeJson(dispatchPath, dispatch);
144
+ process.stdout.write(JSON.stringify({ event: 'SnapshotCaptured' }) + '\\n');
145
+ process.exit(0);
146
+ }
124
147
  switch (command.command) {
125
148
  case 'QueueDispatch':
126
149
  dispatch.records.push({ request_id: command.request_id, target: command.target, status: 'pending', created_at: timestamp, notified_at: null, delivered_at: null, failed_at: null, reason: null, metadata: command.metadata ?? null });
@@ -242,15 +265,30 @@ async function withBridgeFixture(cwd, fn) {
242
265
  }
243
266
  }
244
267
  async function configurePaneIds(teamName, cwd, leaderPaneId, workerPaneIds) {
268
+ const panePids = {
269
+ '%10': 111,
270
+ '%11': 112,
271
+ '%12': 113,
272
+ '%95': 195,
273
+ '%96': 196,
274
+ };
245
275
  const config = await readTeamConfig(teamName, cwd);
246
276
  assert.ok(config, 'missing team config');
247
277
  if (!config)
248
278
  throw new Error('missing team config');
249
279
  config.leader_pane_id = leaderPaneId;
250
- config.workers = config.workers.map((worker) => ({
251
- ...worker,
252
- pane_id: workerPaneIds[worker.name] ?? worker.pane_id,
253
- }));
280
+ config.leader_pane_pid = panePids[leaderPaneId];
281
+ config.hud_pane_id = '%96';
282
+ config.hud_pane_pid = 196;
283
+ config.tmux_pane_owner_id = 'delivery-smoke-owner';
284
+ config.workers = config.workers.map((worker) => {
285
+ const paneId = workerPaneIds[worker.name] ?? worker.pane_id;
286
+ return {
287
+ ...worker,
288
+ pane_id: paneId,
289
+ pid: panePids[paneId],
290
+ };
291
+ });
254
292
  await saveTeamConfig(config, cwd);
255
293
  }
256
294
  function parseJsonLines(raw) {
@@ -354,10 +392,8 @@ describe('team message delivery end-to-end smoke tests', () => {
354
392
  assert.equal(new Set(workerMessages.map((message) => message.message_id)).size, 3);
355
393
  assert.equal(workerMessages.filter((message) => message.notified_at).length, 3);
356
394
  const requests = await listDispatchRequests('worker-leader-concurrent', cwd, { kind: 'mailbox', to_worker: 'leader-fixed' });
357
- const workerMessageIds = new Set(workerMessages.map((message) => message.message_id));
358
- const workerRequests = requests.filter((request) => request.message_id && workerMessageIds.has(request.message_id));
359
- assert.equal(workerRequests.length, 3);
360
- assert.equal(workerRequests.filter((request) => request.status === 'notified').length, 3);
395
+ assert.equal(requests.length, 1);
396
+ assert.equal(requests[0]?.status, 'notified');
361
397
  });
362
398
  }
363
399
  finally {
@@ -379,6 +415,7 @@ describe('team message delivery end-to-end smoke tests', () => {
379
415
  assert.equal(requests[0]?.status, 'notified');
380
416
  const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
381
417
  assert.match(tmuxLog, /send-keys -t %10/);
418
+ assertExactPaneProofBeforeTargetEffect(tmuxLog, '%10');
382
419
  });
383
420
  }
384
421
  finally {
@@ -388,7 +425,7 @@ describe('team message delivery end-to-end smoke tests', () => {
388
425
  it('leader -> worker: broadcast fans out to every worker mailbox and notification path', async () => {
389
426
  const { cwd, cleanup } = await setupTeam('leader-broadcast', 3);
390
427
  try {
391
- await withFakeTmux(cwd, async () => {
428
+ await withFakeTmux(cwd, async (tmuxLogPath) => {
392
429
  await configurePaneIds('leader-broadcast', cwd, '%95', {
393
430
  'worker-1': '%10',
394
431
  'worker-2': '%11',
@@ -404,6 +441,10 @@ describe('team message delivery end-to-end smoke tests', () => {
404
441
  const requests = await listDispatchRequests('leader-broadcast', cwd, { kind: 'mailbox' });
405
442
  assert.equal(requests.length, 3);
406
443
  assert.equal(requests.filter((request) => request.status === 'notified').length, 3);
444
+ const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
445
+ for (const paneId of ['%10', '%11', '%12']) {
446
+ assertExactPaneProofBeforeTargetEffect(tmuxLog, paneId);
447
+ }
407
448
  });
408
449
  }
409
450
  finally {
@@ -683,6 +724,7 @@ describe('team message delivery end-to-end smoke tests', () => {
683
724
  assert.equal(requests[0]?.status, 'notified');
684
725
  const tmuxLog = await readFile(tmuxLogPath, 'utf-8');
685
726
  assert.match(tmuxLog, /send-keys -t %10/);
727
+ assertExactPaneProofBeforeTargetEffect(tmuxLog, '%10');
686
728
  assert.equal(existsSync(join(cwd, '.omx', 'state', 'mailbox.json')), false, 'bridge compat mailbox should not be created when bridge is disabled');
687
729
  });
688
730
  }
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-e2e-smoke.test.js","sourceRoot":"","sources":["../../../src/team/__tests__/delivery-e2e-smoke.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delivery-e2e-smoke.test.js","sourceRoot":"","sources":["../../../src/team/__tests__/delivery-e2e-smoke.test.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ import { existsSync } from 'node:fs';
5
5
  import { tmpdir } from 'node:os';
6
6
  import { join } from 'node:path';
7
7
  import { DEFAULT_NUDGE_CONFIG, NudgeTracker, capturePane, isPaneIdle } from '../idle-nudge.js';
8
+ const WORKER_TARGET = '';
8
9
  function buildFakeTmux(tmuxLogPath) {
9
10
  return `#!/usr/bin/env bash
10
11
  set -eu
@@ -50,6 +51,11 @@ if [[ "\$cmd" == "capture-pane" ]]; then
50
51
  exit 0
51
52
  fi
52
53
 
54
+ if [[ "$cmd" == "show-option" ]]; then
55
+ printf '%s\n' "\${OMX_TEAM_OWNER:-omx-team-a-owner}"
56
+ exit 0
57
+ fi
58
+
53
59
  if [[ "\$cmd" == "send-keys" ]]; then
54
60
  if [[ "\${OMX_FAIL_SEND_KEYS:-0}" == "1" ]]; then
55
61
  exit 1
@@ -58,7 +64,11 @@ if [[ "\$cmd" == "send-keys" ]]; then
58
64
  fi
59
65
 
60
66
  if [[ "\$cmd" == "list-panes" ]]; then
61
- printf '0 12345\\n'
67
+ if [[ "$#" -eq 3 && "$1" == "-a" && "$2" == "-F" && "$3" == "#{pane_id}\t#{pane_dead}\t#{pane_pid}" ]]; then
68
+ printf '%%2\t0\t12345\n'
69
+ else
70
+ printf '0 12345\\n'
71
+ fi
62
72
  exit 0
63
73
  fi
64
74
 
@@ -139,11 +149,14 @@ describe('idle-nudge', () => {
139
149
  await withFakeTmux(async ({ tmuxLogPath }) => {
140
150
  await withMockedNow(10_000, async (setNow) => {
141
151
  const tracker = new NudgeTracker({ delayMs: 0, maxCount: 3, message: 'nudge' });
142
- const first = await tracker.checkAndNudge(['%2'], undefined, 'omx-team-a');
143
- assert.deepEqual(first, ['%2']);
152
+ const first = await tracker.checkAndNudge([WORKER_TARGET], undefined, 'omx-team-a');
153
+ assert.deepEqual(first, [WORKER_TARGET]);
144
154
  const firstLog = await readFile(tmuxLogPath, 'utf-8');
155
+ const firstCommands = firstLog.trim().split('\n').filter(Boolean);
156
+ const nudgeEffectIndex = firstCommands.findIndex((command) => command.startsWith('send-keys -t omx-team-a:0 '));
157
+ assert.ok(nudgeEffectIndex >= 0, 'expected nudge send-keys target effect');
145
158
  setNow(11_000); // < 5000ms scan interval
146
- const second = await tracker.checkAndNudge(['%2'], undefined, 'omx-team-a');
159
+ const second = await tracker.checkAndNudge([WORKER_TARGET], undefined, 'omx-team-a');
147
160
  assert.deepEqual(second, []);
148
161
  const secondLog = await readFile(tmuxLogPath, 'utf-8');
149
162
  assert.equal(secondLog, firstLog);
@@ -164,17 +177,17 @@ describe('idle-nudge', () => {
164
177
  await withFakeTmux(async ({ tmuxLogPath }) => {
165
178
  await withMockedNow(10_000, async (setNow) => {
166
179
  const tracker = new NudgeTracker({ delayMs: 0, maxCount: 1, message: 'nudge' });
167
- const first = await tracker.checkAndNudge(['%2'], undefined, 'omx-team-a');
168
- assert.deepEqual(first, ['%2']);
180
+ const first = await tracker.checkAndNudge([WORKER_TARGET], undefined, 'omx-team-a');
181
+ assert.deepEqual(first, [WORKER_TARGET]);
169
182
  const firstLog = await readFile(tmuxLogPath, 'utf-8');
170
183
  setNow(16_000); // > 5000ms scan interval
171
- const second = await tracker.checkAndNudge(['%2'], undefined, 'omx-team-a');
184
+ const second = await tracker.checkAndNudge([WORKER_TARGET], undefined, 'omx-team-a');
172
185
  assert.deepEqual(second, []);
173
186
  const secondLog = await readFile(tmuxLogPath, 'utf-8');
174
187
  assert.equal(secondLog, firstLog);
175
188
  assert.equal(tracker.totalNudges, 1);
176
189
  assert.deepEqual(tracker.getSummary(), {
177
- '%2': {
190
+ [WORKER_TARGET]: {
178
191
  nudgeCount: 1,
179
192
  lastNudgeAt: 10_000,
180
193
  },
@@ -187,20 +200,20 @@ describe('idle-nudge', () => {
187
200
  await setCaptureSequence(['IDLE', 'IDLE', 'ACTIVE', 'IDLE', 'IDLE']);
188
201
  await withMockedNow(10_000, async (setNow) => {
189
202
  const tracker = new NudgeTracker({ delayMs: 10_000, maxCount: 3, message: 'nudge' });
190
- const r1 = await tracker.checkAndNudge(['%2'], undefined, 'omx-team-a');
203
+ const r1 = await tracker.checkAndNudge([WORKER_TARGET], undefined, 'omx-team-a');
191
204
  assert.deepEqual(r1, []);
192
205
  setNow(16_000);
193
- const r2 = await tracker.checkAndNudge(['%2'], undefined, 'omx-team-a');
206
+ const r2 = await tracker.checkAndNudge([WORKER_TARGET], undefined, 'omx-team-a');
194
207
  assert.deepEqual(r2, []);
195
208
  setNow(22_000);
196
- const r3 = await tracker.checkAndNudge(['%2'], undefined, 'omx-team-a');
209
+ const r3 = await tracker.checkAndNudge([WORKER_TARGET], undefined, 'omx-team-a');
197
210
  assert.deepEqual(r3, []);
198
211
  setNow(28_000);
199
- const r4 = await tracker.checkAndNudge(['%2'], undefined, 'omx-team-a');
212
+ const r4 = await tracker.checkAndNudge([WORKER_TARGET], undefined, 'omx-team-a');
200
213
  assert.deepEqual(r4, []);
201
214
  setNow(39_000);
202
- const r5 = await tracker.checkAndNudge(['%2'], undefined, 'omx-team-a');
203
- assert.deepEqual(r5, ['%2']);
215
+ const r5 = await tracker.checkAndNudge([WORKER_TARGET], undefined, 'omx-team-a');
216
+ assert.deepEqual(r5, [WORKER_TARGET]);
204
217
  assert.equal(tracker.totalNudges, 1);
205
218
  });
206
219
  });
@@ -210,7 +223,7 @@ describe('idle-nudge', () => {
210
223
  process.env.OMX_FAIL_SEND_KEYS = '1';
211
224
  await withMockedNow(10_000, async () => {
212
225
  const tracker = new NudgeTracker({ delayMs: 0, maxCount: 3, message: 'nudge' });
213
- const nudged = await tracker.checkAndNudge(['%2'], undefined, 'omx-team-a');
226
+ const nudged = await tracker.checkAndNudge([WORKER_TARGET], undefined, 'omx-team-a');
214
227
  assert.deepEqual(nudged, []);
215
228
  assert.equal(tracker.totalNudges, 0);
216
229
  assert.deepEqual(tracker.getSummary(), {});
@@ -226,5 +239,22 @@ describe('idle-nudge', () => {
226
239
  assert.equal(idle, false);
227
240
  });
228
241
  });
242
+ it('fails closed for replacement, owner drift, and HUD nudge targets', async () => {
243
+ await withFakeTmux(async ({ tmuxLogPath }) => {
244
+ await withMockedNow(10_000, async () => {
245
+ const targets = [
246
+ { paneId: '%2', workerIndex: 1, panePid: 999, teamOwnerId: 'omx-team-a-owner' },
247
+ { paneId: '%2', workerIndex: 1, panePid: 12345, teamOwnerId: 'foreign-owner' },
248
+ { paneId: '%2', workerIndex: 1, panePid: 12345, teamOwnerId: 'omx-team-a-owner', hudPaneId: '%2' },
249
+ ];
250
+ for (const target of targets) {
251
+ const tracker = new NudgeTracker({ delayMs: 0, maxCount: 1, message: 'nudge' });
252
+ assert.deepEqual(await tracker.checkAndNudge([target], undefined, 'omx-team-a'), []);
253
+ }
254
+ const log = existsSync(tmuxLogPath) ? await readFile(tmuxLogPath, 'utf-8') : '';
255
+ assert.doesNotMatch(log, /send-keys/);
256
+ });
257
+ });
258
+ });
229
259
  });
230
260
  //# sourceMappingURL=idle-nudge.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"idle-nudge.test.js","sourceRoot":"","sources":["../../../src/team/__tests__/idle-nudge.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"idle-nudge.test.js","sourceRoot":"","sources":["../../../src/team/__tests__/idle-nudge.test.ts"],"names":[],"mappings":"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"}
@@ -150,6 +150,52 @@ describe('mcp-comm', () => {
150
150
  await rm(cwd, { recursive: true, force: true });
151
151
  }
152
152
  });
153
+ it('preserves direct and broadcast mailbox messages behind one notified wake', async () => {
154
+ const cwd = await mkdtemp(join(tmpdir(), 'omx-mcp-comm-'));
155
+ try {
156
+ await initTeamState('alpha-coalesced', 't', 'executor', 2, cwd);
157
+ let notifications = 0;
158
+ const direct = await queueDirectMailboxMessage({
159
+ teamName: 'alpha-coalesced',
160
+ fromWorker: 'worker-1',
161
+ toWorker: 'worker-2',
162
+ toWorkerIndex: 2,
163
+ body: 'direct message',
164
+ triggerMessage: 'check mailbox',
165
+ intent: 'pending-mailbox-review',
166
+ cwd,
167
+ notify: async () => {
168
+ notifications += 1;
169
+ return { ok: true, transport: 'tmux_send_keys', reason: 'sent' };
170
+ },
171
+ });
172
+ const broadcast = await queueBroadcastMailboxMessage({
173
+ teamName: 'alpha-coalesced',
174
+ fromWorker: 'worker-1',
175
+ recipients: [{ workerName: 'worker-2', workerIndex: 2 }],
176
+ body: 'broadcast message',
177
+ cwd,
178
+ triggerFor: () => 'check mailbox',
179
+ intentFor: () => 'pending-mailbox-review',
180
+ notify: async () => {
181
+ notifications += 1;
182
+ return { ok: true, transport: 'tmux_send_keys', reason: 'sent' };
183
+ },
184
+ });
185
+ assert.equal(direct.ok, true);
186
+ assert.equal(broadcast.length, 1);
187
+ assert.equal(broadcast[0]?.reason, 'duplicate_pending_dispatch_request');
188
+ assert.equal(notifications, 1);
189
+ const mailbox = await listMailboxMessages('alpha-coalesced', 'worker-2', cwd);
190
+ assert.equal(mailbox.length, 2);
191
+ const requests = await listDispatchRequests('alpha-coalesced', cwd, { kind: 'mailbox', to_worker: 'worker-2' });
192
+ assert.equal(requests.length, 1);
193
+ assert.equal(requests[0]?.status, 'notified');
194
+ }
195
+ finally {
196
+ await rm(cwd, { recursive: true, force: true });
197
+ }
198
+ });
153
199
  it('queueBroadcastMailboxMessage notifies and marks notified per recipient', async () => {
154
200
  const cwd = await mkdtemp(join(tmpdir(), 'omx-mcp-comm-'));
155
201
  try {
@@ -183,38 +229,42 @@ describe('mcp-comm', () => {
183
229
  await rm(cwd, { recursive: true, force: true });
184
230
  }
185
231
  });
186
- it('prevents duplicate pending mailbox dispatch requests for same message id', async () => {
232
+ it('preserves direct and broadcast mailbox messages while coalescing their outstanding wake', async () => {
187
233
  const cwd = await mkdtemp(join(tmpdir(), 'omx-mcp-comm-'));
188
234
  try {
189
235
  await initTeamState('alpha', 't', 'executor', 2, cwd);
190
- const first = await queueDirectMailboxMessage({
191
- teamName: 'alpha',
192
- fromWorker: 'worker-1',
193
- toWorker: 'worker-2',
194
- toWorkerIndex: 2,
195
- body: 'hello',
196
- triggerMessage: 'check mailbox',
197
- cwd,
198
- notify: async () => ({ ok: false, transport: 'hook', reason: 'queued_pending' }),
236
+ let notifications = 0;
237
+ const notify = async () => {
238
+ notifications += 1;
239
+ return { ok: false, transport: 'hook', reason: 'queued_pending' };
240
+ };
241
+ await queueDirectMailboxMessage({
242
+ teamName: 'alpha', fromWorker: 'worker-1', toWorker: 'worker-2', toWorkerIndex: 2,
243
+ body: 'direct-first', triggerMessage: 'check mailbox', cwd, notify,
199
244
  });
200
- assert.equal(first.ok, false);
201
- assert.ok(first.message_id);
202
- const requests = await listDispatchRequests('alpha', cwd, { kind: 'mailbox' });
203
- assert.equal(requests.length, 1);
204
- const second = await queueDirectMailboxMessage({
205
- teamName: 'alpha',
206
- fromWorker: 'worker-1',
207
- toWorker: 'worker-2',
208
- toWorkerIndex: 2,
209
- body: 'hello-2',
210
- triggerMessage: 'check mailbox',
211
- cwd,
212
- notify: async () => ({ ok: false, transport: 'hook', reason: 'queued_pending' }),
245
+ await queueDirectMailboxMessage({
246
+ teamName: 'alpha', fromWorker: 'worker-1', toWorker: 'worker-2', toWorkerIndex: 2,
247
+ body: 'direct-second', triggerMessage: 'check mailbox', cwd, notify,
213
248
  });
214
- assert.equal(second.ok, false);
215
- const allRequests = await listDispatchRequests('alpha', cwd, { kind: 'mailbox' });
216
- // second message has distinct message_id -> second request exists
217
- assert.equal(allRequests.length, 2);
249
+ for (const body of ['broadcast-first', 'broadcast-second']) {
250
+ await queueBroadcastMailboxMessage({
251
+ teamName: 'alpha',
252
+ fromWorker: 'worker-1',
253
+ recipients: [{ workerName: 'worker-2', workerIndex: 2 }],
254
+ body,
255
+ cwd,
256
+ triggerFor: () => 'check mailbox',
257
+ notify,
258
+ });
259
+ }
260
+ const mailbox = await listMailboxMessages('alpha', 'worker-2', cwd);
261
+ const requests = await listDispatchRequests('alpha', cwd, { kind: 'mailbox', to_worker: 'worker-2' });
262
+ assert.equal(mailbox.length, 4);
263
+ assert.deepEqual(mailbox.map((message) => message.body), [
264
+ 'direct-first', 'direct-second', 'broadcast-first', 'broadcast-second',
265
+ ]);
266
+ assert.equal(notifications, 1);
267
+ assert.equal(requests.length, 1);
218
268
  }
219
269
  finally {
220
270
  await rm(cwd, { recursive: true, force: true });
@@ -280,6 +330,22 @@ describe('mcp-comm', () => {
280
330
  const request = await readDispatchRequest('alpha', outcome.request_id, cwd);
281
331
  assert.equal(request?.status, 'failed');
282
332
  assert.match(request?.last_reason ?? '', /^notify_exception:/);
333
+ const retry = await queueDirectMailboxMessage({
334
+ teamName: 'alpha',
335
+ fromWorker: 'worker-1',
336
+ toWorker: 'worker-2',
337
+ toWorkerIndex: 2,
338
+ body: 'hello after crash',
339
+ triggerMessage: 'check mailbox',
340
+ cwd,
341
+ transportPreference: 'prompt_stdin',
342
+ fallbackAllowed: false,
343
+ notify: async () => ({ ok: true, transport: 'prompt_stdin', reason: 'retry_sent' }),
344
+ });
345
+ assert.equal(retry.ok, true);
346
+ assert.notEqual(retry.request_id, outcome.request_id);
347
+ const retriedRequest = await readDispatchRequest('alpha', retry.request_id, cwd);
348
+ assert.equal(retriedRequest?.status, 'notified');
283
349
  }
284
350
  finally {
285
351
  await rm(cwd, { recursive: true, force: true });