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
@@ -0,0 +1,87 @@
1
+ import { type SessionPointerReadResult } from './session.js';
2
+ export type PromptProducer = 'native' | 'notify';
3
+ export type PromptProvenanceRejectReason = 'payload_session_invalid' | 'owner_env_invalid' | 'payload_session_absent' | 'selected_pointer_unusable' | 'owner_env_unbound' | 'notify_fork_missing' | 'foreign_child' | 'ambiguous_child';
4
+ export type PromptOwnershipRejectReason = 'owner_conflict' | 'target_owner_mismatch' | 'target_owner_disagreement' | 'legacy_adoption_denied';
5
+ export type PromptThreadClassification = {
6
+ readonly kind: 'root-or-drift';
7
+ } | {
8
+ readonly kind: 'target-child';
9
+ readonly rootOwnerSessionId: string;
10
+ readonly proof: 'spawn' | 'transcript' | 'tracker';
11
+ } | {
12
+ readonly kind: 'foreign-child';
13
+ readonly rootOwnerSessionId: string;
14
+ readonly proof: 'spawn' | 'transcript' | 'tracker';
15
+ } | {
16
+ readonly kind: 'ambiguous-child';
17
+ readonly rootOwnerSessionIds: readonly string[];
18
+ } | {
19
+ readonly kind: 'unknown';
20
+ };
21
+ export interface PromptMutationAuthorization {
22
+ readonly targetSessionId: string;
23
+ readonly ownerCodexSessionId: string;
24
+ readonly allowedOwnerCodexSessionIds: readonly string[];
25
+ readonly allowedStorageSessionIds: readonly string[];
26
+ readonly targetRelation: 'explicit-independent' | 'pointer-alias' | 'pointer-fallback' | 'notify-explicit-existing-fork';
27
+ readonly thread: PromptThreadClassification;
28
+ readonly legacyAdoption: 'allow' | 'deny';
29
+ readonly globalSideEffects: 'allow' | 'suppress';
30
+ }
31
+ export interface PromptDiagnosticDescriptor {
32
+ readonly reason: PromptProvenanceRejectReason | PromptOwnershipRejectReason;
33
+ readonly producer: PromptProducer;
34
+ readonly selectedRootStatus: string;
35
+ readonly relation?: PromptMutationAuthorization['targetRelation'];
36
+ readonly timestamp: string;
37
+ }
38
+ export type ResolvedPromptTurnContext = Readonly<{
39
+ status: 'authorized';
40
+ authorization: PromptMutationAuthorization;
41
+ ownership: Readonly<{
42
+ status: 'compatible' | 'adoptable';
43
+ normalizedOwnerCodexSessionId: string;
44
+ }>;
45
+ }> | Readonly<{
46
+ status: 'suppressed-target-child';
47
+ authorization: PromptMutationAuthorization;
48
+ }> | Readonly<{
49
+ status: 'rejected';
50
+ reason: PromptProvenanceRejectReason | PromptOwnershipRejectReason;
51
+ diagnostic: PromptDiagnosticDescriptor;
52
+ }>;
53
+ export interface PromptThreadFacts {
54
+ readonly spawnRootOwnerSessionId?: unknown;
55
+ readonly transcriptRootOwnerSessionId?: unknown;
56
+ readonly trackerRootOwnerSessionIds?: readonly unknown[];
57
+ /** A current-target anchor takes precedence over stale tracker evidence. */
58
+ readonly currentTargetAnchored?: boolean;
59
+ /** Factual raw-thread relation when no trusted child proof exists. */
60
+ readonly rootOrDrift?: boolean;
61
+ }
62
+ export interface EvaluateResolvedPromptTurnInput {
63
+ readonly producer: PromptProducer;
64
+ /** Raw payload P; presence is validated even when malformed. */
65
+ readonly payloadSessionId?: unknown;
66
+ /** Raw E; presence is validated even when malformed. */
67
+ readonly ownerEnvSessionId?: unknown;
68
+ readonly selectedPointer: Pick<SessionPointerReadResult, 'status' | 'state'>;
69
+ /** Neutral, validated `sessions/E` stat fact supplied only by notify. */
70
+ readonly forkScopeExists?: boolean;
71
+ readonly threadFacts?: PromptThreadFacts;
72
+ readonly nowIso?: string;
73
+ }
74
+ export interface SelectedTargetOwnerEvidence {
75
+ readonly ownerCodexSessionId?: unknown;
76
+ readonly targetSessionId?: unknown;
77
+ }
78
+ export declare function extractSelectedTargetOwnerEvidence(value: unknown): readonly SelectedTargetOwnerEvidence[];
79
+ export declare function classifyPromptThread(facts: PromptThreadFacts | undefined, ownerIds: readonly string[]): PromptThreadClassification;
80
+ /**
81
+ * The sole provenance policy evaluator. It is pure: callers supply selected-root
82
+ * facts and may call this once before any ownership-sensitive read or effect.
83
+ */
84
+ export declare function evaluateResolvedPromptTurn(input: EvaluateResolvedPromptTurnInput): ResolvedPromptTurnContext;
85
+ /** Read-only selected-target owner preflight; no path discovery or mutation. */
86
+ export declare function preflightSelectedTargetOwner(context: ResolvedPromptTurnContext, evidence: readonly SelectedTargetOwnerEvidence[], producer?: PromptProducer, nowIso?: string): ResolvedPromptTurnContext;
87
+ //# sourceMappingURL=prompt-session-provenance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-session-provenance.d.ts","sourceRoot":"","sources":["../../src/hooks/prompt-session-provenance.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,180 @@
1
+ import { normalizeSessionId } from './session.js';
2
+ export function extractSelectedTargetOwnerEvidence(value) {
3
+ if (!value || typeof value !== 'object' || Array.isArray(value)) {
4
+ return Object.freeze([{ ownerCodexSessionId: {} }]);
5
+ }
6
+ const record = value;
7
+ const evidence = [{
8
+ ownerCodexSessionId: record.owner_codex_session_id,
9
+ targetSessionId: record.session_id,
10
+ }];
11
+ if (record.active_skills !== undefined) {
12
+ if (!Array.isArray(record.active_skills)) {
13
+ evidence.push({ ownerCodexSessionId: record.active_skills });
14
+ }
15
+ else {
16
+ for (const entry of record.active_skills) {
17
+ if (!entry || typeof entry !== 'object' || Array.isArray(entry)) {
18
+ evidence.push({ ownerCodexSessionId: entry ?? {} });
19
+ continue;
20
+ }
21
+ const activeEntry = entry;
22
+ evidence.push({
23
+ ownerCodexSessionId: activeEntry.owner_codex_session_id,
24
+ targetSessionId: activeEntry.session_id ?? record.session_id,
25
+ });
26
+ }
27
+ }
28
+ }
29
+ return Object.freeze(evidence);
30
+ }
31
+ function orderedUnique(values) {
32
+ return Object.freeze([...new Set(values.filter((value) => Boolean(value)))]);
33
+ }
34
+ function hasRawValue(value) {
35
+ return value !== undefined && value !== null;
36
+ }
37
+ function selectedAliases(state) {
38
+ if (!state)
39
+ return Object.freeze([]);
40
+ return orderedUnique([
41
+ normalizeSessionId(state.session_id),
42
+ normalizeSessionId(state.native_session_id),
43
+ normalizeSessionId(state.previous_native_session_id),
44
+ normalizeSessionId(state.owner_omx_session_id),
45
+ normalizeSessionId(state.owner_codex_session_id),
46
+ ]);
47
+ }
48
+ function fallbackOwner(state, canonical) {
49
+ return normalizeSessionId(state.owner_codex_session_id)
50
+ ?? normalizeSessionId(state.codex_session_id)
51
+ ?? normalizeSessionId(state.native_session_id)
52
+ ?? normalizeSessionId(state.previous_native_session_id)
53
+ ?? normalizeSessionId(state.owner_omx_session_id)
54
+ ?? canonical;
55
+ }
56
+ function diagnostic(reason, producer, selectedRootStatus, relation, nowIso = '') {
57
+ return Object.freeze({
58
+ status: 'rejected',
59
+ reason,
60
+ diagnostic: Object.freeze({ reason, producer, selectedRootStatus, ...(relation ? { relation } : {}), timestamp: nowIso }),
61
+ });
62
+ }
63
+ export function classifyPromptThread(facts, ownerIds) {
64
+ const proofValues = [
65
+ [normalizeSessionId(facts?.spawnRootOwnerSessionId), 'spawn'],
66
+ [normalizeSessionId(facts?.transcriptRootOwnerSessionId), 'transcript'],
67
+ ];
68
+ for (const root of facts?.trackerRootOwnerSessionIds ?? [])
69
+ proofValues.push([normalizeSessionId(root), 'tracker']);
70
+ const roots = orderedUnique(proofValues.map(([root]) => root));
71
+ if (roots.length === 0)
72
+ return Object.freeze(facts?.rootOrDrift ? { kind: 'root-or-drift' } : { kind: 'unknown' });
73
+ if (facts?.currentTargetAnchored) {
74
+ return Object.freeze({ kind: 'root-or-drift' });
75
+ }
76
+ if (roots.length > 1)
77
+ return Object.freeze({ kind: 'ambiguous-child', rootOwnerSessionIds: roots });
78
+ const [root] = roots;
79
+ const proof = proofValues.find(([candidate]) => candidate === root)?.[1] ?? 'tracker';
80
+ return ownerIds.includes(root)
81
+ ? Object.freeze({ kind: 'target-child', rootOwnerSessionId: root, proof })
82
+ : Object.freeze({ kind: 'foreign-child', rootOwnerSessionId: root, proof });
83
+ }
84
+ function authorization(targetSessionId, ownerCodexSessionId, allowedOwnerCodexSessionIds, allowedStorageSessionIds, targetRelation, globalSideEffects, legacyAdoption, threadFacts) {
85
+ const owners = orderedUnique([...allowedOwnerCodexSessionIds, ownerCodexSessionId]);
86
+ return Object.freeze({
87
+ targetSessionId,
88
+ ownerCodexSessionId,
89
+ allowedOwnerCodexSessionIds: owners,
90
+ allowedStorageSessionIds: orderedUnique([...allowedStorageSessionIds, targetSessionId]),
91
+ targetRelation,
92
+ thread: classifyPromptThread(threadFacts, owners),
93
+ legacyAdoption,
94
+ globalSideEffects,
95
+ });
96
+ }
97
+ function finishAuthorization(input, value) {
98
+ if (value.thread.kind === 'target-child')
99
+ return Object.freeze({ status: 'suppressed-target-child', authorization: value });
100
+ if (value.thread.kind === 'foreign-child')
101
+ return diagnostic('foreign_child', input.producer, input.selectedPointer.status, value.targetRelation, input.nowIso);
102
+ if (value.thread.kind === 'ambiguous-child')
103
+ return diagnostic('ambiguous_child', input.producer, input.selectedPointer.status, value.targetRelation, input.nowIso);
104
+ return Object.freeze({
105
+ status: 'authorized',
106
+ authorization: value,
107
+ ownership: Object.freeze({ status: value.legacyAdoption === 'allow' ? 'adoptable' : 'compatible', normalizedOwnerCodexSessionId: value.ownerCodexSessionId }),
108
+ });
109
+ }
110
+ /**
111
+ * The sole provenance policy evaluator. It is pure: callers supply selected-root
112
+ * facts and may call this once before any ownership-sensitive read or effect.
113
+ */
114
+ export function evaluateResolvedPromptTurn(input) {
115
+ const nowIso = input.nowIso;
116
+ const payloadPresent = hasRawValue(input.payloadSessionId);
117
+ const envPresent = hasRawValue(input.ownerEnvSessionId);
118
+ const payload = normalizeSessionId(input.payloadSessionId);
119
+ const ownerEnv = normalizeSessionId(input.ownerEnvSessionId);
120
+ if (payloadPresent && !payload)
121
+ return diagnostic('payload_session_invalid', input.producer, input.selectedPointer.status, undefined, nowIso);
122
+ if (envPresent && !ownerEnv)
123
+ return diagnostic('owner_env_invalid', input.producer, input.selectedPointer.status, undefined, nowIso);
124
+ const state = input.selectedPointer.status === 'usable' ? input.selectedPointer.state : undefined;
125
+ const canonical = normalizeSessionId(state?.session_id);
126
+ const aliases = selectedAliases(state);
127
+ if (payload) {
128
+ if (aliases.includes(payload) && canonical) {
129
+ if (ownerEnv && ownerEnv !== payload && !aliases.includes(ownerEnv)) {
130
+ if (input.producer !== 'notify')
131
+ return diagnostic('owner_env_unbound', input.producer, input.selectedPointer.status, 'pointer-alias', nowIso);
132
+ if (!input.forkScopeExists)
133
+ return diagnostic('notify_fork_missing', input.producer, input.selectedPointer.status, 'pointer-alias', nowIso);
134
+ return finishAuthorization(input, authorization(ownerEnv, payload, [payload, ...aliases], [ownerEnv], 'notify-explicit-existing-fork', 'suppress', 'deny', input.threadFacts));
135
+ }
136
+ return finishAuthorization(input, authorization(canonical, payload, [payload, ...aliases], [canonical, ...aliases], 'pointer-alias', 'allow', 'deny', input.threadFacts));
137
+ }
138
+ if (!ownerEnv || ownerEnv === payload) {
139
+ const globalSideEffects = input.selectedPointer.status === 'absent' ? 'allow' : 'suppress';
140
+ return finishAuthorization(input, authorization(payload, payload, [payload], [payload], 'explicit-independent', globalSideEffects, 'allow', input.threadFacts));
141
+ }
142
+ return diagnostic('owner_env_unbound', input.producer, input.selectedPointer.status, undefined, nowIso);
143
+ }
144
+ if (!state || !canonical)
145
+ return diagnostic(input.selectedPointer.status === 'absent' ? 'payload_session_absent' : 'selected_pointer_unusable', input.producer, input.selectedPointer.status, undefined, nowIso);
146
+ if (ownerEnv && !aliases.includes(ownerEnv))
147
+ return diagnostic('owner_env_unbound', input.producer, input.selectedPointer.status, 'pointer-fallback', nowIso);
148
+ const owner = fallbackOwner(state, canonical);
149
+ return finishAuthorization(input, authorization(canonical, owner, [owner, ...aliases], [canonical, ...aliases], 'pointer-fallback', 'allow', 'allow', input.threadFacts));
150
+ }
151
+ /** Read-only selected-target owner preflight; no path discovery or mutation. */
152
+ export function preflightSelectedTargetOwner(context, evidence, producer = 'native', nowIso = '') {
153
+ if (context.status !== 'authorized')
154
+ return context;
155
+ const { authorization } = context;
156
+ const observedOwners = new Set();
157
+ let adoptable = context.ownership.status === 'adoptable';
158
+ for (const item of evidence) {
159
+ const target = hasRawValue(item.targetSessionId) ? normalizeSessionId(item.targetSessionId) : undefined;
160
+ const owner = hasRawValue(item.ownerCodexSessionId) ? normalizeSessionId(item.ownerCodexSessionId) : undefined;
161
+ if (hasRawValue(item.targetSessionId) && !target)
162
+ return diagnostic('target_owner_mismatch', producer, 'preflight', authorization.targetRelation, nowIso);
163
+ if (target && target !== authorization.targetSessionId)
164
+ return diagnostic('target_owner_mismatch', producer, 'preflight', authorization.targetRelation, nowIso);
165
+ if (hasRawValue(item.ownerCodexSessionId) && !owner)
166
+ return diagnostic('owner_conflict', producer, 'preflight', authorization.targetRelation, nowIso);
167
+ if (owner && !authorization.allowedOwnerCodexSessionIds.includes(owner))
168
+ return diagnostic('owner_conflict', producer, 'preflight', authorization.targetRelation, nowIso);
169
+ if (owner)
170
+ observedOwners.add(owner);
171
+ if (observedOwners.size > 1)
172
+ return diagnostic('target_owner_disagreement', producer, 'preflight', authorization.targetRelation, nowIso);
173
+ if (!owner && target === authorization.targetSessionId && authorization.legacyAdoption === 'deny')
174
+ return diagnostic('legacy_adoption_denied', producer, 'preflight', authorization.targetRelation, nowIso);
175
+ if (!owner && target === authorization.targetSessionId)
176
+ adoptable = true;
177
+ }
178
+ return Object.freeze({ ...context, ownership: Object.freeze({ ...context.ownership, status: adoptable ? 'adoptable' : 'compatible' }) });
179
+ }
180
+ //# sourceMappingURL=prompt-session-provenance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-session-provenance.js","sourceRoot":"","sources":["../../src/hooks/prompt-session-provenance.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,6 @@
1
- /**
2
- * Session Lifecycle Manager for oh-my-codex
3
- *
4
- * Tracks session start/end, detects stale sessions from crashed launches,
5
- * and provides structured logging for session events.
6
- */
1
+ import { type StateRootSource } from '../mcp/state-paths.js';
2
+ import type { PromptDiagnosticDescriptor } from './prompt-session-provenance.js';
3
+ import { type RegularFileSyncOutcome } from '../utils/file-durability.js';
7
4
  export interface SessionState {
8
5
  session_id: string;
9
6
  native_session_id?: string;
@@ -11,6 +8,7 @@ export interface SessionState {
11
8
  native_session_switched_at?: string;
12
9
  owner_omx_session_id?: string;
13
10
  owner_codex_session_id?: string;
11
+ codex_session_id?: string;
14
12
  started_at: string;
15
13
  cwd: string;
16
14
  pid: number;
@@ -20,63 +18,194 @@ export interface SessionState {
20
18
  tmux_session_name?: string;
21
19
  tmux_pane_id?: string;
22
20
  }
21
+ export interface SessionPointerContext {
22
+ cwd: string;
23
+ baseStateDir: string;
24
+ rootSource: StateRootSource;
25
+ sessionPath: string;
26
+ lockPath: string;
27
+ }
28
+ export type SessionPointerStatus = 'absent' | 'usable' | 'stale-dead' | 'identity-indeterminate' | 'malformed' | 'foreign-cwd';
29
+ export interface SessionPointerReadResult {
30
+ status: SessionPointerStatus;
31
+ state?: SessionState;
32
+ raw?: string;
33
+ }
34
+ export type SessionPointerTransactionOperation = 'pointer-context-resolve' | 'state-dir-create' | 'lock-acquire' | 'lock-owner-publish' | 'pointer-read' | 'pointer-classify' | 'pointer-temp-write' | 'pointer-fsync' | 'pointer-rename' | 'owner-conflict' | 'precommit-cleanup' | 'lock-release';
35
+ type AttemptedStateRootSource = StateRootSource | 'unresolved';
36
+ type UnusableSessionPointerStatus = 'malformed' | 'foreign-cwd' | 'identity-indeterminate';
37
+ export type SessionPointerCleanupPhase = 'remove-owner-temp' | 'inspect-unpublished-lock' | 'remove-unpublished-lock' | 'remove-pointer-temp' | 'token-check' | 'rename' | 'remove-release-dir';
38
+ export interface SessionPointerSecondaryFailure {
39
+ operation: 'precommit-cleanup' | 'lock-release';
40
+ phase: SessionPointerCleanupPhase;
41
+ ownership: 'held' | 'released' | 'uncertain';
42
+ message: string;
43
+ cause?: unknown;
44
+ evidencePath?: string;
45
+ }
46
+ export interface SessionPointerAbortBase extends Error {
47
+ name: 'SessionPointerLaunchAbort';
48
+ committed: false;
49
+ cwd: string;
50
+ candidateSessionId?: string;
51
+ canonicalSessionId?: string;
52
+ reason: string;
53
+ cause?: unknown;
54
+ }
55
+ export interface SessionPointerContextAbort extends SessionPointerAbortBase {
56
+ code: 'session_pointer_context_failure';
57
+ operation: 'pointer-context-resolve';
58
+ attemptedRootSource: AttemptedStateRootSource;
59
+ pointerPath?: never;
60
+ lockPath?: never;
61
+ rootSource?: never;
62
+ }
63
+ export interface ResolvedSessionPointerAbort extends SessionPointerAbortBase {
64
+ code: 'session_pointer_lock_timeout' | 'session_pointer_lock_recovery_required' | 'session_pointer_unusable' | 'session_pointer_owner_conflict' | 'session_pointer_io_failure';
65
+ operation: Exclude<SessionPointerTransactionOperation, 'pointer-context-resolve'>;
66
+ pointerPath: string;
67
+ lockPath?: string;
68
+ rootSource: StateRootSource;
69
+ pointerStatus?: UnusableSessionPointerStatus;
70
+ lockOwnerStatus?: 'live' | 'dead' | 'reused' | 'identity-indeterminate' | 'missing' | 'malformed';
71
+ primaryOperation?: Exclude<SessionPointerTransactionOperation, 'pointer-context-resolve' | 'precommit-cleanup' | 'lock-release'>;
72
+ secondaryFailures?: readonly SessionPointerSecondaryFailure[];
73
+ }
74
+ export type SessionPointerLaunchAbort = SessionPointerContextAbort | ResolvedSessionPointerAbort;
23
75
  /**
24
- * Reset session-scoped HUD/metrics files at launch so stale values do not leak
25
- * into a new Codex session.
26
- */
27
- export declare function resetSessionMetrics(cwd: string, sessionId?: string): Promise<void>;
28
- /**
29
- * Read current session state. Returns null if no session file exists.
76
+ * Convert arbitrary input into a valid session ID without exposing validator
77
+ * exceptions to lifecycle or hook inputs.
30
78
  */
31
- export declare function readSessionState(cwd: string): Promise<SessionState | null>;
32
- export declare function isSessionStateAuthoritativeForCwd(state: SessionState, cwd: string): boolean;
33
- export declare function isSessionStateUsable(state: SessionState, cwd: string, options?: SessionStaleCheckOptions): boolean;
34
- export declare function readUsableSessionState(cwd: string, options?: SessionStaleCheckOptions): Promise<SessionState | null>;
79
+ export declare function normalizeSessionId(value: unknown): string | undefined;
80
+ /** Resolve the one exact pointer path used by an operation. */
81
+ export declare function resolveSessionPointerContext(cwd: string): SessionPointerContext;
82
+ export declare function isSessionPointerLaunchAbort(error: unknown): error is SessionPointerLaunchAbort;
35
83
  interface LinuxProcessIdentity {
36
84
  startTicks: number;
37
85
  cmdline: string | null;
38
86
  }
39
- interface SessionStaleCheckOptions {
87
+ export interface SessionStaleCheckOptions {
40
88
  platform?: NodeJS.Platform;
41
89
  isPidAlive?: (pid: number) => boolean;
42
90
  readLinuxIdentity?: (pid: number) => LinuxProcessIdentity | null;
43
91
  }
44
- interface SessionStartOptions {
92
+ export interface SessionStartOptions {
45
93
  pid?: number;
46
94
  platform?: NodeJS.Platform;
95
+ /** @internal Scoped deterministic regular-file fsync seam. */
96
+ regularFileSync?: (platform: NodeJS.Platform) => Promise<void>;
47
97
  nativeSessionId?: string;
48
98
  previousNativeSessionId?: string;
49
99
  nativeSessionSwitchedAt?: string;
100
+ /**
101
+ * Compatibility-only metadata. Alias candidacy always comes from
102
+ * process.env.OMX_SESSION_ID, never from this option.
103
+ */
50
104
  ownerOmxSessionId?: string;
105
+ /** The caller proved the env candidate with actual tmux pane/session tags. */
106
+ ownerAliasVerified?: boolean;
51
107
  tmuxSessionName?: string;
52
108
  tmuxPaneId?: string;
109
+ context?: SessionPointerContext;
110
+ }
111
+ /** @internal Test-only deterministic transaction seam; do not use outside session tests. */
112
+ export type PidProbeResult = 'alive' | 'dead' | 'indeterminate';
113
+ /** @internal Test-only deterministic transaction seam; do not use outside session tests. */
114
+ export interface SessionPointerFsDependencies {
115
+ mkdir(path: string, options?: {
116
+ recursive?: boolean;
117
+ }): Promise<void>;
118
+ readdir(path: string): Promise<string[]>;
119
+ lstat(path: string): Promise<{
120
+ isDirectory(): boolean;
121
+ isFile(): boolean;
122
+ isSymbolicLink(): boolean;
123
+ }>;
124
+ readFile(path: string, encoding: 'utf8'): Promise<string>;
125
+ writeFile(path: string, data: string, options?: {
126
+ mode?: number;
127
+ flag?: string;
128
+ }): Promise<void>;
129
+ openAndSync(path: string, platform: NodeJS.Platform, regularFileSync?: SessionStartOptions['regularFileSync']): Promise<RegularFileSyncOutcome>;
130
+ rename(from: string, to: string): Promise<void>;
131
+ unlink(path: string): Promise<void>;
132
+ rmdir(path: string): Promise<void>;
133
+ }
134
+ export interface SessionPointerLockInspection {
135
+ status: 'absent' | 'live' | 'dead' | 'reused' | 'identity-indeterminate' | 'missing-owner' | 'malformed' | 'ambiguous' | 'unexpected' | 'symlink' | 'io-error';
136
+ lockPath: string;
137
+ evidenceSource: 'none' | 'owner.json' | 'owner-temp';
138
+ safeToRecover: boolean;
53
139
  }
140
+ export interface SessionPointerLockRecovery extends SessionPointerLockInspection {
141
+ action: 'none' | 'quarantined';
142
+ recovered: boolean;
143
+ reason: string;
144
+ quarantinePath?: string;
145
+ }
146
+ /** @internal Test-only deterministic transaction seam; do not use outside session tests. */
147
+ export interface SessionPointerTransactionDependencies {
148
+ fs: SessionPointerFsDependencies;
149
+ nowMs(): number;
150
+ sleep(ms: number): Promise<void>;
151
+ token(): string;
152
+ probePid(pid: number): PidProbeResult;
153
+ readProcessIdentity(pid: number, platform: NodeJS.Platform): {
154
+ status: 'matching' | 'reused' | 'indeterminate';
155
+ startTicks?: number;
156
+ cmdlineHash?: string;
157
+ };
158
+ }
159
+ /** @internal Exposed only so source-module tests can verify default ESRCH handling. */
160
+ export declare function __createDefaultPidProbeForTests(killZero: (pid: number) => void): (pid: number) => PidProbeResult;
161
+ /** @internal Source-module test harness. Always reset after a test. */
162
+ export declare function __setSessionPointerTransactionDependenciesForTests(overrides: Omit<Partial<SessionPointerTransactionDependencies>, 'fs'> & {
163
+ fs?: Partial<SessionPointerFsDependencies>;
164
+ }): void;
165
+ /** @internal Source-module test harness. */
166
+ export declare function __resetSessionPointerTransactionDependenciesForTests(): void;
54
167
  /**
55
- * Check if a session is stale.
56
- * - If the owning PID is dead, it is stale.
57
- * - On Linux, require process identity validation (start ticks, optional cmdline).
58
- * If identity cannot be validated, treat the session as stale.
168
+ * Legacy boolean stale check retained for read compatibility. The pointer
169
+ * classifier below keeps indeterminate liveness distinct from definitely dead.
59
170
  */
60
171
  export declare function isSessionStale(state: SessionState, options?: SessionStaleCheckOptions): boolean;
61
- /**
62
- * Write session start state.
63
- */
172
+ export declare function isSessionStateAuthoritativeForCwd(state: SessionState, cwd: string): boolean;
173
+ export declare function isSessionStateUsable(state: SessionState, cwd: string, options?: SessionStaleCheckOptions): boolean;
174
+ /** Read and classify only context.sessionPath; no alternate root is consulted. */
175
+ export declare function readSessionPointer(context: SessionPointerContext): Promise<SessionPointerReadResult>;
176
+ export declare function readSessionStateFromContext(context: SessionPointerContext): Promise<SessionState | null>;
177
+ export declare function readUsableSessionStateFromContext(context: SessionPointerContext): Promise<SessionState | null>;
178
+ /** Read current session state from the exact selected root. */
179
+ export declare function readSessionState(cwd: string): Promise<SessionState | null>;
180
+ export declare function readUsableSessionState(cwd: string, options?: SessionStaleCheckOptions): Promise<SessionState | null>;
181
+ /** Inspect only exact, regular owner evidence in the selected pointer lock. */
182
+ export declare function inspectSessionPointerLock(cwd: string): Promise<SessionPointerLockInspection>;
183
+ /** Explicitly quarantine only a dead, atomically claimed pointer lock; never force recovery. */
184
+ export declare function recoverSessionPointerLock(cwd: string): Promise<SessionPointerLockRecovery>;
185
+ /** Write or merge a wrapper-owned canonical pointer through the exact-root transaction. */
64
186
  export declare function writeSessionStart(cwd: string, sessionId: string, options?: SessionStartOptions): Promise<SessionState>;
65
187
  /**
66
- * Reconcile a native/Codex SessionStart with the canonical OMX launch session.
67
- * Same-native restarts preserve the current logical session and refresh
68
- * PID/native metadata. Native-session replacements start a fresh native-scoped
69
- * session to avoid inheriting stale task-scoped state; when the replaced session
70
- * belongs to an OMX launch wrapper, retain that wrapper as owner for later
71
- * archive/cleanup and log the replacement chain.
188
+ * Reconcile a native SessionStart without borrowing another root's pointer.
189
+ * A different native ID retains the existing OMX owner chain, but never binds a
190
+ * new owner alias during that replacement transition.
72
191
  */
73
192
  export declare function reconcileNativeSessionStart(cwd: string, nativeSessionId: string, options?: SessionStartOptions): Promise<SessionState>;
74
193
  /**
75
- * Write session end: archive to history, delete session.json.
194
+ * Archive first and remove an owned pointer only after that history write
195
+ * succeeds. Present unusable pointer evidence is never repaired or archived.
196
+ */
197
+ export declare function writeSessionEnd(cwd: string, sessionId: string, options?: Pick<SessionStartOptions, 'context' | 'platform' | 'regularFileSync'>): Promise<void>;
198
+ /** Reset session-scoped HUD/metrics files at launch. */
199
+ export declare function resetSessionMetrics(cwd: string, sessionId?: string): Promise<void>;
200
+ /**
201
+ * Append one redacted provenance rejection to the already-selected state root.
202
+ * This deliberately accepts a resolved context rather than cwd, and never falls
203
+ * back to the ambient root when that exact write fails.
76
204
  */
77
- export declare function writeSessionEnd(cwd: string, sessionId: string): Promise<void>;
205
+ export declare function appendPromptSessionProvenanceRejection(context: SessionPointerContext, descriptor: PromptDiagnosticDescriptor): Promise<void>;
78
206
  /**
79
- * Append a structured JSONL entry to the daily log file.
207
+ * Append a root log entry for callers that do not already own a pointer
208
+ * context. Lifecycle transitions use appendToLogAtContext instead.
80
209
  */
81
210
  export declare function appendToLog(cwd: string, entry: Record<string, unknown>): Promise<void>;
82
211
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/hooks/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/hooks/session.ts"],"names":[],"mappings":"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"}