oh-my-codex 0.20.1 → 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 (791) hide show
  1. package/Cargo.lock +7 -6
  2. package/Cargo.toml +1 -1
  3. package/README.md +36 -1
  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/adapt/__tests__/hermes.test.js.map +1 -1
  11. package/dist/adapt/contracts.d.ts.map +1 -1
  12. package/dist/agents/__tests__/definitions.test.js +81 -0
  13. package/dist/agents/__tests__/definitions.test.js.map +1 -1
  14. package/dist/agents/__tests__/native-config.test.js +25 -0
  15. package/dist/agents/__tests__/native-config.test.js.map +1 -1
  16. package/dist/agents/native-config.d.ts +2 -1
  17. package/dist/agents/native-config.d.ts.map +1 -1
  18. package/dist/agents/native-config.js.map +1 -1
  19. package/dist/auth/__tests__/hotswap.test.d.ts +2 -0
  20. package/dist/auth/__tests__/hotswap.test.d.ts.map +1 -0
  21. package/dist/auth/__tests__/hotswap.test.js +183 -0
  22. package/dist/auth/__tests__/hotswap.test.js.map +1 -0
  23. package/dist/auth/hotswap.d.ts +6 -0
  24. package/dist/auth/hotswap.d.ts.map +1 -1
  25. package/dist/auth/hotswap.js +102 -19
  26. package/dist/auth/hotswap.js.map +1 -1
  27. package/dist/auth/paths.js.map +1 -1
  28. package/dist/auth/storage.js.map +1 -1
  29. package/dist/autopilot/__tests__/ralplan-gate.test.js +5 -5
  30. package/dist/autopilot/__tests__/ralplan-gate.test.js.map +1 -1
  31. package/dist/autopilot/completion-gate.js.map +1 -1
  32. package/dist/autopilot/fsm.d.ts +1 -1
  33. package/dist/autopilot/fsm.d.ts.map +1 -1
  34. package/dist/autoresearch/goal.js.map +1 -1
  35. package/dist/autoresearch/runtime.js.map +1 -1
  36. package/dist/capabilities/lockfile.js.map +1 -1
  37. package/dist/catalog/reader.js.map +1 -1
  38. package/dist/catalog/skill-mirror.js.map +1 -1
  39. package/dist/cli/__tests__/adapt-help.test.js.map +1 -1
  40. package/dist/cli/__tests__/agents-init.test.js.map +1 -1
  41. package/dist/cli/__tests__/agents.test.js.map +1 -1
  42. package/dist/cli/__tests__/api.test.js.map +1 -1
  43. package/dist/cli/__tests__/ask.test.js.map +1 -1
  44. package/dist/cli/__tests__/auth.test.js +60 -6
  45. package/dist/cli/__tests__/auth.test.js.map +1 -1
  46. package/dist/cli/__tests__/autoresearch-guided.test.js.map +1 -1
  47. package/dist/cli/__tests__/autoresearch.test.js.map +1 -1
  48. package/dist/cli/__tests__/capabilities.test.js.map +1 -1
  49. package/dist/cli/__tests__/codex-plugin-layout.test.js +80 -0
  50. package/dist/cli/__tests__/codex-plugin-layout.test.js.map +1 -1
  51. package/dist/cli/__tests__/doctor-context-window-warning.test.js.map +1 -1
  52. package/dist/cli/__tests__/doctor-invalid-config.test.js +47 -4
  53. package/dist/cli/__tests__/doctor-invalid-config.test.js.map +1 -1
  54. package/dist/cli/__tests__/doctor-team.test.js.map +1 -1
  55. package/dist/cli/__tests__/doctor-warning-copy.test.js +752 -15
  56. package/dist/cli/__tests__/doctor-warning-copy.test.js.map +1 -1
  57. package/dist/cli/__tests__/exec.test.js +136 -0
  58. package/dist/cli/__tests__/exec.test.js.map +1 -1
  59. package/dist/cli/__tests__/imagegen-continuation.test.js.map +1 -1
  60. package/dist/cli/__tests__/index.test.js +473 -14
  61. package/dist/cli/__tests__/index.test.js.map +1 -1
  62. package/dist/cli/__tests__/launch-fallback.test.js +336 -4
  63. package/dist/cli/__tests__/launch-fallback.test.js.map +1 -1
  64. package/dist/cli/__tests__/mcp-parity.test.js +87 -12
  65. package/dist/cli/__tests__/mcp-parity.test.js.map +1 -1
  66. package/dist/cli/__tests__/native-hook-claim-journal.test.d.ts +2 -0
  67. package/dist/cli/__tests__/native-hook-claim-journal.test.d.ts.map +1 -0
  68. package/dist/cli/__tests__/native-hook-claim-journal.test.js +206 -0
  69. package/dist/cli/__tests__/native-hook-claim-journal.test.js.map +1 -0
  70. package/dist/cli/__tests__/nested-help-routing.test.js.map +1 -1
  71. package/dist/cli/__tests__/question.test.js.map +1 -1
  72. package/dist/cli/__tests__/ralph-deslop-contract.test.js.map +1 -1
  73. package/dist/cli/__tests__/ralph-goal-mode-contract.test.js +6 -0
  74. package/dist/cli/__tests__/ralph-goal-mode-contract.test.js.map +1 -1
  75. package/dist/cli/__tests__/ralph-prd-deep-interview.test.js.map +1 -1
  76. package/dist/cli/__tests__/ralph-prd-smoke.test.js.map +1 -1
  77. package/dist/cli/__tests__/ralph.test.js +8 -3
  78. package/dist/cli/__tests__/ralph.test.js.map +1 -1
  79. package/dist/cli/__tests__/ralplan-bootstrap-3181.test.d.ts +2 -0
  80. package/dist/cli/__tests__/ralplan-bootstrap-3181.test.d.ts.map +1 -0
  81. package/dist/cli/__tests__/ralplan-bootstrap-3181.test.js +72 -0
  82. package/dist/cli/__tests__/ralplan-bootstrap-3181.test.js.map +1 -0
  83. package/dist/cli/__tests__/ralplan.test.d.ts +2 -0
  84. package/dist/cli/__tests__/ralplan.test.d.ts.map +1 -0
  85. package/dist/cli/__tests__/ralplan.test.js +55 -0
  86. package/dist/cli/__tests__/ralplan.test.js.map +1 -0
  87. package/dist/cli/__tests__/resume.test.js +17 -11
  88. package/dist/cli/__tests__/resume.test.js.map +1 -1
  89. package/dist/cli/__tests__/session-scoped-runtime.test.js +25 -0
  90. package/dist/cli/__tests__/session-scoped-runtime.test.js.map +1 -1
  91. package/dist/cli/__tests__/session-search-help.test.js +25 -1
  92. package/dist/cli/__tests__/session-search-help.test.js.map +1 -1
  93. package/dist/cli/__tests__/session-search.test.js.map +1 -1
  94. package/dist/cli/__tests__/setup-agents-overwrite.test.js +79 -0
  95. package/dist/cli/__tests__/setup-agents-overwrite.test.js.map +1 -1
  96. package/dist/cli/__tests__/setup-gh-star.test.js.map +1 -1
  97. package/dist/cli/__tests__/setup-hooks-shared-ownership.test.js +77 -3
  98. package/dist/cli/__tests__/setup-hooks-shared-ownership.test.js.map +1 -1
  99. package/dist/cli/__tests__/setup-hooks-trust-e2e.test.d.ts +2 -0
  100. package/dist/cli/__tests__/setup-hooks-trust-e2e.test.d.ts.map +1 -0
  101. package/dist/cli/__tests__/setup-hooks-trust-e2e.test.js +285 -0
  102. package/dist/cli/__tests__/setup-hooks-trust-e2e.test.js.map +1 -0
  103. package/dist/cli/__tests__/setup-install-mode.test.js +2579 -294
  104. package/dist/cli/__tests__/setup-install-mode.test.js.map +1 -1
  105. package/dist/cli/__tests__/setup-preferences.test.d.ts +2 -0
  106. package/dist/cli/__tests__/setup-preferences.test.d.ts.map +1 -0
  107. package/dist/cli/__tests__/setup-preferences.test.js +79 -0
  108. package/dist/cli/__tests__/setup-preferences.test.js.map +1 -0
  109. package/dist/cli/__tests__/setup-refresh.test.js +33 -2
  110. package/dist/cli/__tests__/setup-refresh.test.js.map +1 -1
  111. package/dist/cli/__tests__/setup-scope.test.js +46 -3
  112. package/dist/cli/__tests__/setup-scope.test.js.map +1 -1
  113. package/dist/cli/__tests__/sparkshell-cli.test.js.map +1 -1
  114. package/dist/cli/__tests__/state.test.js +37 -0
  115. package/dist/cli/__tests__/state.test.js.map +1 -1
  116. package/dist/cli/__tests__/team.test.js +105 -7
  117. package/dist/cli/__tests__/team.test.js.map +1 -1
  118. package/dist/cli/__tests__/ultragoal.test.js +61 -1
  119. package/dist/cli/__tests__/ultragoal.test.js.map +1 -1
  120. package/dist/cli/__tests__/uninstall.test.js +1817 -24
  121. package/dist/cli/__tests__/uninstall.test.js.map +1 -1
  122. package/dist/cli/__tests__/update.test.js +58 -0
  123. package/dist/cli/__tests__/update.test.js.map +1 -1
  124. package/dist/cli/__tests__/url.test.js.map +1 -1
  125. package/dist/cli/__tests__/windows-popup-loop-contract.test.js +2 -1
  126. package/dist/cli/__tests__/windows-popup-loop-contract.test.js.map +1 -1
  127. package/dist/cli/adapt.js.map +1 -1
  128. package/dist/cli/agents-init.js.map +1 -1
  129. package/dist/cli/agents.js.map +1 -1
  130. package/dist/cli/api.js.map +1 -1
  131. package/dist/cli/ask.d.ts +1 -1
  132. package/dist/cli/ask.d.ts.map +1 -1
  133. package/dist/cli/ask.js.map +1 -1
  134. package/dist/cli/auth.js.map +1 -1
  135. package/dist/cli/autoresearch-guided.js.map +1 -1
  136. package/dist/cli/autoresearch-intake.js.map +1 -1
  137. package/dist/cli/capabilities.js.map +1 -1
  138. package/dist/cli/cleanup.js.map +1 -1
  139. package/dist/cli/codex-feature-probe.js.map +1 -1
  140. package/dist/cli/codex-home.js.map +1 -1
  141. package/dist/cli/doctor.d.ts +21 -0
  142. package/dist/cli/doctor.d.ts.map +1 -1
  143. package/dist/cli/doctor.js +607 -130
  144. package/dist/cli/doctor.js.map +1 -1
  145. package/dist/cli/explore.js.map +1 -1
  146. package/dist/cli/index.d.ts +14 -3
  147. package/dist/cli/index.d.ts.map +1 -1
  148. package/dist/cli/index.js +245 -57
  149. package/dist/cli/index.js.map +1 -1
  150. package/dist/cli/mcp-parity.js +2 -2
  151. package/dist/cli/mcp-parity.js.map +1 -1
  152. package/dist/cli/mcp-serve.js.map +1 -1
  153. package/dist/cli/mission.js.map +1 -1
  154. package/dist/cli/native-assets.js.map +1 -1
  155. package/dist/cli/native-hook-claim-journal.d.ts +29 -0
  156. package/dist/cli/native-hook-claim-journal.d.ts.map +1 -0
  157. package/dist/cli/native-hook-claim-journal.js +252 -0
  158. package/dist/cli/native-hook-claim-journal.js.map +1 -0
  159. package/dist/cli/omx.js.map +1 -1
  160. package/dist/cli/plugin-marketplace.js.map +1 -1
  161. package/dist/cli/project-runtime-codex-homes.js.map +1 -1
  162. package/dist/cli/question.js.map +1 -1
  163. package/dist/cli/ralph.d.ts.map +1 -1
  164. package/dist/cli/ralph.js +3 -2
  165. package/dist/cli/ralph.js.map +1 -1
  166. package/dist/cli/ralplan.d.ts +10 -0
  167. package/dist/cli/ralplan.d.ts.map +1 -0
  168. package/dist/cli/ralplan.js +110 -0
  169. package/dist/cli/ralplan.js.map +1 -0
  170. package/dist/cli/session-search.d.ts +5 -0
  171. package/dist/cli/session-search.d.ts.map +1 -1
  172. package/dist/cli/session-search.js +87 -0
  173. package/dist/cli/session-search.js.map +1 -1
  174. package/dist/cli/setup-preferences.d.ts +11 -0
  175. package/dist/cli/setup-preferences.d.ts.map +1 -1
  176. package/dist/cli/setup-preferences.js +32 -0
  177. package/dist/cli/setup-preferences.js.map +1 -1
  178. package/dist/cli/setup.d.ts +58 -0
  179. package/dist/cli/setup.d.ts.map +1 -1
  180. package/dist/cli/setup.js +1450 -398
  181. package/dist/cli/setup.js.map +1 -1
  182. package/dist/cli/sparkshell.js.map +1 -1
  183. package/dist/cli/star-prompt.js.map +1 -1
  184. package/dist/cli/state.d.ts.map +1 -1
  185. package/dist/cli/state.js +2 -1
  186. package/dist/cli/state.js.map +1 -1
  187. package/dist/cli/team.js.map +1 -1
  188. package/dist/cli/ultragoal.d.ts +5 -1
  189. package/dist/cli/ultragoal.d.ts.map +1 -1
  190. package/dist/cli/ultragoal.js +34 -2
  191. package/dist/cli/ultragoal.js.map +1 -1
  192. package/dist/cli/uninstall.d.ts +17 -0
  193. package/dist/cli/uninstall.d.ts.map +1 -1
  194. package/dist/cli/uninstall.js +986 -95
  195. package/dist/cli/uninstall.js.map +1 -1
  196. package/dist/cli/update.d.ts.map +1 -1
  197. package/dist/cli/update.js +8 -1
  198. package/dist/cli/update.js.map +1 -1
  199. package/dist/cli/url.js.map +1 -1
  200. package/dist/compat/__tests__/doctor-contract.test.js +5 -1
  201. package/dist/compat/__tests__/doctor-contract.test.js.map +1 -1
  202. package/dist/compat/__tests__/rust-runtime-compat.test.js +1 -1
  203. package/dist/compat/__tests__/rust-runtime-compat.test.js.map +1 -1
  204. package/dist/config/__tests__/codex-hooks.test.js +1287 -11
  205. package/dist/config/__tests__/codex-hooks.test.js.map +1 -1
  206. package/dist/config/__tests__/generator-idempotent.test.js +1179 -32
  207. package/dist/config/__tests__/generator-idempotent.test.js.map +1 -1
  208. package/dist/config/__tests__/generator-notify.test.js +6 -1
  209. package/dist/config/__tests__/generator-notify.test.js.map +1 -1
  210. package/dist/config/__tests__/models.test.js +67 -3
  211. package/dist/config/__tests__/models.test.js.map +1 -1
  212. package/dist/config/codex-feature-flags.d.ts.map +1 -1
  213. package/dist/config/codex-feature-flags.js.map +1 -1
  214. package/dist/config/codex-hooks.d.ts +124 -1
  215. package/dist/config/codex-hooks.d.ts.map +1 -1
  216. package/dist/config/codex-hooks.js +2142 -265
  217. package/dist/config/codex-hooks.js.map +1 -1
  218. package/dist/config/commit-lore-guard.js.map +1 -1
  219. package/dist/config/generator.d.ts +23 -34
  220. package/dist/config/generator.d.ts.map +1 -1
  221. package/dist/config/generator.js +1480 -246
  222. package/dist/config/generator.js.map +1 -1
  223. package/dist/config/mcp-registry.js.map +1 -1
  224. package/dist/config/models.d.ts +14 -4
  225. package/dist/config/models.d.ts.map +1 -1
  226. package/dist/config/models.js +15 -1
  227. package/dist/config/models.js.map +1 -1
  228. package/dist/config/omx-first-party-mcp.js.map +1 -1
  229. package/dist/config/team-mode.d.ts.map +1 -1
  230. package/dist/document-refresh/__tests__/enforcer.test.js.map +1 -1
  231. package/dist/document-refresh/enforcer.js.map +1 -1
  232. package/dist/exec/followup.js.map +1 -1
  233. package/dist/goal-workflows/artifacts.js.map +1 -1
  234. package/dist/hooks/__tests__/agents-overlay.test.js +7 -4
  235. package/dist/hooks/__tests__/agents-overlay.test.js.map +1 -1
  236. package/dist/hooks/__tests__/analyze-routing-contract.test.js.map +1 -1
  237. package/dist/hooks/__tests__/analyze-skill-contract.test.js.map +1 -1
  238. package/dist/hooks/__tests__/anti-slop-workflow.test.js.map +1 -1
  239. package/dist/hooks/__tests__/autopilot-skill-contract.test.js +9 -3
  240. package/dist/hooks/__tests__/autopilot-skill-contract.test.js.map +1 -1
  241. package/dist/hooks/__tests__/code-review-skill-contract.test.js.map +1 -1
  242. package/dist/hooks/__tests__/consensus-execution-handoff.test.js.map +1 -1
  243. package/dist/hooks/__tests__/deep-interview-contract.test.js.map +1 -1
  244. package/dist/hooks/__tests__/design-skill.test.js.map +1 -1
  245. package/dist/hooks/__tests__/keyword-detector.test.js +1376 -6
  246. package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
  247. package/dist/hooks/__tests__/notify-fallback-watcher.test.js +252 -543
  248. package/dist/hooks/__tests__/notify-fallback-watcher.test.js.map +1 -1
  249. package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js +38 -4
  250. package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js.map +1 -1
  251. package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js +765 -10
  252. package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js.map +1 -1
  253. package/dist/hooks/__tests__/notify-hook-cross-worktree-heartbeat.test.js +2 -0
  254. package/dist/hooks/__tests__/notify-hook-cross-worktree-heartbeat.test.js.map +1 -1
  255. package/dist/hooks/__tests__/notify-hook-managed-tmux.test.js +142 -1
  256. package/dist/hooks/__tests__/notify-hook-managed-tmux.test.js.map +1 -1
  257. package/dist/hooks/__tests__/notify-hook-modules.test.js.map +1 -1
  258. package/dist/hooks/__tests__/notify-hook-non-omx-guard.test.js +48 -2
  259. package/dist/hooks/__tests__/notify-hook-non-omx-guard.test.js.map +1 -1
  260. package/dist/hooks/__tests__/notify-hook-ralph-resume.test.js +61 -44
  261. package/dist/hooks/__tests__/notify-hook-ralph-resume.test.js.map +1 -1
  262. package/dist/hooks/__tests__/notify-hook-regression-205.test.js.map +1 -1
  263. package/dist/hooks/__tests__/notify-hook-session-idle-dedupe.test.js +3 -2
  264. package/dist/hooks/__tests__/notify-hook-session-idle-dedupe.test.js.map +1 -1
  265. package/dist/hooks/__tests__/notify-hook-session-scope.test.js +243 -4
  266. package/dist/hooks/__tests__/notify-hook-session-scope.test.js.map +1 -1
  267. package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js +531 -12
  268. package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js.map +1 -1
  269. package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js +163 -24
  270. package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js.map +1 -1
  271. package/dist/hooks/__tests__/notify-hook-team-tmux-guard.test.js +482 -32
  272. package/dist/hooks/__tests__/notify-hook-team-tmux-guard.test.js.map +1 -1
  273. package/dist/hooks/__tests__/notify-hook-tmux-heal.test.js +68 -1
  274. package/dist/hooks/__tests__/notify-hook-tmux-heal.test.js.map +1 -1
  275. package/dist/hooks/__tests__/notify-hook-tmux-scrollback.test.js +7 -1
  276. package/dist/hooks/__tests__/notify-hook-tmux-scrollback.test.js.map +1 -1
  277. package/dist/hooks/__tests__/notify-hook-visual-verdict.test.js.map +1 -1
  278. package/dist/hooks/__tests__/notify-hook-worker-idle.test.js +43 -4
  279. package/dist/hooks/__tests__/notify-hook-worker-idle.test.js.map +1 -1
  280. package/dist/hooks/__tests__/openclaw-setup-contract.test.js.map +1 -1
  281. package/dist/hooks/__tests__/pre-context-gate-skills.test.js.map +1 -1
  282. package/dist/hooks/__tests__/prometheus-strict-contract.test.js.map +1 -1
  283. package/dist/hooks/__tests__/prompt-guidance-fragments.test.js.map +1 -1
  284. package/dist/hooks/__tests__/prompt-guidance-test-helpers.js.map +1 -1
  285. package/dist/hooks/__tests__/prompt-session-provenance.test.d.ts +2 -0
  286. package/dist/hooks/__tests__/prompt-session-provenance.test.d.ts.map +1 -0
  287. package/dist/hooks/__tests__/prompt-session-provenance.test.js +82 -0
  288. package/dist/hooks/__tests__/prompt-session-provenance.test.js.map +1 -0
  289. package/dist/hooks/__tests__/session.test.js +878 -11
  290. package/dist/hooks/__tests__/session.test.js.map +1 -1
  291. package/dist/hooks/__tests__/skill-catalog-hygiene.test.js.map +1 -1
  292. package/dist/hooks/__tests__/team-runtime-gating-docs-contract.test.js.map +1 -1
  293. package/dist/hooks/__tests__/visual-ralph-skill.test.js.map +1 -1
  294. package/dist/hooks/__tests__/visual-verdict-loop.test.js.map +1 -1
  295. package/dist/hooks/agents-overlay.js +5 -5
  296. package/dist/hooks/agents-overlay.js.map +1 -1
  297. package/dist/hooks/code-simplifier/index.js.map +1 -1
  298. package/dist/hooks/explore-routing.js.map +1 -1
  299. package/dist/hooks/extensibility/dispatcher.js.map +1 -1
  300. package/dist/hooks/extensibility/events.js.map +1 -1
  301. package/dist/hooks/extensibility/loader.js.map +1 -1
  302. package/dist/hooks/extensibility/plugin-runner-stdin.js.map +1 -1
  303. package/dist/hooks/extensibility/sdk/logging.js.map +1 -1
  304. package/dist/hooks/keyword-detector.d.ts +33 -7
  305. package/dist/hooks/keyword-detector.d.ts.map +1 -1
  306. package/dist/hooks/keyword-detector.js +2228 -119
  307. package/dist/hooks/keyword-detector.js.map +1 -1
  308. package/dist/hooks/keyword-registry.d.ts +12 -0
  309. package/dist/hooks/keyword-registry.d.ts.map +1 -1
  310. package/dist/hooks/keyword-registry.js +41 -0
  311. package/dist/hooks/keyword-registry.js.map +1 -1
  312. package/dist/hooks/prompt-session-provenance.d.ts +87 -0
  313. package/dist/hooks/prompt-session-provenance.d.ts.map +1 -0
  314. package/dist/hooks/prompt-session-provenance.js +180 -0
  315. package/dist/hooks/prompt-session-provenance.js.map +1 -0
  316. package/dist/hooks/session.d.ts +163 -34
  317. package/dist/hooks/session.d.ts.map +1 -1
  318. package/dist/hooks/session.js +1395 -317
  319. package/dist/hooks/session.js.map +1 -1
  320. package/dist/hooks/task-size-detector.js.map +1 -1
  321. package/dist/hud/__tests__/state.test.js.map +1 -1
  322. package/dist/hud/authority.js.map +1 -1
  323. package/dist/hud/constants.js.map +1 -1
  324. package/dist/hud/index.js.map +1 -1
  325. package/dist/hud/reconcile.js.map +1 -1
  326. package/dist/hud/render.js.map +1 -1
  327. package/dist/hud/state.js.map +1 -1
  328. package/dist/hud/tmux.js.map +1 -1
  329. package/dist/leader/__tests__/contract.test.js +153 -1
  330. package/dist/leader/__tests__/contract.test.js.map +1 -1
  331. package/dist/leader/contract.d.ts +42 -5
  332. package/dist/leader/contract.d.ts.map +1 -1
  333. package/dist/leader/contract.js +184 -3
  334. package/dist/leader/contract.js.map +1 -1
  335. package/dist/mcp/__tests__/bootstrap.test.js.map +1 -1
  336. package/dist/mcp/__tests__/code-intel-server.test.js +31 -3
  337. package/dist/mcp/__tests__/code-intel-server.test.js.map +1 -1
  338. package/dist/mcp/__tests__/server-lifecycle.test.js +15 -2
  339. package/dist/mcp/__tests__/server-lifecycle.test.js.map +1 -1
  340. package/dist/mcp/__tests__/state-paths.test.js +98 -1
  341. package/dist/mcp/__tests__/state-paths.test.js.map +1 -1
  342. package/dist/mcp/__tests__/wiki-server.test.js +18 -0
  343. package/dist/mcp/__tests__/wiki-server.test.js.map +1 -1
  344. package/dist/mcp/bootstrap.js.map +1 -1
  345. package/dist/mcp/code-intel-server.d.ts +58 -58
  346. package/dist/mcp/code-intel-server.d.ts.map +1 -1
  347. package/dist/mcp/code-intel-server.js +13 -3
  348. package/dist/mcp/code-intel-server.js.map +1 -1
  349. package/dist/mcp/hermes-bridge.js.map +1 -1
  350. package/dist/mcp/hermes-server.d.ts +70 -70
  351. package/dist/mcp/hermes-server.d.ts.map +1 -1
  352. package/dist/mcp/lifecycle-telemetry.js.map +1 -1
  353. package/dist/mcp/memory-server.d.ts +34 -34
  354. package/dist/mcp/memory-server.d.ts.map +1 -1
  355. package/dist/mcp/memory-server.js.map +1 -1
  356. package/dist/mcp/state-paths.d.ts +14 -0
  357. package/dist/mcp/state-paths.d.ts.map +1 -1
  358. package/dist/mcp/state-paths.js +96 -20
  359. package/dist/mcp/state-paths.js.map +1 -1
  360. package/dist/mcp/state-server.d.ts +47 -47
  361. package/dist/mcp/state-server.d.ts.map +1 -1
  362. package/dist/mcp/trace-server.d.ts +4 -4
  363. package/dist/mcp/trace-server.d.ts.map +1 -1
  364. package/dist/mcp/trace-server.js.map +1 -1
  365. package/dist/mcp/wiki-server.d.ts +34 -23
  366. package/dist/mcp/wiki-server.d.ts.map +1 -1
  367. package/dist/mcp/wiki-server.js +9 -2
  368. package/dist/mcp/wiki-server.js.map +1 -1
  369. package/dist/modes/__tests__/base-session-scope.test.js +53 -1
  370. package/dist/modes/__tests__/base-session-scope.test.js.map +1 -1
  371. package/dist/modes/__tests__/base-tmux-pane.test.js +4 -4
  372. package/dist/modes/__tests__/base-tmux-pane.test.js.map +1 -1
  373. package/dist/modes/base.d.ts.map +1 -1
  374. package/dist/modes/base.js +5 -5
  375. package/dist/modes/base.js.map +1 -1
  376. package/dist/notifications/__tests__/lifecycle-dedupe.test.js.map +1 -1
  377. package/dist/notifications/__tests__/reply-listener.test.js.map +1 -1
  378. package/dist/notifications/__tests__/session-idle-tail-dedupe.test.js +177 -85
  379. package/dist/notifications/__tests__/session-idle-tail-dedupe.test.js.map +1 -1
  380. package/dist/notifications/__tests__/session-registry.test.js.map +1 -1
  381. package/dist/notifications/__tests__/template-engine.test.js.map +1 -1
  382. package/dist/notifications/__tests__/verbosity.test.js.map +1 -1
  383. package/dist/notifications/http-client.js.map +1 -1
  384. package/dist/notifications/index.d.ts +4 -1
  385. package/dist/notifications/index.d.ts.map +1 -1
  386. package/dist/notifications/index.js +3 -9
  387. package/dist/notifications/index.js.map +1 -1
  388. package/dist/notifications/lifecycle-dedupe.js.map +1 -1
  389. package/dist/notifications/reply-listener.d.ts.map +1 -1
  390. package/dist/notifications/reply-listener.js.map +1 -1
  391. package/dist/notifications/session-registry.js.map +1 -1
  392. package/dist/notifications/session-status.js.map +1 -1
  393. package/dist/notifications/temp-contract.d.ts.map +1 -1
  394. package/dist/notifications/temp-contract.js +4 -0
  395. package/dist/notifications/temp-contract.js.map +1 -1
  396. package/dist/notifications/tmux-detector.js.map +1 -1
  397. package/dist/notifications/tmux.js.map +1 -1
  398. package/dist/openclaw/config.js.map +1 -1
  399. package/dist/openclaw/dispatcher.js.map +1 -1
  400. package/dist/pipeline/__tests__/orchestrator.test.js +4 -4
  401. package/dist/pipeline/__tests__/orchestrator.test.js.map +1 -1
  402. package/dist/pipeline/__tests__/stages.test.js +16 -13
  403. package/dist/pipeline/__tests__/stages.test.js.map +1 -1
  404. package/dist/pipeline/stages/code-review.js.map +1 -1
  405. package/dist/pipeline/stages/ralph-verify.js.map +1 -1
  406. package/dist/pipeline/stages/ralplan.js.map +1 -1
  407. package/dist/pipeline/stages/team-exec.js.map +1 -1
  408. package/dist/pipeline/stages/ultragoal.js.map +1 -1
  409. package/dist/pipeline/stages/ultraqa.js.map +1 -1
  410. package/dist/planning/__tests__/approved-execution-lifecycle-matrix.test.js.map +1 -1
  411. package/dist/planning/artifact-names.js.map +1 -1
  412. package/dist/planning/artifacts.js.map +1 -1
  413. package/dist/question/__tests__/state.test.js.map +1 -1
  414. package/dist/question/__tests__/ui.test.js.map +1 -1
  415. package/dist/question/autopilot-wait.js.map +1 -1
  416. package/dist/question/client.d.ts.map +1 -1
  417. package/dist/question/client.js.map +1 -1
  418. package/dist/question/deep-interview.js.map +1 -1
  419. package/dist/question/events.js.map +1 -1
  420. package/dist/question/renderer.js.map +1 -1
  421. package/dist/question/state.d.ts.map +1 -1
  422. package/dist/question/state.js.map +1 -1
  423. package/dist/question/ui.js.map +1 -1
  424. package/dist/ralph/contract.d.ts +1 -1
  425. package/dist/ralph/contract.d.ts.map +1 -1
  426. package/dist/ralplan/__tests__/consensus-gate.test.js +527 -8
  427. package/dist/ralplan/__tests__/consensus-gate.test.js.map +1 -1
  428. package/dist/ralplan/__tests__/documented-leader-preflight.test.d.ts +2 -0
  429. package/dist/ralplan/__tests__/documented-leader-preflight.test.d.ts.map +1 -0
  430. package/dist/ralplan/__tests__/documented-leader-preflight.test.js +46 -0
  431. package/dist/ralplan/__tests__/documented-leader-preflight.test.js.map +1 -0
  432. package/dist/ralplan/__tests__/runtime.test.js +116 -14
  433. package/dist/ralplan/__tests__/runtime.test.js.map +1 -1
  434. package/dist/ralplan/consensus-gate.d.ts +3 -3
  435. package/dist/ralplan/consensus-gate.d.ts.map +1 -1
  436. package/dist/ralplan/consensus-gate.js +173 -70
  437. package/dist/ralplan/consensus-gate.js.map +1 -1
  438. package/dist/ralplan/documented-leader-preflight.d.ts +34 -0
  439. package/dist/ralplan/documented-leader-preflight.d.ts.map +1 -0
  440. package/dist/ralplan/documented-leader-preflight.js +58 -0
  441. package/dist/ralplan/documented-leader-preflight.js.map +1 -0
  442. package/dist/ralplan/runtime.d.ts +3 -2
  443. package/dist/ralplan/runtime.d.ts.map +1 -1
  444. package/dist/ralplan/runtime.js +12 -9
  445. package/dist/ralplan/runtime.js.map +1 -1
  446. package/dist/runtime/__tests__/bridge.test.js +42 -1
  447. package/dist/runtime/__tests__/bridge.test.js.map +1 -1
  448. package/dist/runtime/bridge.d.ts +12 -0
  449. package/dist/runtime/bridge.d.ts.map +1 -1
  450. package/dist/runtime/bridge.js +52 -1
  451. package/dist/runtime/bridge.js.map +1 -1
  452. package/dist/runtime/process-tree.js.map +1 -1
  453. package/dist/runtime/run-loop.js.map +1 -1
  454. package/dist/runtime/run-outcome.d.ts +3 -3
  455. package/dist/runtime/run-outcome.d.ts.map +1 -1
  456. package/dist/runtime/run-outcome.js.map +1 -1
  457. package/dist/runtime/run-state.js.map +1 -1
  458. package/dist/scripts/__tests__/codex-native-hook.test.js +6657 -995
  459. package/dist/scripts/__tests__/codex-native-hook.test.js.map +1 -1
  460. package/dist/scripts/__tests__/fixtures/issue-3138-installed-smoke.d.ts +2 -0
  461. package/dist/scripts/__tests__/fixtures/issue-3138-installed-smoke.d.ts.map +1 -0
  462. package/dist/scripts/__tests__/fixtures/issue-3138-installed-smoke.js +634 -0
  463. package/dist/scripts/__tests__/fixtures/issue-3138-installed-smoke.js.map +1 -0
  464. package/dist/scripts/__tests__/generate-release-body.test.js.map +1 -1
  465. package/dist/scripts/__tests__/hook-derived-watcher.test.js.map +1 -1
  466. package/dist/scripts/__tests__/notify-dispatcher.test.js.map +1 -1
  467. package/dist/scripts/__tests__/notify-fallback-delivery.test.d.ts +2 -0
  468. package/dist/scripts/__tests__/notify-fallback-delivery.test.d.ts.map +1 -0
  469. package/dist/scripts/__tests__/notify-fallback-delivery.test.js +174 -0
  470. package/dist/scripts/__tests__/notify-fallback-delivery.test.js.map +1 -0
  471. package/dist/scripts/__tests__/notify-state-io.test.js +57 -1
  472. package/dist/scripts/__tests__/notify-state-io.test.js.map +1 -1
  473. package/dist/scripts/__tests__/reasoning-artifact-contract.test.d.ts +2 -0
  474. package/dist/scripts/__tests__/reasoning-artifact-contract.test.d.ts.map +1 -0
  475. package/dist/scripts/__tests__/reasoning-artifact-contract.test.js +108 -0
  476. package/dist/scripts/__tests__/reasoning-artifact-contract.test.js.map +1 -0
  477. package/dist/scripts/__tests__/role-intent-bootstrap-e2e-3181.test.d.ts +2 -0
  478. package/dist/scripts/__tests__/role-intent-bootstrap-e2e-3181.test.d.ts.map +1 -0
  479. package/dist/scripts/__tests__/role-intent-bootstrap-e2e-3181.test.js +78 -0
  480. package/dist/scripts/__tests__/role-intent-bootstrap-e2e-3181.test.js.map +1 -0
  481. package/dist/scripts/__tests__/role-intent-durable-recovery-3181.test.d.ts +2 -0
  482. package/dist/scripts/__tests__/role-intent-durable-recovery-3181.test.d.ts.map +1 -0
  483. package/dist/scripts/__tests__/role-intent-durable-recovery-3181.test.js +55 -0
  484. package/dist/scripts/__tests__/role-intent-durable-recovery-3181.test.js.map +1 -0
  485. package/dist/scripts/__tests__/run-test-files.test.js.map +1 -1
  486. package/dist/scripts/__tests__/smoke-packed-install.test.js +1100 -4
  487. package/dist/scripts/__tests__/smoke-packed-install.test.js.map +1 -1
  488. package/dist/scripts/__tests__/test-reply-listener-live.test.js.map +1 -1
  489. package/dist/scripts/build-api.js.map +1 -1
  490. package/dist/scripts/build-explore-harness.js.map +1 -1
  491. package/dist/scripts/build-sparkshell.js.map +1 -1
  492. package/dist/scripts/cleanup-explore-harness.js.map +1 -1
  493. package/dist/scripts/codex-execution-surface.js.map +1 -1
  494. package/dist/scripts/codex-native-hook.d.ts +4 -1
  495. package/dist/scripts/codex-native-hook.d.ts.map +1 -1
  496. package/dist/scripts/codex-native-hook.js +11577 -1184
  497. package/dist/scripts/codex-native-hook.js.map +1 -1
  498. package/dist/scripts/generate-native-release-manifest.js.map +1 -1
  499. package/dist/scripts/generate-release-body.js.map +1 -1
  500. package/dist/scripts/hook-payload-guard.d.ts.map +1 -1
  501. package/dist/scripts/hook-payload-guard.js.map +1 -1
  502. package/dist/scripts/notify-fallback-delivery.d.ts +48 -0
  503. package/dist/scripts/notify-fallback-delivery.d.ts.map +1 -0
  504. package/dist/scripts/notify-fallback-delivery.js +419 -0
  505. package/dist/scripts/notify-fallback-delivery.js.map +1 -0
  506. package/dist/scripts/notify-fallback-watcher.js +218 -138
  507. package/dist/scripts/notify-fallback-watcher.js.map +1 -1
  508. package/dist/scripts/notify-hook/auto-nudge.d.ts +18 -9
  509. package/dist/scripts/notify-hook/auto-nudge.d.ts.map +1 -1
  510. package/dist/scripts/notify-hook/auto-nudge.js +112 -15
  511. package/dist/scripts/notify-hook/auto-nudge.js.map +1 -1
  512. package/dist/scripts/notify-hook/managed-tmux.d.ts +23 -0
  513. package/dist/scripts/notify-hook/managed-tmux.d.ts.map +1 -1
  514. package/dist/scripts/notify-hook/managed-tmux.js +122 -12
  515. package/dist/scripts/notify-hook/managed-tmux.js.map +1 -1
  516. package/dist/scripts/notify-hook/orchestration-intent.d.ts +7 -7
  517. package/dist/scripts/notify-hook/orchestration-intent.d.ts.map +1 -1
  518. package/dist/scripts/notify-hook/ralph-session-resume.d.ts +5 -2
  519. package/dist/scripts/notify-hook/ralph-session-resume.d.ts.map +1 -1
  520. package/dist/scripts/notify-hook/ralph-session-resume.js +33 -37
  521. package/dist/scripts/notify-hook/ralph-session-resume.js.map +1 -1
  522. package/dist/scripts/notify-hook/state-io.d.ts +17 -0
  523. package/dist/scripts/notify-hook/state-io.d.ts.map +1 -1
  524. package/dist/scripts/notify-hook/state-io.js +73 -11
  525. package/dist/scripts/notify-hook/state-io.js.map +1 -1
  526. package/dist/scripts/notify-hook/team-dispatch.d.ts +10 -1
  527. package/dist/scripts/notify-hook/team-dispatch.d.ts.map +1 -1
  528. package/dist/scripts/notify-hook/team-dispatch.js +234 -79
  529. package/dist/scripts/notify-hook/team-dispatch.js.map +1 -1
  530. package/dist/scripts/notify-hook/team-leader-nudge.d.ts +2 -2
  531. package/dist/scripts/notify-hook/team-leader-nudge.d.ts.map +1 -1
  532. package/dist/scripts/notify-hook/team-leader-nudge.js +39 -13
  533. package/dist/scripts/notify-hook/team-leader-nudge.js.map +1 -1
  534. package/dist/scripts/notify-hook/team-tmux-guard.d.ts +16 -8
  535. package/dist/scripts/notify-hook/team-tmux-guard.d.ts.map +1 -1
  536. package/dist/scripts/notify-hook/team-tmux-guard.js +365 -44
  537. package/dist/scripts/notify-hook/team-tmux-guard.js.map +1 -1
  538. package/dist/scripts/notify-hook/team-worker-posttooluse.js.map +1 -1
  539. package/dist/scripts/notify-hook/team-worker-stop.d.ts +1 -1
  540. package/dist/scripts/notify-hook/team-worker-stop.d.ts.map +1 -1
  541. package/dist/scripts/notify-hook/team-worker-stop.js +19 -18
  542. package/dist/scripts/notify-hook/team-worker-stop.js.map +1 -1
  543. package/dist/scripts/notify-hook/team-worker.d.ts +5 -2
  544. package/dist/scripts/notify-hook/team-worker.d.ts.map +1 -1
  545. package/dist/scripts/notify-hook/team-worker.js +37 -28
  546. package/dist/scripts/notify-hook/team-worker.js.map +1 -1
  547. package/dist/scripts/notify-hook/tmux-injection.d.ts +8 -1
  548. package/dist/scripts/notify-hook/tmux-injection.d.ts.map +1 -1
  549. package/dist/scripts/notify-hook/tmux-injection.js +53 -18
  550. package/dist/scripts/notify-hook/tmux-injection.js.map +1 -1
  551. package/dist/scripts/notify-hook/visual-verdict.d.ts +1 -1
  552. package/dist/scripts/notify-hook/visual-verdict.d.ts.map +1 -1
  553. package/dist/scripts/notify-hook/visual-verdict.js +15 -13
  554. package/dist/scripts/notify-hook/visual-verdict.js.map +1 -1
  555. package/dist/scripts/notify-hook.d.ts +24 -1
  556. package/dist/scripts/notify-hook.d.ts.map +1 -1
  557. package/dist/scripts/notify-hook.js +267 -90
  558. package/dist/scripts/notify-hook.js.map +1 -1
  559. package/dist/scripts/postinstall.js.map +1 -1
  560. package/dist/scripts/prompt-inventory.js.map +1 -1
  561. package/dist/scripts/smoke-packed-install.d.ts +927 -5
  562. package/dist/scripts/smoke-packed-install.d.ts.map +1 -1
  563. package/dist/scripts/smoke-packed-install.js +4317 -13
  564. package/dist/scripts/smoke-packed-install.js.map +1 -1
  565. package/dist/scripts/sync-plugin-mirror.js.map +1 -1
  566. package/dist/scripts/test-reply-listener-live.js.map +1 -1
  567. package/dist/scripts/test-sparkshell.js.map +1 -1
  568. package/dist/scripts/verify-native-agents.js.map +1 -1
  569. package/dist/session-history/friction.js.map +1 -1
  570. package/dist/session-history/search.js.map +1 -1
  571. package/dist/sidecar/__tests__/boundary.test.js.map +1 -1
  572. package/dist/sidecar/collector.js.map +1 -1
  573. package/dist/sidecar/index.js.map +1 -1
  574. package/dist/sidecar/render.js.map +1 -1
  575. package/dist/sidecar/tmux.js.map +1 -1
  576. package/dist/state/__tests__/mode-state-context.test.js +54 -0
  577. package/dist/state/__tests__/mode-state-context.test.js.map +1 -1
  578. package/dist/state/__tests__/operations.test.js +66 -15
  579. package/dist/state/__tests__/operations.test.js.map +1 -1
  580. package/dist/state/__tests__/skill-active.test.js +19 -1
  581. package/dist/state/__tests__/skill-active.test.js.map +1 -1
  582. package/dist/state/__tests__/workflow-transition.test.js +61 -0
  583. package/dist/state/__tests__/workflow-transition.test.js.map +1 -1
  584. package/dist/state/mode-state-context.d.ts +5 -0
  585. package/dist/state/mode-state-context.d.ts.map +1 -1
  586. package/dist/state/mode-state-context.js +59 -0
  587. package/dist/state/mode-state-context.js.map +1 -1
  588. package/dist/state/operations.d.ts +1 -1
  589. package/dist/state/operations.d.ts.map +1 -1
  590. package/dist/state/operations.js +49 -55
  591. package/dist/state/operations.js.map +1 -1
  592. package/dist/state/paths.d.ts +1 -1
  593. package/dist/state/paths.d.ts.map +1 -1
  594. package/dist/state/paths.js +1 -1
  595. package/dist/state/paths.js.map +1 -1
  596. package/dist/state/skill-active.d.ts +13 -1
  597. package/dist/state/skill-active.d.ts.map +1 -1
  598. package/dist/state/skill-active.js +43 -4
  599. package/dist/state/skill-active.js.map +1 -1
  600. package/dist/state/terminal-normalization.js.map +1 -1
  601. package/dist/state/workflow-transition-reconcile.d.ts.map +1 -1
  602. package/dist/state/workflow-transition-reconcile.js +20 -4
  603. package/dist/state/workflow-transition-reconcile.js.map +1 -1
  604. package/dist/state/workflow-transition.d.ts +1 -1
  605. package/dist/state/workflow-transition.d.ts.map +1 -1
  606. package/dist/state/workflow-transition.js.map +1 -1
  607. package/dist/subagents/__tests__/leader-bootstrap-3181.test.d.ts +2 -0
  608. package/dist/subagents/__tests__/leader-bootstrap-3181.test.d.ts.map +1 -0
  609. package/dist/subagents/__tests__/leader-bootstrap-3181.test.js +52 -0
  610. package/dist/subagents/__tests__/leader-bootstrap-3181.test.js.map +1 -0
  611. package/dist/subagents/__tests__/tracker.test.js +1550 -10
  612. package/dist/subagents/__tests__/tracker.test.js.map +1 -1
  613. package/dist/subagents/role-routing-marker.d.ts +10 -0
  614. package/dist/subagents/role-routing-marker.d.ts.map +1 -0
  615. package/dist/subagents/role-routing-marker.js +136 -0
  616. package/dist/subagents/role-routing-marker.js.map +1 -0
  617. package/dist/subagents/tracker.d.ts +91 -0
  618. package/dist/subagents/tracker.d.ts.map +1 -1
  619. package/dist/subagents/tracker.js +806 -62
  620. package/dist/subagents/tracker.js.map +1 -1
  621. package/dist/team/__tests__/api-interop.test.js +91 -1
  622. package/dist/team/__tests__/api-interop.test.js.map +1 -1
  623. package/dist/team/__tests__/approved-execution.test.js.map +1 -1
  624. package/dist/team/__tests__/delivery-e2e-smoke.test.js +52 -10
  625. package/dist/team/__tests__/delivery-e2e-smoke.test.js.map +1 -1
  626. package/dist/team/__tests__/idle-nudge.test.js +45 -15
  627. package/dist/team/__tests__/idle-nudge.test.js.map +1 -1
  628. package/dist/team/__tests__/mcp-comm.test.js +93 -27
  629. package/dist/team/__tests__/mcp-comm.test.js.map +1 -1
  630. package/dist/team/__tests__/model-contract.test.js +341 -4
  631. package/dist/team/__tests__/model-contract.test.js.map +1 -1
  632. package/dist/team/__tests__/role-router.test.js.map +1 -1
  633. package/dist/team/__tests__/runtime-cli.test.js +9 -0
  634. package/dist/team/__tests__/runtime-cli.test.js.map +1 -1
  635. package/dist/team/__tests__/runtime.test.js +3624 -355
  636. package/dist/team/__tests__/runtime.test.js.map +1 -1
  637. package/dist/team/__tests__/scaling.test.js +2516 -118
  638. package/dist/team/__tests__/scaling.test.js.map +1 -1
  639. package/dist/team/__tests__/state-root.test.js.map +1 -1
  640. package/dist/team/__tests__/state.test.js +804 -36
  641. package/dist/team/__tests__/state.test.js.map +1 -1
  642. package/dist/team/__tests__/team-ops-contract.test.js +6 -0
  643. package/dist/team/__tests__/team-ops-contract.test.js.map +1 -1
  644. package/dist/team/__tests__/tmux-session.test.js +3664 -969
  645. package/dist/team/__tests__/tmux-session.test.js.map +1 -1
  646. package/dist/team/__tests__/tmux-test-fixture.js.map +1 -1
  647. package/dist/team/__tests__/worker-runtime-identity.test.js +38 -2
  648. package/dist/team/__tests__/worker-runtime-identity.test.js.map +1 -1
  649. package/dist/team/__tests__/worktree.test.js +6 -0
  650. package/dist/team/__tests__/worktree.test.js.map +1 -1
  651. package/dist/team/api-interop.d.ts +2 -2
  652. package/dist/team/api-interop.d.ts.map +1 -1
  653. package/dist/team/api-interop.js +15 -9
  654. package/dist/team/api-interop.js.map +1 -1
  655. package/dist/team/commit-hygiene.js.map +1 -1
  656. package/dist/team/contracts.d.ts +5 -5
  657. package/dist/team/contracts.d.ts.map +1 -1
  658. package/dist/team/delivery-log.js.map +1 -1
  659. package/dist/team/exact-pane.d.ts +23 -0
  660. package/dist/team/exact-pane.d.ts.map +1 -0
  661. package/dist/team/exact-pane.js +133 -0
  662. package/dist/team/exact-pane.js.map +1 -0
  663. package/dist/team/followup-planner.js.map +1 -1
  664. package/dist/team/goal-workflow.js.map +1 -1
  665. package/dist/team/idle-nudge.d.ts +12 -1
  666. package/dist/team/idle-nudge.d.ts.map +1 -1
  667. package/dist/team/idle-nudge.js +41 -14
  668. package/dist/team/idle-nudge.js.map +1 -1
  669. package/dist/team/model-contract.d.ts +18 -2
  670. package/dist/team/model-contract.d.ts.map +1 -1
  671. package/dist/team/model-contract.js +314 -35
  672. package/dist/team/model-contract.js.map +1 -1
  673. package/dist/team/orchestrator.js.map +1 -1
  674. package/dist/team/pane-status.js.map +1 -1
  675. package/dist/team/phase-controller.js.map +1 -1
  676. package/dist/team/reminder-intents.d.ts +1 -1
  677. package/dist/team/reminder-intents.d.ts.map +1 -1
  678. package/dist/team/reminder-intents.js.map +1 -1
  679. package/dist/team/runtime-cli.js.map +1 -1
  680. package/dist/team/runtime.d.ts +1 -0
  681. package/dist/team/runtime.d.ts.map +1 -1
  682. package/dist/team/runtime.js +1326 -231
  683. package/dist/team/runtime.js.map +1 -1
  684. package/dist/team/scaling.d.ts +22 -8
  685. package/dist/team/scaling.d.ts.map +1 -1
  686. package/dist/team/scaling.js +1463 -376
  687. package/dist/team/scaling.js.map +1 -1
  688. package/dist/team/state/dispatch-lock.js.map +1 -1
  689. package/dist/team/state/dispatch.d.ts.map +1 -1
  690. package/dist/team/state/dispatch.js +26 -8
  691. package/dist/team/state/dispatch.js.map +1 -1
  692. package/dist/team/state/events.js.map +1 -1
  693. package/dist/team/state/locks.d.ts.map +1 -1
  694. package/dist/team/state/locks.js +61 -13
  695. package/dist/team/state/locks.js.map +1 -1
  696. package/dist/team/state/tasks.d.ts.map +1 -1
  697. package/dist/team/state/tasks.js +4 -3
  698. package/dist/team/state/tasks.js.map +1 -1
  699. package/dist/team/state-root.js.map +1 -1
  700. package/dist/team/state.d.ts +67 -1
  701. package/dist/team/state.d.ts.map +1 -1
  702. package/dist/team/state.js +636 -129
  703. package/dist/team/state.js.map +1 -1
  704. package/dist/team/team-identity.d.ts.map +1 -1
  705. package/dist/team/team-identity.js.map +1 -1
  706. package/dist/team/team-ops.d.ts +5 -0
  707. package/dist/team/team-ops.d.ts.map +1 -1
  708. package/dist/team/team-ops.js +4 -0
  709. package/dist/team/team-ops.js.map +1 -1
  710. package/dist/team/tmux-session.d.ts +125 -23
  711. package/dist/team/tmux-session.d.ts.map +1 -1
  712. package/dist/team/tmux-session.js +1340 -333
  713. package/dist/team/tmux-session.js.map +1 -1
  714. package/dist/team/worker-bootstrap.js.map +1 -1
  715. package/dist/team/worktree.d.ts.map +1 -1
  716. package/dist/team/worktree.js +4 -0
  717. package/dist/team/worktree.js.map +1 -1
  718. package/dist/ultragoal/__tests__/artifacts.test.js.map +1 -1
  719. package/dist/ultragoal/__tests__/docs-contract.test.js.map +1 -1
  720. package/dist/ultragoal/artifacts.d.ts.map +1 -1
  721. package/dist/ultragoal/artifacts.js +4 -1
  722. package/dist/ultragoal/artifacts.js.map +1 -1
  723. package/dist/url-reader/index.js.map +1 -1
  724. package/dist/utils/__tests__/file-durability.test.d.ts +2 -0
  725. package/dist/utils/__tests__/file-durability.test.d.ts.map +1 -0
  726. package/dist/utils/__tests__/file-durability.test.js +57 -0
  727. package/dist/utils/__tests__/file-durability.test.js.map +1 -0
  728. package/dist/utils/agents-model-table.js.map +1 -1
  729. package/dist/utils/file-durability.d.ts +15 -0
  730. package/dist/utils/file-durability.d.ts.map +1 -0
  731. package/dist/utils/file-durability.js +37 -0
  732. package/dist/utils/file-durability.js.map +1 -0
  733. package/dist/utils/package.js.map +1 -1
  734. package/dist/utils/paths.js.map +1 -1
  735. package/dist/utils/platform-command.js.map +1 -1
  736. package/dist/utils/repo-deps.js.map +1 -1
  737. package/dist/utils/version.js.map +1 -1
  738. package/dist/verification/__tests__/ci-rust-gates.test.js +1 -1
  739. package/dist/verification/__tests__/dev-merge-issue-close-workflow.test.js +3 -0
  740. package/dist/verification/__tests__/dev-merge-issue-close-workflow.test.js.map +1 -1
  741. package/dist/verification/verifier.js.map +1 -1
  742. package/dist/visual/constants.d.ts +1 -1
  743. package/dist/visual/constants.d.ts.map +1 -1
  744. package/dist/vscode/__tests__/index.test.js.map +1 -1
  745. package/dist/vscode/index.js.map +1 -1
  746. package/dist/wiki/__tests__/cjk-tokenize.test.js.map +1 -1
  747. package/dist/wiki/__tests__/lint.test.js.map +1 -1
  748. package/dist/wiki/__tests__/query.test.js.map +1 -1
  749. package/dist/wiki/__tests__/storage.test.js.map +1 -1
  750. package/dist/wiki/__tests__/test-helpers.d.ts.map +1 -1
  751. package/dist/wiki/lint.d.ts +4 -1
  752. package/dist/wiki/lint.d.ts.map +1 -1
  753. package/dist/wiki/lint.js +3 -2
  754. package/dist/wiki/lint.js.map +1 -1
  755. package/dist/wiki/query.js.map +1 -1
  756. package/dist/wiki/storage.js.map +1 -1
  757. package/package.json +2 -2
  758. package/plugins/oh-my-codex/.codex-plugin/plugin.json +1 -1
  759. package/plugins/oh-my-codex/hooks/codex-native-hook.mjs +24 -0
  760. package/plugins/oh-my-codex/skills/omx-setup/SKILL.md +10 -5
  761. package/plugins/oh-my-codex/skills/ralph/SKILL.md +6 -2
  762. package/plugins/oh-my-codex/skills/ralplan/SKILL.md +6 -2
  763. package/plugins/oh-my-codex/skills/team/SKILL.md +13 -9
  764. package/skills/omx-setup/SKILL.md +10 -5
  765. package/skills/ralph/SKILL.md +6 -2
  766. package/skills/ralplan/SKILL.md +6 -2
  767. package/skills/team/SKILL.md +13 -9
  768. package/src/scripts/__tests__/codex-native-hook.test.ts +20048 -10827
  769. package/src/scripts/__tests__/fixtures/issue-3138-installed-smoke.ts +734 -0
  770. package/src/scripts/__tests__/notify-fallback-delivery.test.ts +177 -0
  771. package/src/scripts/__tests__/notify-state-io.test.ts +73 -0
  772. package/src/scripts/__tests__/reasoning-artifact-contract.test.ts +129 -0
  773. package/src/scripts/__tests__/role-intent-bootstrap-e2e-3181.test.ts +78 -0
  774. package/src/scripts/__tests__/role-intent-durable-recovery-3181.test.ts +60 -0
  775. package/src/scripts/__tests__/smoke-packed-install.test.ts +1309 -4
  776. package/src/scripts/codex-native-hook.ts +11429 -1163
  777. package/src/scripts/notify-fallback-delivery.ts +416 -0
  778. package/src/scripts/notify-fallback-watcher.ts +216 -155
  779. package/src/scripts/notify-hook/auto-nudge.ts +113 -14
  780. package/src/scripts/notify-hook/managed-tmux.ts +149 -12
  781. package/src/scripts/notify-hook/ralph-session-resume.ts +37 -36
  782. package/src/scripts/notify-hook/state-io.ts +100 -13
  783. package/src/scripts/notify-hook/team-dispatch.ts +242 -75
  784. package/src/scripts/notify-hook/team-leader-nudge.ts +40 -18
  785. package/src/scripts/notify-hook/team-tmux-guard.ts +366 -39
  786. package/src/scripts/notify-hook/team-worker-stop.ts +20 -16
  787. package/src/scripts/notify-hook/team-worker.ts +39 -26
  788. package/src/scripts/notify-hook/tmux-injection.ts +66 -23
  789. package/src/scripts/notify-hook/visual-verdict.ts +22 -12
  790. package/src/scripts/notify-hook.ts +336 -90
  791. package/src/scripts/smoke-packed-install.ts +5154 -149
@@ -1 +1 @@
1
- {"version":3,"file":"team-tmux-guard.d.ts","sourceRoot":"","sources":["../../../src/scripts/notify-hook/team-tmux-guard.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,gCAAgC,8BAA8B,CAAC;AAwB5E,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,CAEhE;AAED,wBAAsB,8BAA8B,CAAC,UAAU,EAAE,GAAG,EAAE,EACpE,eAAuB,EACvB,YAAiB,EACjB,mBAA0B,EAC1B,YAAmB,EACnB,WAAkB,EAClB,sBAA8B,EAC9B,sBAAkC,GACnC;;;;;;;;CAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAsGpB;AAED,wBAAsB,aAAa,CAAC,EAClC,UAAU,EACV,MAAM,EACN,gBAAoB,EACpB,aAAiB,EACjB,UAAiB,EACjB,gBAAwB,GACzB,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAkHpB;AAED,wBAAsB,cAAc,CAAC,EACnC,UAAU,EACV,MAAM,EACN,aAAkB,GACnB,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAoCpB;AAED,wBAAsB,6BAA6B,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAEjF"}
1
+ {"version":3,"file":"team-tmux-guard.d.ts","sourceRoot":"","sources":["../../../src/scripts/notify-hook/team-tmux-guard.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,6BAA6B,2BAA2B,CAAC;AAQtE,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,CAEvD;AAgCD,wBAAsB,mBAAmB,CAAC,WAAW,EAAE,GAAG,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CA2ClG;AAED,wBAAsB,wBAAwB,CAAC,WAAW,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,GAAG,SAAS,EAAE,mBAAmB,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAmD5I;AAaD,eAAO,MAAM,gCAAgC,8BAA8B,CAAC;AAwB5E,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,CAEhE;AAED,wBAAsB,8BAA8B,CAAC,UAAU,EAAE,GAAG,EAAE,EACpE,eAAuB,EACvB,YAAiB,EACjB,mBAA0B,EAC1B,YAAmB,EACnB,WAAkB,EAClB,sBAA8B,EAC9B,sBAAkC,EAClC,WAAuB,EACvB,eAA2B,EAC3B,mBAA+B,EAC/B,iBAA6B,GAC9B;;;;;;;;;;;;CAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CA2KpB;AAED,wBAAsB,aAAa,CAAC,EAClC,UAAU,EACV,MAAM,EACN,gBAAoB,EACpB,aAAiB,EACjB,UAAiB,EACjB,gBAAwB,EACxB,WAAuB,EACvB,eAA2B,EAC3B,mBAA+B,EAC/B,iBAA6B,GAC9B,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAyLpB;AAED,wBAAsB,cAAc,CAAC,EACnC,UAAU,EACV,MAAM,EACN,aAAkB,EAClB,WAAuB,GACxB,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CA8DpB;AAED,wBAAsB,6BAA6B,CAAC,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAEnG"}
@@ -1,6 +1,150 @@
1
1
  import { safeString } from './utils.js';
2
2
  import { runProcess } from './process-runner.js';
3
3
  import { buildCapturePaneArgv, buildPaneInModeArgv, buildPaneCurrentCommandArgv, buildSendKeysArgv, isPaneRunningShell, paneHasActiveTask, paneLooksReady, } from '../tmux-hook-engine.js';
4
+ import { readExactPaneProof } from '../../team/exact-pane.js';
5
+ export const EXACT_PANE_UNAVAILABLE_REASON = 'exact_pane_unavailable';
6
+ const EXACT_PANE_ID_RE = /^%\d+$/;
7
+ function explicitPaneIdentity(value) {
8
+ const paneId = safeString(value).trim();
9
+ return { provided: paneId !== '', paneId: EXACT_PANE_ID_RE.test(paneId) ? paneId : '' };
10
+ }
11
+ export function normalizeExactPaneId(value) {
12
+ return explicitPaneIdentity(value).paneId;
13
+ }
14
+ function exactPaneBindingFailure(target, exactPaneId) {
15
+ const identity = explicitPaneIdentity(exactPaneId);
16
+ const targetIsExactPane = EXACT_PANE_ID_RE.test(target);
17
+ if (targetIsExactPane && !identity.provided) {
18
+ return {
19
+ ok: false,
20
+ reason: EXACT_PANE_UNAVAILABLE_REASON,
21
+ paneId: target,
22
+ proof: { status: 'unavailable', paneId: target, reason: 'missing_exact_pane_id' },
23
+ };
24
+ }
25
+ if (identity.provided && !identity.paneId) {
26
+ return {
27
+ ok: false,
28
+ reason: EXACT_PANE_UNAVAILABLE_REASON,
29
+ paneId: '',
30
+ proof: { status: 'unavailable', paneId: safeString(exactPaneId).trim(), reason: 'invalid_pane_id' },
31
+ };
32
+ }
33
+ if (identity.paneId && identity.paneId !== target) {
34
+ return {
35
+ ok: false,
36
+ reason: EXACT_PANE_UNAVAILABLE_REASON,
37
+ paneId: identity.paneId,
38
+ proof: { status: 'unavailable', paneId: identity.paneId, reason: 'pane_target_mismatch' },
39
+ };
40
+ }
41
+ return null;
42
+ }
43
+ export async function verifyExactPaneLive(exactPaneId, expectedPanePid) {
44
+ const identity = explicitPaneIdentity(exactPaneId);
45
+ if (!identity.provided)
46
+ return { ok: true, paneId: '', proof: null };
47
+ if (!identity.paneId) {
48
+ return {
49
+ ok: false,
50
+ reason: EXACT_PANE_UNAVAILABLE_REASON,
51
+ paneId: '',
52
+ proof: {
53
+ status: 'unavailable',
54
+ paneId: safeString(exactPaneId).trim(),
55
+ reason: 'invalid_pane_id',
56
+ },
57
+ };
58
+ }
59
+ try {
60
+ const proof = await readExactPaneProof(identity.paneId);
61
+ if (proof.status === 'live' && proof.paneId === identity.paneId) {
62
+ if (typeof expectedPanePid === 'number' && proof.pid !== expectedPanePid) {
63
+ return {
64
+ ok: false,
65
+ reason: EXACT_PANE_UNAVAILABLE_REASON,
66
+ paneId: identity.paneId,
67
+ proof: { ...proof, status: 'unavailable', reason: 'pane_pid_changed', expectedPid: expectedPanePid },
68
+ };
69
+ }
70
+ return { ok: true, paneId: identity.paneId, proof };
71
+ }
72
+ return { ok: false, reason: EXACT_PANE_UNAVAILABLE_REASON, paneId: identity.paneId, proof };
73
+ }
74
+ catch (error) {
75
+ return {
76
+ ok: false,
77
+ reason: EXACT_PANE_UNAVAILABLE_REASON,
78
+ paneId: identity.paneId,
79
+ proof: {
80
+ status: 'unavailable',
81
+ paneId: identity.paneId,
82
+ reason: 'query_failed',
83
+ detail: error instanceof Error ? error.message : safeString(error),
84
+ },
85
+ };
86
+ }
87
+ }
88
+ export async function verifyExactPaneOwnerLive(exactPaneId, expectedPanePid, expectedPaneOwnerId) {
89
+ const expectedOwner = safeString(expectedPaneOwnerId).trim();
90
+ if (!expectedOwner || !Number.isInteger(expectedPanePid) || Number(expectedPanePid) <= 0) {
91
+ return {
92
+ ok: false,
93
+ reason: EXACT_PANE_UNAVAILABLE_REASON,
94
+ paneId: normalizeExactPaneId(exactPaneId),
95
+ proof: {
96
+ status: 'unavailable',
97
+ paneId: normalizeExactPaneId(exactPaneId),
98
+ reason: !expectedOwner ? 'missing_expected_pane_owner' : 'missing_expected_pane_pid',
99
+ },
100
+ };
101
+ }
102
+ const beforeOwner = await verifyExactPaneLive(exactPaneId, expectedPanePid);
103
+ if (!beforeOwner.ok)
104
+ return beforeOwner;
105
+ try {
106
+ const ownerResult = await runProcess('tmux', ['show-option', '-qv', '-p', '-t', beforeOwner.paneId, '@omx_team_pane_owner_id'], 3000);
107
+ const actualOwner = safeString(ownerResult.stdout).trim();
108
+ if (actualOwner !== expectedOwner) {
109
+ return {
110
+ ok: false,
111
+ reason: EXACT_PANE_UNAVAILABLE_REASON,
112
+ paneId: beforeOwner.paneId,
113
+ proof: {
114
+ status: 'unavailable',
115
+ paneId: beforeOwner.paneId,
116
+ reason: actualOwner ? 'pane_owner_changed' : 'pane_owner_unavailable',
117
+ expectedOwner,
118
+ actualOwner: actualOwner || undefined,
119
+ },
120
+ };
121
+ }
122
+ }
123
+ catch (error) {
124
+ return {
125
+ ok: false,
126
+ reason: EXACT_PANE_UNAVAILABLE_REASON,
127
+ paneId: beforeOwner.paneId,
128
+ proof: {
129
+ status: 'unavailable',
130
+ paneId: beforeOwner.paneId,
131
+ reason: 'pane_owner_unavailable',
132
+ detail: error instanceof Error ? error.message : safeString(error),
133
+ },
134
+ };
135
+ }
136
+ return verifyExactPaneLive(exactPaneId, expectedPanePid);
137
+ }
138
+ function exactPaneUnavailableResult(target, paneProof, extra = {}) {
139
+ return {
140
+ ok: false,
141
+ sent: false,
142
+ reason: EXACT_PANE_UNAVAILABLE_REASON,
143
+ paneTarget: target,
144
+ exactPaneProof: paneProof.proof || null,
145
+ ...extra,
146
+ };
147
+ }
4
148
  export const PANE_READINESS_UNVERIFIED_REASON = 'pane_readiness_unverified';
5
149
  let nextTmuxBufferId = 0;
6
150
  function buildSafePasteArgv(target, prompt) {
@@ -18,7 +162,7 @@ function buildSafePasteArgv(target, prompt) {
18
162
  export function mapPaneInjectionReadinessReason(reason) {
19
163
  return reason === 'pane_running_shell' ? 'agent_not_running' : reason;
20
164
  }
21
- export async function evaluatePaneInjectionReadiness(paneTarget, { skipIfScrolling = false, captureLines = 80, requireRunningAgent = true, requireReady = true, requireIdle = true, requireObservableState = false, requireCaptureEvidence = undefined, } = {}) {
165
+ export async function evaluatePaneInjectionReadiness(paneTarget, { skipIfScrolling = false, captureLines = 80, requireRunningAgent = true, requireReady = true, requireIdle = true, requireObservableState = false, requireCaptureEvidence = undefined, exactPaneId = undefined, expectedPanePid = undefined, expectedPaneOwnerId = undefined, expectedHudPaneId = undefined, } = {}) {
22
166
  const normalizedRequireObservableState = typeof requireCaptureEvidence === 'boolean' ? requireCaptureEvidence : requireObservableState;
23
167
  const target = safeString(paneTarget).trim();
24
168
  if (!target) {
@@ -31,24 +175,25 @@ export async function evaluatePaneInjectionReadiness(paneTarget, { skipIfScrolli
31
175
  paneCapture: '',
32
176
  };
33
177
  }
34
- if (skipIfScrolling) {
35
- try {
36
- const modeResult = await runProcess('tmux', buildPaneInModeArgv(target), 3000);
37
- if (safeString(modeResult.stdout).trim() === '1') {
38
- return {
39
- ok: false,
40
- sent: false,
41
- reason: 'scroll_active',
42
- paneTarget: target,
43
- paneCurrentCommand: '',
44
- paneCapture: '',
45
- };
46
- }
47
- }
48
- catch {
49
- // Non-fatal: continue with remaining preflight checks.
50
- }
51
- }
178
+ const bindingFailure = exactPaneBindingFailure(target, exactPaneId);
179
+ if (bindingFailure)
180
+ return exactPaneUnavailableResult(target, bindingFailure);
181
+ const exactPaneIdentity = safeString(exactPaneId).trim();
182
+ const exactPaneIdentityProvided = explicitPaneIdentity(exactPaneId).provided;
183
+ const expectedOwner = safeString(expectedPaneOwnerId).trim();
184
+ const expectedHudPane = normalizeExactPaneId(expectedHudPaneId);
185
+ const requiresTeamReadAuthority = exactPaneIdentityProvided && (expectedPanePid !== undefined || expectedOwner || expectedHudPane);
186
+ let exactPaneProof = null;
187
+ let pinnedPanePid = typeof expectedPanePid === 'number' ? expectedPanePid : undefined;
188
+ const verifyExplicitPane = async () => {
189
+ const paneProof = requiresTeamReadAuthority
190
+ ? await verifyExactPaneOwnerLive(exactPaneIdentity, pinnedPanePid, expectedOwner)
191
+ : await verifyExactPaneLive(exactPaneIdentity, pinnedPanePid);
192
+ exactPaneProof = paneProof.proof || null;
193
+ if (paneProof.ok && typeof paneProof.proof?.pid === 'number')
194
+ pinnedPanePid ??= paneProof.proof.pid;
195
+ return paneProof;
196
+ };
52
197
  let paneCurrentCommand = '';
53
198
  let paneRunningShell = false;
54
199
  const buildReadinessResult = (ok, reason, paneCapture, readinessEvidence) => ({
@@ -59,18 +204,95 @@ export async function evaluatePaneInjectionReadiness(paneTarget, { skipIfScrolli
59
204
  paneCurrentCommand,
60
205
  paneCapture,
61
206
  readinessEvidence,
207
+ exactPaneProof,
62
208
  });
63
- try {
64
- const result = await runProcess('tmux', buildPaneCurrentCommandArgv(target), 3000);
65
- paneCurrentCommand = safeString(result.stdout).trim();
66
- paneRunningShell = requireRunningAgent && isPaneRunningShell(paneCurrentCommand);
209
+ const exactPaneFailure = (paneProof, paneCapture = '') => exactPaneUnavailableResult(target, paneProof, {
210
+ paneCurrentCommand,
211
+ paneCapture,
212
+ readinessEvidence: 'exact_pane_unavailable',
213
+ });
214
+ if (expectedHudPane && expectedHudPane === exactPaneIdentity) {
215
+ return buildReadinessResult(false, 'hud_pane_target', '', 'hud_pane_rejected');
67
216
  }
68
- catch {
69
- paneCurrentCommand = '';
217
+ const readExplicitPane = async (argv) => {
218
+ const beforeRead = await verifyExplicitPane();
219
+ if (!beforeRead.ok)
220
+ return { ok: false, paneProof: beforeRead, result: null };
221
+ try {
222
+ const result = await runProcess('tmux', argv, 3000);
223
+ if (requiresTeamReadAuthority) {
224
+ const afterRead = await verifyExplicitPane();
225
+ if (!afterRead.ok)
226
+ return { ok: false, paneProof: afterRead, result: null };
227
+ }
228
+ return { ok: true, paneProof: beforeRead, result };
229
+ }
230
+ catch (error) {
231
+ return { ok: false, paneProof: null, result: null, error };
232
+ }
233
+ };
234
+ if (skipIfScrolling) {
235
+ const read = await readExplicitPane(buildPaneInModeArgv(target));
236
+ if (!read.ok) {
237
+ if (read.paneProof)
238
+ return exactPaneFailure(read.paneProof);
239
+ // Non-fatal: continue with remaining preflight checks.
240
+ }
241
+ else if (safeString(read.result?.stdout).trim() === '1') {
242
+ return {
243
+ ok: false,
244
+ sent: false,
245
+ reason: 'scroll_active',
246
+ paneTarget: target,
247
+ paneCurrentCommand: '',
248
+ paneCapture: '',
249
+ exactPaneProof,
250
+ };
251
+ }
70
252
  }
71
- try {
72
- const capture = await runProcess('tmux', buildCapturePaneArgv(target, captureLines), 3000);
73
- const paneCapture = safeString(capture.stdout);
253
+ if (exactPaneIdentityProvided) {
254
+ const read = await readExplicitPane(['display-message', '-p', '-t', target, '#{pane_start_command}']);
255
+ if (!read.ok) {
256
+ if (read.paneProof)
257
+ return exactPaneFailure(read.paneProof);
258
+ return buildReadinessResult(false, PANE_READINESS_UNVERIFIED_REASON, '', 'start_command_failed');
259
+ }
260
+ if (/\bomx\b.*\bhud\b.*--watch/i.test(safeString(read.result?.stdout))) {
261
+ return buildReadinessResult(false, 'hud_pane_target', '', 'hud_pane_rejected');
262
+ }
263
+ }
264
+ {
265
+ const read = await readExplicitPane(buildPaneCurrentCommandArgv(target));
266
+ if (!read.ok) {
267
+ if (read.paneProof)
268
+ return exactPaneFailure(read.paneProof);
269
+ if (exactPaneIdentityProvided) {
270
+ return buildReadinessResult(false, PANE_READINESS_UNVERIFIED_REASON, '', 'command_failed');
271
+ }
272
+ paneCurrentCommand = '';
273
+ }
274
+ else {
275
+ paneCurrentCommand = safeString(read.result?.stdout).trim();
276
+ paneRunningShell = requireRunningAgent && isPaneRunningShell(paneCurrentCommand);
277
+ }
278
+ }
279
+ {
280
+ const read = await readExplicitPane(buildCapturePaneArgv(target, captureLines));
281
+ if (!read.ok) {
282
+ if (read.paneProof)
283
+ return exactPaneFailure(read.paneProof);
284
+ if (exactPaneIdentityProvided) {
285
+ return buildReadinessResult(false, PANE_READINESS_UNVERIFIED_REASON, '', 'capture_failed');
286
+ }
287
+ if (paneRunningShell) {
288
+ return buildReadinessResult(false, 'pane_running_shell', '', 'capture_failed');
289
+ }
290
+ if (normalizedRequireObservableState) {
291
+ return buildReadinessResult(false, PANE_READINESS_UNVERIFIED_REASON, '', 'capture_failed');
292
+ }
293
+ return buildReadinessResult(true, 'ok', '', paneCurrentCommand ? 'command_only' : 'none');
294
+ }
295
+ const paneCapture = safeString(read.result?.stdout);
74
296
  const hasCaptureEvidence = paneCapture.trim() !== '';
75
297
  if (hasCaptureEvidence) {
76
298
  const paneShowsLiveAgent = paneLooksReady(paneCapture) || paneHasActiveTask(paneCapture);
@@ -94,6 +316,7 @@ export async function evaluatePaneInjectionReadiness(paneTarget, { skipIfScrolli
94
316
  paneTarget: target,
95
317
  paneCurrentCommand,
96
318
  paneCapture,
319
+ exactPaneProof,
97
320
  };
98
321
  }
99
322
  }
@@ -105,6 +328,7 @@ export async function evaluatePaneInjectionReadiness(paneTarget, { skipIfScrolli
105
328
  paneTarget: target,
106
329
  paneCurrentCommand,
107
330
  paneCapture,
331
+ exactPaneProof,
108
332
  };
109
333
  }
110
334
  if (normalizedRequireObservableState && !hasCaptureEvidence && !paneCurrentCommand) {
@@ -112,21 +336,60 @@ export async function evaluatePaneInjectionReadiness(paneTarget, { skipIfScrolli
112
336
  }
113
337
  return buildReadinessResult(true, 'ok', paneCapture, hasCaptureEvidence ? 'captured' : (paneCurrentCommand ? 'command_only' : 'none'));
114
338
  }
115
- catch {
116
- if (paneRunningShell) {
117
- return buildReadinessResult(false, 'pane_running_shell', '', 'capture_failed');
118
- }
119
- if (normalizedRequireObservableState) {
120
- return buildReadinessResult(false, PANE_READINESS_UNVERIFIED_REASON, '', 'capture_failed');
121
- }
122
- return buildReadinessResult(true, 'ok', '', paneCurrentCommand ? 'command_only' : 'none');
123
- }
124
339
  }
125
- export async function sendPaneInput({ paneTarget, prompt, submitKeyPresses = 2, submitDelayMs = 0, typePrompt = true, queueFirstSubmit = false, }) {
340
+ export async function sendPaneInput({ paneTarget, prompt, submitKeyPresses = 2, submitDelayMs = 0, typePrompt = true, queueFirstSubmit = false, exactPaneId = undefined, expectedPanePid = undefined, expectedPaneOwnerId = undefined, expectedHudPaneId = undefined, }) {
126
341
  const target = safeString(paneTarget).trim();
127
342
  if (!target) {
128
343
  return { ok: false, sent: false, reason: 'missing_pane_target', paneTarget: '' };
129
344
  }
345
+ const bindingFailure = exactPaneBindingFailure(target, exactPaneId);
346
+ if (bindingFailure)
347
+ return exactPaneUnavailableResult(target, bindingFailure);
348
+ const exactPaneIdentity = safeString(exactPaneId).trim();
349
+ let exactPaneProof = null;
350
+ let pinnedPanePid = typeof expectedPanePid === 'number' ? expectedPanePid : undefined;
351
+ const verifyExplicitPane = async () => {
352
+ const paneProof = await verifyExactPaneLive(exactPaneIdentity, pinnedPanePid);
353
+ exactPaneProof = paneProof.proof || null;
354
+ if (paneProof.ok && typeof paneProof.proof?.pid === 'number')
355
+ pinnedPanePid ??= paneProof.proof.pid;
356
+ return paneProof;
357
+ };
358
+ const expectedOwner = safeString(expectedPaneOwnerId).trim();
359
+ const expectedHudPane = normalizeExactPaneId(expectedHudPaneId);
360
+ if (expectedHudPane && expectedHudPane === exactPaneIdentity) {
361
+ return { ok: false, sent: false, reason: 'hud_pane_target', paneTarget: target };
362
+ }
363
+ const verifyForEffect = async () => {
364
+ if (expectedOwner) {
365
+ const paneProof = await verifyExactPaneOwnerLive(exactPaneIdentity, pinnedPanePid, expectedOwner);
366
+ exactPaneProof = paneProof.proof || null;
367
+ return paneProof;
368
+ }
369
+ return verifyExplicitPane();
370
+ };
371
+ const initialProof = await verifyForEffect();
372
+ if (!initialProof.ok)
373
+ return exactPaneUnavailableResult(target, initialProof);
374
+ try {
375
+ const startCommandResult = await runProcess('tmux', ['display-message', '-p', '-t', target, '#{pane_start_command}'], 3000);
376
+ if (/\bomx\b.*\bhud\b.*--watch/i.test(safeString(startCommandResult.stdout))) {
377
+ return { ok: false, sent: false, reason: 'hud_pane_target', paneTarget: target, exactPaneProof };
378
+ }
379
+ }
380
+ catch {
381
+ return {
382
+ ok: false,
383
+ sent: false,
384
+ reason: PANE_READINESS_UNVERIFIED_REASON,
385
+ paneTarget: target,
386
+ exactPaneProof,
387
+ readinessEvidence: 'start_command_failed',
388
+ };
389
+ }
390
+ const postHudProof = await verifyForEffect();
391
+ if (!postHudProof.ok)
392
+ return exactPaneUnavailableResult(target, postHudProof);
130
393
  const normalizedSubmitKeyPresses = Number.isFinite(submitKeyPresses)
131
394
  ? Math.max(0, Math.floor(submitKeyPresses))
132
395
  : 2;
@@ -140,7 +403,7 @@ export async function sendPaneInput({ paneTarget, prompt, submitKeyPresses = 2,
140
403
  submitKeyPresses: normalizedSubmitKeyPresses,
141
404
  })?.submitArgv;
142
405
  if (!submitArgv) {
143
- return { ok: false, sent: false, reason: 'send_failed', paneTarget: target };
406
+ return { ok: false, sent: false, reason: 'send_failed', paneTarget: target, exactPaneProof };
144
407
  }
145
408
  const pasteArgv = buildSafePasteArgv(target, literalPrompt);
146
409
  const argv = {
@@ -167,6 +430,7 @@ export async function sendPaneInput({ paneTarget, prompt, submitKeyPresses = 2,
167
430
  reason: 'buffer_set_failed',
168
431
  paneTarget: target,
169
432
  argv,
433
+ exactPaneProof,
170
434
  error: error instanceof Error ? error.message : safeString(error),
171
435
  };
172
436
  }
@@ -181,6 +445,7 @@ export async function sendPaneInput({ paneTarget, prompt, submitKeyPresses = 2,
181
445
  reason: 'buffer_show_failed',
182
446
  paneTarget: target,
183
447
  argv,
448
+ exactPaneProof,
184
449
  error: error instanceof Error ? error.message : safeString(error),
185
450
  };
186
451
  }
@@ -191,12 +456,32 @@ export async function sendPaneInput({ paneTarget, prompt, submitKeyPresses = 2,
191
456
  reason: 'buffer_verify_failed',
192
457
  paneTarget: target,
193
458
  argv,
459
+ exactPaneProof,
194
460
  expectedBytes: literalPrompt.length,
195
461
  actualBytes: verifiedBuffer.stdout.length,
196
462
  };
197
463
  }
464
+ const clearProof = await verifyForEffect();
465
+ if (!clearProof.ok)
466
+ return exactPaneUnavailableResult(target, clearProof, { argv });
198
467
  try {
199
468
  await runProcess('tmux', pasteArgv.clearComposerArgv, 3000);
469
+ }
470
+ catch (error) {
471
+ return {
472
+ ok: false,
473
+ sent: false,
474
+ reason: 'buffer_paste_failed',
475
+ paneTarget: target,
476
+ argv,
477
+ exactPaneProof,
478
+ error: error instanceof Error ? error.message : safeString(error),
479
+ };
480
+ }
481
+ const pasteProof = await verifyForEffect();
482
+ if (!pasteProof.ok)
483
+ return exactPaneUnavailableResult(target, pasteProof, { argv });
484
+ try {
200
485
  await runProcess('tmux', pasteArgv.pasteBufferArgv, 3000);
201
486
  }
202
487
  catch (error) {
@@ -206,11 +491,15 @@ export async function sendPaneInput({ paneTarget, prompt, submitKeyPresses = 2,
206
491
  reason: 'buffer_paste_failed',
207
492
  paneTarget: target,
208
493
  argv,
494
+ exactPaneProof,
209
495
  error: error instanceof Error ? error.message : safeString(error),
210
496
  };
211
497
  }
212
498
  }
213
499
  if (queueFirstSubmit && argv.submitArgv.length > 0) {
500
+ const queueProof = await verifyForEffect();
501
+ if (!queueProof.ok)
502
+ return exactPaneUnavailableResult(target, queueProof, { argv });
214
503
  await runProcess('tmux', ['send-keys', '-t', target, 'Tab'], 3000);
215
504
  if (submitDelayMs > 0) {
216
505
  await new Promise((resolve) => setTimeout(resolve, submitDelayMs));
@@ -220,9 +509,12 @@ export async function sendPaneInput({ paneTarget, prompt, submitKeyPresses = 2,
220
509
  if (submitDelayMs > 0) {
221
510
  await new Promise((resolve) => setTimeout(resolve, submitDelayMs));
222
511
  }
512
+ const submitProof = await verifyForEffect();
513
+ if (!submitProof.ok)
514
+ return exactPaneUnavailableResult(target, submitProof, { argv });
223
515
  await runProcess('tmux', submit, 3000);
224
516
  }
225
- return { ok: true, sent: true, reason: 'sent', paneTarget: target, argv };
517
+ return { ok: true, sent: true, reason: 'sent', paneTarget: target, argv, exactPaneProof };
226
518
  }
227
519
  catch (error) {
228
520
  return {
@@ -231,6 +523,7 @@ export async function sendPaneInput({ paneTarget, prompt, submitKeyPresses = 2,
231
523
  reason: 'send_failed',
232
524
  paneTarget: target,
233
525
  argv,
526
+ exactPaneProof,
234
527
  error: error instanceof Error ? error.message : safeString(error),
235
528
  };
236
529
  }
@@ -240,24 +533,50 @@ export async function sendPaneInput({ paneTarget, prompt, submitKeyPresses = 2,
240
533
  }
241
534
  }
242
535
  }
243
- export async function queuePaneInput({ paneTarget, prompt, submitDelayMs = 80, }) {
536
+ export async function queuePaneInput({ paneTarget, prompt, submitDelayMs = 80, exactPaneId = undefined, }) {
537
+ const target = safeString(paneTarget).trim();
538
+ const exactPaneIdentity = safeString(exactPaneId).trim();
539
+ const bindingFailure = exactPaneBindingFailure(target, exactPaneId);
540
+ if (bindingFailure)
541
+ return exactPaneUnavailableResult(target, bindingFailure);
244
542
  const sendResult = await sendPaneInput({
245
543
  paneTarget,
246
544
  prompt,
247
545
  submitKeyPresses: 0,
546
+ exactPaneId: exactPaneIdentity,
248
547
  });
249
548
  if (!sendResult.ok)
250
549
  return sendResult;
251
- const target = safeString(paneTarget).trim();
550
+ let exactPaneProof = sendResult.exactPaneProof || null;
551
+ let expectedPanePid = typeof sendResult.exactPaneProof?.pid === 'number' ? sendResult.exactPaneProof.pid : undefined;
552
+ const verifyExplicitPane = async () => {
553
+ const paneProof = await verifyExactPaneLive(exactPaneIdentity, expectedPanePid);
554
+ exactPaneProof = paneProof.proof || null;
555
+ if (paneProof.ok && typeof paneProof.proof?.pid === 'number')
556
+ expectedPanePid ??= paneProof.proof.pid;
557
+ return paneProof;
558
+ };
252
559
  const submitArgv = [
253
560
  ['send-keys', '-t', target, 'Tab'],
254
561
  ['send-keys', '-t', target, 'C-m'],
255
562
  ];
563
+ const firstSubmitProof = await verifyExplicitPane();
564
+ if (!firstSubmitProof.ok) {
565
+ return exactPaneUnavailableResult(target, firstSubmitProof, {
566
+ argv: { typeArgv: sendResult.argv?.typeArgv || null, submitArgv },
567
+ });
568
+ }
256
569
  try {
257
570
  await runProcess('tmux', submitArgv[0], 3000);
258
571
  if (submitDelayMs > 0) {
259
572
  await new Promise((resolve) => setTimeout(resolve, submitDelayMs));
260
573
  }
574
+ const secondSubmitProof = await verifyExplicitPane();
575
+ if (!secondSubmitProof.ok) {
576
+ return exactPaneUnavailableResult(target, secondSubmitProof, {
577
+ argv: { typeArgv: sendResult.argv?.typeArgv || null, submitArgv },
578
+ });
579
+ }
261
580
  await runProcess('tmux', submitArgv[1], 3000);
262
581
  return {
263
582
  ok: true,
@@ -265,6 +584,7 @@ export async function queuePaneInput({ paneTarget, prompt, submitDelayMs = 80, }
265
584
  reason: 'queued',
266
585
  paneTarget: target,
267
586
  argv: { typeArgv: sendResult.argv?.typeArgv || null, submitArgv },
587
+ exactPaneProof,
268
588
  };
269
589
  }
270
590
  catch (error) {
@@ -274,11 +594,12 @@ export async function queuePaneInput({ paneTarget, prompt, submitDelayMs = 80, }
274
594
  reason: 'queue_failed',
275
595
  paneTarget: target,
276
596
  argv: { typeArgv: sendResult.argv?.typeArgv || null, submitArgv },
597
+ exactPaneProof,
277
598
  error: error instanceof Error ? error.message : safeString(error),
278
599
  };
279
600
  }
280
601
  }
281
- export async function checkPaneReadyForTeamSendKeys(paneTarget) {
282
- return evaluatePaneInjectionReadiness(paneTarget);
602
+ export async function checkPaneReadyForTeamSendKeys(paneTarget, exactPaneId) {
603
+ return evaluatePaneInjectionReadiness(paneTarget, { exactPaneId });
283
604
  }
284
605
  //# sourceMappingURL=team-tmux-guard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"team-tmux-guard.js","sourceRoot":"","sources":["../../../src/scripts/notify-hook/team-tmux-guard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"team-tmux-guard.js","sourceRoot":"","sources":["../../../src/scripts/notify-hook/team-tmux-guard.ts"],"names":[],"mappings":"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"}