oh-my-codex 0.20.2 → 0.20.5

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 (805) hide show
  1. package/Cargo.lock +36 -18
  2. package/Cargo.toml +1 -1
  3. package/README.md +28 -2
  4. package/crates/omx-runtime/Cargo.toml +4 -0
  5. package/crates/omx-runtime/src/main.rs +415 -2
  6. package/crates/omx-runtime/tests/execution.rs +483 -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__/herdr-target.test.d.ts +2 -0
  11. package/dist/adapt/__tests__/herdr-target.test.d.ts.map +1 -0
  12. package/dist/adapt/__tests__/herdr-target.test.js +72 -0
  13. package/dist/adapt/__tests__/herdr-target.test.js.map +1 -0
  14. package/dist/adapt/contracts.d.ts +1 -1
  15. package/dist/adapt/contracts.d.ts.map +1 -1
  16. package/dist/adapt/contracts.js +1 -1
  17. package/dist/adapt/contracts.js.map +1 -1
  18. package/dist/adapt/herdr/__tests__/authority.test.d.ts +2 -0
  19. package/dist/adapt/herdr/__tests__/authority.test.d.ts.map +1 -0
  20. package/dist/adapt/herdr/__tests__/authority.test.js +49 -0
  21. package/dist/adapt/herdr/__tests__/authority.test.js.map +1 -0
  22. package/dist/adapt/herdr/__tests__/bridge.test.d.ts +2 -0
  23. package/dist/adapt/herdr/__tests__/bridge.test.d.ts.map +1 -0
  24. package/dist/adapt/herdr/__tests__/bridge.test.js +176 -0
  25. package/dist/adapt/herdr/__tests__/bridge.test.js.map +1 -0
  26. package/dist/adapt/herdr/__tests__/sanitize.test.d.ts +2 -0
  27. package/dist/adapt/herdr/__tests__/sanitize.test.d.ts.map +1 -0
  28. package/dist/adapt/herdr/__tests__/sanitize.test.js +45 -0
  29. package/dist/adapt/herdr/__tests__/sanitize.test.js.map +1 -0
  30. package/dist/adapt/herdr/__tests__/semantic.test.d.ts +2 -0
  31. package/dist/adapt/herdr/__tests__/semantic.test.d.ts.map +1 -0
  32. package/dist/adapt/herdr/__tests__/semantic.test.js +130 -0
  33. package/dist/adapt/herdr/__tests__/semantic.test.js.map +1 -0
  34. package/dist/adapt/herdr/__tests__/seq-store.test.d.ts +2 -0
  35. package/dist/adapt/herdr/__tests__/seq-store.test.d.ts.map +1 -0
  36. package/dist/adapt/herdr/__tests__/seq-store.test.js +54 -0
  37. package/dist/adapt/herdr/__tests__/seq-store.test.js.map +1 -0
  38. package/dist/adapt/herdr/__tests__/socket-live.test.d.ts +2 -0
  39. package/dist/adapt/herdr/__tests__/socket-live.test.d.ts.map +1 -0
  40. package/dist/adapt/herdr/__tests__/socket-live.test.js +104 -0
  41. package/dist/adapt/herdr/__tests__/socket-live.test.js.map +1 -0
  42. package/dist/adapt/herdr/__tests__/team-map.test.d.ts +2 -0
  43. package/dist/adapt/herdr/__tests__/team-map.test.d.ts.map +1 -0
  44. package/dist/adapt/herdr/__tests__/team-map.test.js +46 -0
  45. package/dist/adapt/herdr/__tests__/team-map.test.js.map +1 -0
  46. package/dist/adapt/herdr/__tests__/transport.test.d.ts +2 -0
  47. package/dist/adapt/herdr/__tests__/transport.test.d.ts.map +1 -0
  48. package/dist/adapt/herdr/__tests__/transport.test.js +160 -0
  49. package/dist/adapt/herdr/__tests__/transport.test.js.map +1 -0
  50. package/dist/adapt/herdr/__tests__/wiring.test.d.ts +2 -0
  51. package/dist/adapt/herdr/__tests__/wiring.test.d.ts.map +1 -0
  52. package/dist/adapt/herdr/__tests__/wiring.test.js +118 -0
  53. package/dist/adapt/herdr/__tests__/wiring.test.js.map +1 -0
  54. package/dist/adapt/herdr/authority.d.ts +34 -0
  55. package/dist/adapt/herdr/authority.d.ts.map +1 -0
  56. package/dist/adapt/herdr/authority.js +71 -0
  57. package/dist/adapt/herdr/authority.js.map +1 -0
  58. package/dist/adapt/herdr/bridge.d.ts +84 -0
  59. package/dist/adapt/herdr/bridge.d.ts.map +1 -0
  60. package/dist/adapt/herdr/bridge.js +222 -0
  61. package/dist/adapt/herdr/bridge.js.map +1 -0
  62. package/dist/adapt/herdr/sanitize.d.ts +20 -0
  63. package/dist/adapt/herdr/sanitize.d.ts.map +1 -0
  64. package/dist/adapt/herdr/sanitize.js +70 -0
  65. package/dist/adapt/herdr/sanitize.js.map +1 -0
  66. package/dist/adapt/herdr/semantic.d.ts +67 -0
  67. package/dist/adapt/herdr/semantic.d.ts.map +1 -0
  68. package/dist/adapt/herdr/semantic.js +170 -0
  69. package/dist/adapt/herdr/semantic.js.map +1 -0
  70. package/dist/adapt/herdr/seq-store.d.ts +32 -0
  71. package/dist/adapt/herdr/seq-store.d.ts.map +1 -0
  72. package/dist/adapt/herdr/seq-store.js +126 -0
  73. package/dist/adapt/herdr/seq-store.js.map +1 -0
  74. package/dist/adapt/herdr/team-map.d.ts +30 -0
  75. package/dist/adapt/herdr/team-map.d.ts.map +1 -0
  76. package/dist/adapt/herdr/team-map.js +37 -0
  77. package/dist/adapt/herdr/team-map.js.map +1 -0
  78. package/dist/adapt/herdr/transport.d.ts +115 -0
  79. package/dist/adapt/herdr/transport.d.ts.map +1 -0
  80. package/dist/adapt/herdr/transport.js +260 -0
  81. package/dist/adapt/herdr/transport.js.map +1 -0
  82. package/dist/adapt/herdr/wiring.d.ts +24 -0
  83. package/dist/adapt/herdr/wiring.d.ts.map +1 -0
  84. package/dist/adapt/herdr/wiring.js +62 -0
  85. package/dist/adapt/herdr/wiring.js.map +1 -0
  86. package/dist/adapt/herdr.d.ts +19 -0
  87. package/dist/adapt/herdr.d.ts.map +1 -0
  88. package/dist/adapt/herdr.js +115 -0
  89. package/dist/adapt/herdr.js.map +1 -0
  90. package/dist/adapt/index.d.ts +4 -0
  91. package/dist/adapt/index.d.ts.map +1 -1
  92. package/dist/adapt/index.js +48 -0
  93. package/dist/adapt/index.js.map +1 -1
  94. package/dist/adapt/registry.d.ts.map +1 -1
  95. package/dist/adapt/registry.js +11 -0
  96. package/dist/adapt/registry.js.map +1 -1
  97. package/dist/agents/__tests__/definitions.test.js +81 -0
  98. package/dist/agents/__tests__/definitions.test.js.map +1 -1
  99. package/dist/agents/__tests__/native-config.test.js +25 -0
  100. package/dist/agents/__tests__/native-config.test.js.map +1 -1
  101. package/dist/agents/native-config.d.ts +2 -1
  102. package/dist/agents/native-config.d.ts.map +1 -1
  103. package/dist/agents/native-config.js.map +1 -1
  104. package/dist/auth/__tests__/hotswap.test.js +60 -1
  105. package/dist/auth/__tests__/hotswap.test.js.map +1 -1
  106. package/dist/auth/__tests__/storage.test.js +33 -1
  107. package/dist/auth/__tests__/storage.test.js.map +1 -1
  108. package/dist/auth/hotswap.d.ts +22 -2
  109. package/dist/auth/hotswap.d.ts.map +1 -1
  110. package/dist/auth/hotswap.js +107 -22
  111. package/dist/auth/hotswap.js.map +1 -1
  112. package/dist/auth/storage.js +1 -1
  113. package/dist/auth/storage.js.map +1 -1
  114. package/dist/autopilot/__tests__/ralplan-gate.test.js +86 -1333
  115. package/dist/autopilot/__tests__/ralplan-gate.test.js.map +1 -1
  116. package/dist/autopilot/ralplan-gate.d.ts.map +1 -1
  117. package/dist/autopilot/ralplan-gate.js +7 -6
  118. package/dist/autopilot/ralplan-gate.js.map +1 -1
  119. package/dist/cli/__tests__/agents-init.test.js +4 -23
  120. package/dist/cli/__tests__/agents-init.test.js.map +1 -1
  121. package/dist/cli/__tests__/api.test.js +61 -24
  122. package/dist/cli/__tests__/api.test.js.map +1 -1
  123. package/dist/cli/__tests__/auth.test.js +63 -7
  124. package/dist/cli/__tests__/auth.test.js.map +1 -1
  125. package/dist/cli/__tests__/codex-feature-probe.test.js +66 -1
  126. package/dist/cli/__tests__/codex-feature-probe.test.js.map +1 -1
  127. package/dist/cli/__tests__/codex-plugin-layout.test.js +150 -2
  128. package/dist/cli/__tests__/codex-plugin-layout.test.js.map +1 -1
  129. package/dist/cli/__tests__/detached-leader-teardown.test.d.ts +2 -0
  130. package/dist/cli/__tests__/detached-leader-teardown.test.d.ts.map +1 -0
  131. package/dist/cli/__tests__/detached-leader-teardown.test.js +473 -0
  132. package/dist/cli/__tests__/detached-leader-teardown.test.js.map +1 -0
  133. package/dist/cli/__tests__/doctor-process-identity-readiness.test.d.ts +2 -0
  134. package/dist/cli/__tests__/doctor-process-identity-readiness.test.d.ts.map +1 -0
  135. package/dist/cli/__tests__/doctor-process-identity-readiness.test.js +103 -0
  136. package/dist/cli/__tests__/doctor-process-identity-readiness.test.js.map +1 -0
  137. package/dist/cli/__tests__/doctor-state-root-binding.test.d.ts +2 -0
  138. package/dist/cli/__tests__/doctor-state-root-binding.test.d.ts.map +1 -0
  139. package/dist/cli/__tests__/doctor-state-root-binding.test.js +139 -0
  140. package/dist/cli/__tests__/doctor-state-root-binding.test.js.map +1 -0
  141. package/dist/cli/__tests__/doctor-warning-copy.test.js +135 -1
  142. package/dist/cli/__tests__/doctor-warning-copy.test.js.map +1 -1
  143. package/dist/cli/__tests__/exec.test.js +211 -0
  144. package/dist/cli/__tests__/exec.test.js.map +1 -1
  145. package/dist/cli/__tests__/index.test.js +878 -463
  146. package/dist/cli/__tests__/index.test.js.map +1 -1
  147. package/dist/cli/__tests__/launch-fallback.test.js +1290 -127
  148. package/dist/cli/__tests__/launch-fallback.test.js.map +1 -1
  149. package/dist/cli/__tests__/mcp-parity.test.js +8 -4
  150. package/dist/cli/__tests__/mcp-parity.test.js.map +1 -1
  151. package/dist/cli/__tests__/native-assets.test.js +398 -16
  152. package/dist/cli/__tests__/native-assets.test.js.map +1 -1
  153. package/dist/cli/__tests__/native-hook-claim-journal.test.js +132 -6
  154. package/dist/cli/__tests__/native-hook-claim-journal.test.js.map +1 -1
  155. package/dist/cli/__tests__/ralph-goal-mode-contract.test.js +3 -3
  156. package/dist/cli/__tests__/ralph-goal-mode-contract.test.js.map +1 -1
  157. package/dist/cli/__tests__/ralph.test.js +3 -3
  158. package/dist/cli/__tests__/ralph.test.js.map +1 -1
  159. package/dist/cli/__tests__/ralplan-bootstrap-3181.test.js +49 -164
  160. package/dist/cli/__tests__/ralplan-bootstrap-3181.test.js.map +1 -1
  161. package/dist/cli/__tests__/ralplan-child-binding-3212.test.d.ts +2 -0
  162. package/dist/cli/__tests__/ralplan-child-binding-3212.test.d.ts.map +1 -0
  163. package/dist/cli/__tests__/ralplan-child-binding-3212.test.js +56 -0
  164. package/dist/cli/__tests__/ralplan-child-binding-3212.test.js.map +1 -0
  165. package/dist/cli/__tests__/ralplan.test.js +107 -109
  166. package/dist/cli/__tests__/ralplan.test.js.map +1 -1
  167. package/dist/cli/__tests__/resume.test.js +11 -10
  168. package/dist/cli/__tests__/resume.test.js.map +1 -1
  169. package/dist/cli/__tests__/session-scoped-runtime.test.js +1118 -43
  170. package/dist/cli/__tests__/session-scoped-runtime.test.js.map +1 -1
  171. package/dist/cli/__tests__/session-search-help.test.js +25 -1
  172. package/dist/cli/__tests__/session-search-help.test.js.map +1 -1
  173. package/dist/cli/__tests__/setup-agents-overwrite.test.js +8 -55
  174. package/dist/cli/__tests__/setup-agents-overwrite.test.js.map +1 -1
  175. package/dist/cli/__tests__/setup-install-mode.test.js +224 -7
  176. package/dist/cli/__tests__/setup-install-mode.test.js.map +1 -1
  177. package/dist/cli/__tests__/sparkshell-cli.test.js +93 -41
  178. package/dist/cli/__tests__/sparkshell-cli.test.js.map +1 -1
  179. package/dist/cli/__tests__/team.test.js +150 -8
  180. package/dist/cli/__tests__/team.test.js.map +1 -1
  181. package/dist/cli/__tests__/ultragoal.test.js +117 -2
  182. package/dist/cli/__tests__/ultragoal.test.js.map +1 -1
  183. package/dist/cli/__tests__/uninstall.test.js +95 -4
  184. package/dist/cli/__tests__/uninstall.test.js.map +1 -1
  185. package/dist/cli/__tests__/update.test.js +669 -177
  186. package/dist/cli/__tests__/update.test.js.map +1 -1
  187. package/dist/cli/__tests__/windows-popup-loop-contract.test.js +33 -2
  188. package/dist/cli/__tests__/windows-popup-loop-contract.test.js.map +1 -1
  189. package/dist/cli/api.d.ts.map +1 -1
  190. package/dist/cli/api.js +9 -10
  191. package/dist/cli/api.js.map +1 -1
  192. package/dist/cli/codex-feature-probe.d.ts +16 -0
  193. package/dist/cli/codex-feature-probe.d.ts.map +1 -1
  194. package/dist/cli/codex-feature-probe.js +44 -0
  195. package/dist/cli/codex-feature-probe.js.map +1 -1
  196. package/dist/cli/codex-home.d.ts.map +1 -1
  197. package/dist/cli/codex-home.js +7 -4
  198. package/dist/cli/codex-home.js.map +1 -1
  199. package/dist/cli/doctor.d.ts +20 -0
  200. package/dist/cli/doctor.d.ts.map +1 -1
  201. package/dist/cli/doctor.js +290 -3
  202. package/dist/cli/doctor.js.map +1 -1
  203. package/dist/cli/index.d.ts +234 -12
  204. package/dist/cli/index.d.ts.map +1 -1
  205. package/dist/cli/index.js +2409 -746
  206. package/dist/cli/index.js.map +1 -1
  207. package/dist/cli/mcp-parity.js +2 -2
  208. package/dist/cli/mcp-parity.js.map +1 -1
  209. package/dist/cli/native-assets.d.ts +25 -0
  210. package/dist/cli/native-assets.d.ts.map +1 -1
  211. package/dist/cli/native-assets.js +448 -51
  212. package/dist/cli/native-assets.js.map +1 -1
  213. package/dist/cli/native-hook-claim-journal.d.ts +20 -5
  214. package/dist/cli/native-hook-claim-journal.d.ts.map +1 -1
  215. package/dist/cli/native-hook-claim-journal.js +67 -32
  216. package/dist/cli/native-hook-claim-journal.js.map +1 -1
  217. package/dist/cli/package-manager-ownership.d.ts +63 -0
  218. package/dist/cli/package-manager-ownership.d.ts.map +1 -0
  219. package/dist/cli/package-manager-ownership.js +323 -0
  220. package/dist/cli/package-manager-ownership.js.map +1 -0
  221. package/dist/cli/ralph.js +2 -2
  222. package/dist/cli/ralph.js.map +1 -1
  223. package/dist/cli/ralplan.d.ts +5 -7
  224. package/dist/cli/ralplan.d.ts.map +1 -1
  225. package/dist/cli/ralplan.js +83 -134
  226. package/dist/cli/ralplan.js.map +1 -1
  227. package/dist/cli/session-search.d.ts +5 -0
  228. package/dist/cli/session-search.d.ts.map +1 -1
  229. package/dist/cli/session-search.js +87 -0
  230. package/dist/cli/session-search.js.map +1 -1
  231. package/dist/cli/setup-preferences.d.ts +15 -0
  232. package/dist/cli/setup-preferences.d.ts.map +1 -1
  233. package/dist/cli/setup-preferences.js +27 -1
  234. package/dist/cli/setup-preferences.js.map +1 -1
  235. package/dist/cli/setup.d.ts +8 -0
  236. package/dist/cli/setup.d.ts.map +1 -1
  237. package/dist/cli/setup.js +119 -47
  238. package/dist/cli/setup.js.map +1 -1
  239. package/dist/cli/sparkshell.d.ts.map +1 -1
  240. package/dist/cli/sparkshell.js +52 -9
  241. package/dist/cli/sparkshell.js.map +1 -1
  242. package/dist/cli/ultragoal.d.ts.map +1 -1
  243. package/dist/cli/ultragoal.js +2 -2
  244. package/dist/cli/ultragoal.js.map +1 -1
  245. package/dist/cli/uninstall.d.ts +9 -0
  246. package/dist/cli/uninstall.d.ts.map +1 -1
  247. package/dist/cli/uninstall.js +71 -30
  248. package/dist/cli/uninstall.js.map +1 -1
  249. package/dist/cli/update-worker.d.ts +2 -0
  250. package/dist/cli/update-worker.d.ts.map +1 -0
  251. package/dist/cli/update-worker.js +142 -0
  252. package/dist/cli/update-worker.js.map +1 -0
  253. package/dist/cli/update.d.ts +14 -22
  254. package/dist/cli/update.d.ts.map +1 -1
  255. package/dist/cli/update.js +192 -241
  256. package/dist/cli/update.js.map +1 -1
  257. package/dist/compat/__tests__/rust-runtime-compat.test.js +1 -1
  258. package/dist/config/__tests__/generator-idempotent.test.js +503 -30
  259. package/dist/config/__tests__/generator-idempotent.test.js.map +1 -1
  260. package/dist/config/__tests__/generator-notify.test.js +5 -3
  261. package/dist/config/__tests__/generator-notify.test.js.map +1 -1
  262. package/dist/config/__tests__/models.test.js +67 -3
  263. package/dist/config/__tests__/models.test.js.map +1 -1
  264. package/dist/config/generator.d.ts +27 -21
  265. package/dist/config/generator.d.ts.map +1 -1
  266. package/dist/config/generator.js +610 -152
  267. package/dist/config/generator.js.map +1 -1
  268. package/dist/config/models.d.ts +12 -2
  269. package/dist/config/models.d.ts.map +1 -1
  270. package/dist/config/models.js +15 -1
  271. package/dist/config/models.js.map +1 -1
  272. package/dist/goal-workflows/__tests__/codex-goal-snapshot.test.js +25 -0
  273. package/dist/goal-workflows/__tests__/codex-goal-snapshot.test.js.map +1 -1
  274. package/dist/goal-workflows/codex-goal-snapshot.d.ts +1 -1
  275. package/dist/goal-workflows/codex-goal-snapshot.d.ts.map +1 -1
  276. package/dist/goal-workflows/codex-goal-snapshot.js +2 -0
  277. package/dist/goal-workflows/codex-goal-snapshot.js.map +1 -1
  278. package/dist/hooks/__tests__/agents-overlay.test.js +5 -3
  279. package/dist/hooks/__tests__/agents-overlay.test.js.map +1 -1
  280. package/dist/hooks/__tests__/autopilot-skill-contract.test.js +27 -4
  281. package/dist/hooks/__tests__/autopilot-skill-contract.test.js.map +1 -1
  282. package/dist/hooks/__tests__/issue-3293-autopilot-handoff.test.d.ts +2 -0
  283. package/dist/hooks/__tests__/issue-3293-autopilot-handoff.test.d.ts.map +1 -0
  284. package/dist/hooks/__tests__/issue-3293-autopilot-handoff.test.js +172 -0
  285. package/dist/hooks/__tests__/issue-3293-autopilot-handoff.test.js.map +1 -0
  286. package/dist/hooks/__tests__/keyword-detector.test.js +176 -37
  287. package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
  288. package/dist/hooks/__tests__/notify-fallback-watcher.test.js +402 -545
  289. package/dist/hooks/__tests__/notify-fallback-watcher.test.js.map +1 -1
  290. package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js +39 -4
  291. package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js.map +1 -1
  292. package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js +161 -26
  293. package/dist/hooks/__tests__/notify-hook-auto-nudge.test.js.map +1 -1
  294. package/dist/hooks/__tests__/notify-hook-cross-worktree-heartbeat.test.js +27 -0
  295. package/dist/hooks/__tests__/notify-hook-cross-worktree-heartbeat.test.js.map +1 -1
  296. package/dist/hooks/__tests__/notify-hook-managed-tmux.test.js +10 -118
  297. package/dist/hooks/__tests__/notify-hook-managed-tmux.test.js.map +1 -1
  298. package/dist/hooks/__tests__/notify-hook-regression-205.test.js +7 -0
  299. package/dist/hooks/__tests__/notify-hook-regression-205.test.js.map +1 -1
  300. package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js +533 -14
  301. package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js.map +1 -1
  302. package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js +159 -24
  303. package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js.map +1 -1
  304. package/dist/hooks/__tests__/notify-hook-team-tmux-guard.test.js +482 -32
  305. package/dist/hooks/__tests__/notify-hook-team-tmux-guard.test.js.map +1 -1
  306. package/dist/hooks/__tests__/notify-hook-team-worker-fail-closed.test.js +2 -1
  307. package/dist/hooks/__tests__/notify-hook-team-worker-fail-closed.test.js.map +1 -1
  308. package/dist/hooks/__tests__/notify-hook-tmux-heal.test.js +68 -1
  309. package/dist/hooks/__tests__/notify-hook-tmux-heal.test.js.map +1 -1
  310. package/dist/hooks/__tests__/notify-hook-tmux-scrollback.test.js +7 -1
  311. package/dist/hooks/__tests__/notify-hook-tmux-scrollback.test.js.map +1 -1
  312. package/dist/hooks/__tests__/notify-hook-worker-idle.test.js +44 -4
  313. package/dist/hooks/__tests__/notify-hook-worker-idle.test.js.map +1 -1
  314. package/dist/hooks/__tests__/prompt-guidance-contract.test.js +9 -0
  315. package/dist/hooks/__tests__/prompt-guidance-contract.test.js.map +1 -1
  316. package/dist/hooks/__tests__/session.test.js +3130 -365
  317. package/dist/hooks/__tests__/session.test.js.map +1 -1
  318. package/dist/hooks/agents-overlay.js +1 -1
  319. package/dist/hooks/agents-overlay.js.map +1 -1
  320. package/dist/hooks/extensibility/__tests__/dispatcher.test.js +108 -2
  321. package/dist/hooks/extensibility/__tests__/dispatcher.test.js.map +1 -1
  322. package/dist/hooks/extensibility/__tests__/sdk.test.js +151 -1
  323. package/dist/hooks/extensibility/__tests__/sdk.test.js.map +1 -1
  324. package/dist/hooks/extensibility/dispatcher.d.ts.map +1 -1
  325. package/dist/hooks/extensibility/dispatcher.js +20 -3
  326. package/dist/hooks/extensibility/dispatcher.js.map +1 -1
  327. package/dist/hooks/extensibility/plugin-runner.js +1 -0
  328. package/dist/hooks/extensibility/plugin-runner.js.map +1 -1
  329. package/dist/hooks/extensibility/runtime.d.ts.map +1 -1
  330. package/dist/hooks/extensibility/runtime.js.map +1 -1
  331. package/dist/hooks/extensibility/sdk/paths.d.ts +1 -1
  332. package/dist/hooks/extensibility/sdk/paths.d.ts.map +1 -1
  333. package/dist/hooks/extensibility/sdk/paths.js +2 -2
  334. package/dist/hooks/extensibility/sdk/paths.js.map +1 -1
  335. package/dist/hooks/extensibility/sdk/runtime-state.d.ts +1 -1
  336. package/dist/hooks/extensibility/sdk/runtime-state.d.ts.map +1 -1
  337. package/dist/hooks/extensibility/sdk/runtime-state.js +55 -15
  338. package/dist/hooks/extensibility/sdk/runtime-state.js.map +1 -1
  339. package/dist/hooks/extensibility/sdk.d.ts +1 -0
  340. package/dist/hooks/extensibility/sdk.d.ts.map +1 -1
  341. package/dist/hooks/extensibility/sdk.js +1 -1
  342. package/dist/hooks/extensibility/sdk.js.map +1 -1
  343. package/dist/hooks/extensibility/types.d.ts +7 -0
  344. package/dist/hooks/extensibility/types.d.ts.map +1 -1
  345. package/dist/hooks/keyword-detector.d.ts +10 -3
  346. package/dist/hooks/keyword-detector.d.ts.map +1 -1
  347. package/dist/hooks/keyword-detector.js +116 -20
  348. package/dist/hooks/keyword-detector.js.map +1 -1
  349. package/dist/hooks/session.d.ts +204 -14
  350. package/dist/hooks/session.d.ts.map +1 -1
  351. package/dist/hooks/session.js +1500 -223
  352. package/dist/hooks/session.js.map +1 -1
  353. package/dist/hud/__tests__/hud-tmux-injection.test.js +6 -6
  354. package/dist/hud/__tests__/hud-tmux-injection.test.js.map +1 -1
  355. package/dist/hud/__tests__/index.test.js +26 -16
  356. package/dist/hud/__tests__/index.test.js.map +1 -1
  357. package/dist/hud/__tests__/reconcile.test.js +83 -78
  358. package/dist/hud/__tests__/reconcile.test.js.map +1 -1
  359. package/dist/hud/__tests__/state.test.js +36 -31
  360. package/dist/hud/__tests__/state.test.js.map +1 -1
  361. package/dist/hud/__tests__/tmux.test.js +155 -198
  362. package/dist/hud/__tests__/tmux.test.js.map +1 -1
  363. package/dist/hud/tmux.d.ts +42 -4
  364. package/dist/hud/tmux.d.ts.map +1 -1
  365. package/dist/hud/tmux.js +1017 -139
  366. package/dist/hud/tmux.js.map +1 -1
  367. package/dist/leader/__tests__/contract.test.js +124 -37
  368. package/dist/leader/__tests__/contract.test.js.map +1 -1
  369. package/dist/leader/contract.d.ts +17 -6
  370. package/dist/leader/contract.d.ts.map +1 -1
  371. package/dist/leader/contract.js +102 -26
  372. package/dist/leader/contract.js.map +1 -1
  373. package/dist/mcp/__tests__/code-intel-server.test.js +31 -3
  374. package/dist/mcp/__tests__/code-intel-server.test.js.map +1 -1
  375. package/dist/mcp/__tests__/hermes-bridge.test.js +17 -0
  376. package/dist/mcp/__tests__/hermes-bridge.test.js.map +1 -1
  377. package/dist/mcp/__tests__/server-lifecycle.test.js +4 -4
  378. package/dist/mcp/__tests__/state-paths.test.js +735 -4
  379. package/dist/mcp/__tests__/state-paths.test.js.map +1 -1
  380. package/dist/mcp/__tests__/state-server.test.js +1 -1
  381. package/dist/mcp/__tests__/state-server.test.js.map +1 -1
  382. package/dist/mcp/__tests__/trace-server.test.js +2 -2
  383. package/dist/mcp/__tests__/trace-server.test.js.map +1 -1
  384. package/dist/mcp/__tests__/wiki-server.test.js +18 -0
  385. package/dist/mcp/__tests__/wiki-server.test.js.map +1 -1
  386. package/dist/mcp/code-intel-server.d.ts.map +1 -1
  387. package/dist/mcp/code-intel-server.js +13 -3
  388. package/dist/mcp/code-intel-server.js.map +1 -1
  389. package/dist/mcp/hermes-bridge.d.ts.map +1 -1
  390. package/dist/mcp/hermes-bridge.js +2 -2
  391. package/dist/mcp/hermes-bridge.js.map +1 -1
  392. package/dist/mcp/state-paths.d.ts +78 -4
  393. package/dist/mcp/state-paths.d.ts.map +1 -1
  394. package/dist/mcp/state-paths.js +543 -40
  395. package/dist/mcp/state-paths.js.map +1 -1
  396. package/dist/mcp/state-server.d.ts +4 -4
  397. package/dist/mcp/state-server.d.ts.map +1 -1
  398. package/dist/mcp/wiki-server.d.ts +11 -0
  399. package/dist/mcp/wiki-server.d.ts.map +1 -1
  400. package/dist/mcp/wiki-server.js +9 -2
  401. package/dist/mcp/wiki-server.js.map +1 -1
  402. package/dist/modes/__tests__/base-autopilot-gates.test.js +36 -7
  403. package/dist/modes/__tests__/base-autopilot-gates.test.js.map +1 -1
  404. package/dist/modes/__tests__/base-multi-state-compat.test.js +1 -1
  405. package/dist/modes/__tests__/base-multi-state-compat.test.js.map +1 -1
  406. package/dist/modes/__tests__/base-session-scope.test.js +17 -8
  407. package/dist/modes/__tests__/base-session-scope.test.js.map +1 -1
  408. package/dist/modes/__tests__/base-tmux-pane.test.js +4 -4
  409. package/dist/modes/__tests__/base-tmux-pane.test.js.map +1 -1
  410. package/dist/modes/base.d.ts +5 -5
  411. package/dist/modes/base.d.ts.map +1 -1
  412. package/dist/modes/base.js +76 -21
  413. package/dist/modes/base.js.map +1 -1
  414. package/dist/native-assets/archive.d.ts +17 -0
  415. package/dist/native-assets/archive.d.ts.map +1 -0
  416. package/dist/native-assets/archive.js +238 -0
  417. package/dist/native-assets/archive.js.map +1 -0
  418. package/dist/native-assets/policy.d.ts +42 -0
  419. package/dist/native-assets/policy.d.ts.map +1 -0
  420. package/dist/native-assets/policy.js +155 -0
  421. package/dist/native-assets/policy.js.map +1 -0
  422. package/dist/notifications/temp-contract.d.ts.map +1 -1
  423. package/dist/notifications/temp-contract.js +4 -0
  424. package/dist/notifications/temp-contract.js.map +1 -1
  425. package/dist/pipeline/__tests__/orchestrator.test.js +164 -42
  426. package/dist/pipeline/__tests__/orchestrator.test.js.map +1 -1
  427. package/dist/pipeline/__tests__/stages.test.js +72 -155
  428. package/dist/pipeline/__tests__/stages.test.js.map +1 -1
  429. package/dist/pipeline/orchestrator.d.ts.map +1 -1
  430. package/dist/pipeline/orchestrator.js +124 -18
  431. package/dist/pipeline/orchestrator.js.map +1 -1
  432. package/dist/pipeline/stages/ralplan.d.ts.map +1 -1
  433. package/dist/pipeline/stages/ralplan.js +36 -8
  434. package/dist/pipeline/stages/ralplan.js.map +1 -1
  435. package/dist/ralplan/__tests__/consensus-gate.test.js +73 -1316
  436. package/dist/ralplan/__tests__/consensus-gate.test.js.map +1 -1
  437. package/dist/ralplan/__tests__/documented-leader-preflight.test.d.ts +2 -0
  438. package/dist/ralplan/__tests__/documented-leader-preflight.test.d.ts.map +1 -0
  439. package/dist/ralplan/__tests__/documented-leader-preflight.test.js +335 -0
  440. package/dist/ralplan/__tests__/documented-leader-preflight.test.js.map +1 -0
  441. package/dist/ralplan/__tests__/runtime.test.js +85 -101
  442. package/dist/ralplan/__tests__/runtime.test.js.map +1 -1
  443. package/dist/ralplan/consensus-gate.d.ts +9 -1
  444. package/dist/ralplan/consensus-gate.d.ts.map +1 -1
  445. package/dist/ralplan/consensus-gate.js +82 -338
  446. package/dist/ralplan/consensus-gate.js.map +1 -1
  447. package/dist/ralplan/documented-leader-preflight.d.ts +41 -0
  448. package/dist/ralplan/documented-leader-preflight.d.ts.map +1 -0
  449. package/dist/ralplan/documented-leader-preflight.js +360 -0
  450. package/dist/ralplan/documented-leader-preflight.js.map +1 -0
  451. package/dist/ralplan/runtime.d.ts +2 -1
  452. package/dist/ralplan/runtime.d.ts.map +1 -1
  453. package/dist/ralplan/runtime.js +67 -168
  454. package/dist/ralplan/runtime.js.map +1 -1
  455. package/dist/runtime/__tests__/bridge.test.js +42 -1
  456. package/dist/runtime/__tests__/bridge.test.js.map +1 -1
  457. package/dist/runtime/bridge.d.ts +12 -0
  458. package/dist/runtime/bridge.d.ts.map +1 -1
  459. package/dist/runtime/bridge.js +52 -1
  460. package/dist/runtime/bridge.js.map +1 -1
  461. package/dist/runtime/run-state.d.ts +5 -1
  462. package/dist/runtime/run-state.d.ts.map +1 -1
  463. package/dist/runtime/run-state.js +15 -8
  464. package/dist/runtime/run-state.js.map +1 -1
  465. package/dist/scripts/__tests__/codex-native-hook.test.js +16323 -8978
  466. package/dist/scripts/__tests__/codex-native-hook.test.js.map +1 -1
  467. package/dist/scripts/__tests__/issue-3293-callsite-parity.test.d.ts +2 -0
  468. package/dist/scripts/__tests__/issue-3293-callsite-parity.test.d.ts.map +1 -0
  469. package/dist/scripts/__tests__/issue-3293-callsite-parity.test.js +225 -0
  470. package/dist/scripts/__tests__/issue-3293-callsite-parity.test.js.map +1 -0
  471. package/dist/scripts/__tests__/issue-3293-cancel-transaction.test.d.ts +2 -0
  472. package/dist/scripts/__tests__/issue-3293-cancel-transaction.test.d.ts.map +1 -0
  473. package/dist/scripts/__tests__/issue-3293-cancel-transaction.test.js +188 -0
  474. package/dist/scripts/__tests__/issue-3293-cancel-transaction.test.js.map +1 -0
  475. package/dist/scripts/__tests__/issue-3293-hook-owned-cancel.test.d.ts +2 -0
  476. package/dist/scripts/__tests__/issue-3293-hook-owned-cancel.test.d.ts.map +1 -0
  477. package/dist/scripts/__tests__/issue-3293-hook-owned-cancel.test.js +259 -0
  478. package/dist/scripts/__tests__/issue-3293-hook-owned-cancel.test.js.map +1 -0
  479. package/dist/scripts/__tests__/issue-3311-ultragoal-native-outside-tmux.test.d.ts +2 -0
  480. package/dist/scripts/__tests__/issue-3311-ultragoal-native-outside-tmux.test.d.ts.map +1 -0
  481. package/dist/scripts/__tests__/issue-3311-ultragoal-native-outside-tmux.test.js +491 -0
  482. package/dist/scripts/__tests__/issue-3311-ultragoal-native-outside-tmux.test.js.map +1 -0
  483. package/dist/scripts/__tests__/issue-3358-ultragoal-cancel-lifecycle.test.d.ts +2 -0
  484. package/dist/scripts/__tests__/issue-3358-ultragoal-cancel-lifecycle.test.d.ts.map +1 -0
  485. package/dist/scripts/__tests__/issue-3358-ultragoal-cancel-lifecycle.test.js +708 -0
  486. package/dist/scripts/__tests__/issue-3358-ultragoal-cancel-lifecycle.test.js.map +1 -0
  487. package/dist/scripts/__tests__/issue-3369-autopilot-ralplan-state-machine.test.d.ts +2 -0
  488. package/dist/scripts/__tests__/issue-3369-autopilot-ralplan-state-machine.test.d.ts.map +1 -0
  489. package/dist/scripts/__tests__/issue-3369-autopilot-ralplan-state-machine.test.js +208 -0
  490. package/dist/scripts/__tests__/issue-3369-autopilot-ralplan-state-machine.test.js.map +1 -0
  491. package/dist/scripts/__tests__/notify-state-io.test.js +26 -0
  492. package/dist/scripts/__tests__/notify-state-io.test.js.map +1 -1
  493. package/dist/scripts/__tests__/notify-tmux-injection.test.js +23 -1
  494. package/dist/scripts/__tests__/notify-tmux-injection.test.js.map +1 -1
  495. package/dist/scripts/__tests__/postinstall.test.js +19 -1
  496. package/dist/scripts/__tests__/postinstall.test.js.map +1 -1
  497. package/dist/scripts/__tests__/reasoning-artifact-contract.test.d.ts +2 -0
  498. package/dist/scripts/__tests__/reasoning-artifact-contract.test.d.ts.map +1 -0
  499. package/dist/scripts/__tests__/reasoning-artifact-contract.test.js +108 -0
  500. package/dist/scripts/__tests__/reasoning-artifact-contract.test.js.map +1 -0
  501. package/dist/scripts/__tests__/role-intent-bootstrap-e2e-3181.test.js +63 -173
  502. package/dist/scripts/__tests__/role-intent-bootstrap-e2e-3181.test.js.map +1 -1
  503. package/dist/scripts/__tests__/role-intent-durable-recovery-3181.test.js +74 -159
  504. package/dist/scripts/__tests__/role-intent-durable-recovery-3181.test.js.map +1 -1
  505. package/dist/scripts/__tests__/smoke-packed-install.test.js +404 -13
  506. package/dist/scripts/__tests__/smoke-packed-install.test.js.map +1 -1
  507. package/dist/scripts/__tests__/verify-native-release-assets.test.d.ts +2 -0
  508. package/dist/scripts/__tests__/verify-native-release-assets.test.d.ts.map +1 -0
  509. package/dist/scripts/__tests__/verify-native-release-assets.test.js +235 -0
  510. package/dist/scripts/__tests__/verify-native-release-assets.test.js.map +1 -0
  511. package/dist/scripts/codex-native-hook.d.ts +53 -1
  512. package/dist/scripts/codex-native-hook.d.ts.map +1 -1
  513. package/dist/scripts/codex-native-hook.js +14448 -1480
  514. package/dist/scripts/codex-native-hook.js.map +1 -1
  515. package/dist/scripts/codex-native-pre-post.d.ts +9 -0
  516. package/dist/scripts/codex-native-pre-post.d.ts.map +1 -1
  517. package/dist/scripts/codex-native-pre-post.js +35 -12
  518. package/dist/scripts/codex-native-pre-post.js.map +1 -1
  519. package/dist/scripts/generate-native-release-manifest.js +80 -51
  520. package/dist/scripts/generate-native-release-manifest.js.map +1 -1
  521. package/dist/scripts/notify-fallback-watcher.js +78 -115
  522. package/dist/scripts/notify-fallback-watcher.js.map +1 -1
  523. package/dist/scripts/notify-hook/auto-nudge.d.ts.map +1 -1
  524. package/dist/scripts/notify-hook/auto-nudge.js +74 -3
  525. package/dist/scripts/notify-hook/auto-nudge.js.map +1 -1
  526. package/dist/scripts/notify-hook/state-io.d.ts.map +1 -1
  527. package/dist/scripts/notify-hook/state-io.js +5 -0
  528. package/dist/scripts/notify-hook/state-io.js.map +1 -1
  529. package/dist/scripts/notify-hook/team-dispatch.d.ts +9 -0
  530. package/dist/scripts/notify-hook/team-dispatch.d.ts.map +1 -1
  531. package/dist/scripts/notify-hook/team-dispatch.js +234 -79
  532. package/dist/scripts/notify-hook/team-dispatch.js.map +1 -1
  533. package/dist/scripts/notify-hook/team-leader-nudge.d.ts.map +1 -1
  534. package/dist/scripts/notify-hook/team-leader-nudge.js +71 -16
  535. package/dist/scripts/notify-hook/team-leader-nudge.js.map +1 -1
  536. package/dist/scripts/notify-hook/team-tmux-guard.d.ts +12 -4
  537. package/dist/scripts/notify-hook/team-tmux-guard.d.ts.map +1 -1
  538. package/dist/scripts/notify-hook/team-tmux-guard.js +365 -44
  539. package/dist/scripts/notify-hook/team-tmux-guard.js.map +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 +42 -21
  542. package/dist/scripts/notify-hook/team-worker-stop.js.map +1 -1
  543. package/dist/scripts/notify-hook/team-worker.d.ts +3 -0
  544. package/dist/scripts/notify-hook/team-worker.d.ts.map +1 -1
  545. package/dist/scripts/notify-hook/team-worker.js +82 -33
  546. package/dist/scripts/notify-hook/team-worker.js.map +1 -1
  547. package/dist/scripts/notify-hook/tmux-injection.d.ts +1 -0
  548. package/dist/scripts/notify-hook/tmux-injection.d.ts.map +1 -1
  549. package/dist/scripts/notify-hook/tmux-injection.js +32 -3
  550. package/dist/scripts/notify-hook/tmux-injection.js.map +1 -1
  551. package/dist/scripts/notify-hook.js +79 -82
  552. package/dist/scripts/notify-hook.js.map +1 -1
  553. package/dist/scripts/postinstall-advisory.d.ts +14 -0
  554. package/dist/scripts/postinstall-advisory.d.ts.map +1 -0
  555. package/dist/scripts/postinstall-advisory.js +49 -0
  556. package/dist/scripts/postinstall-advisory.js.map +1 -0
  557. package/dist/scripts/postinstall.d.ts +1 -1
  558. package/dist/scripts/postinstall.d.ts.map +1 -1
  559. package/dist/scripts/postinstall.js +1 -1
  560. package/dist/scripts/postinstall.js.map +1 -1
  561. package/dist/scripts/smoke-packed-install.d.ts +80 -4
  562. package/dist/scripts/smoke-packed-install.d.ts.map +1 -1
  563. package/dist/scripts/smoke-packed-install.js +3162 -26
  564. package/dist/scripts/smoke-packed-install.js.map +1 -1
  565. package/dist/scripts/sync-plugin-mirror.d.ts.map +1 -1
  566. package/dist/scripts/sync-plugin-mirror.js +16 -1
  567. package/dist/scripts/sync-plugin-mirror.js.map +1 -1
  568. package/dist/scripts/verify-native-release-assets.js +37 -23
  569. package/dist/scripts/verify-native-release-assets.js.map +1 -1
  570. package/dist/state/__tests__/mode-state-context.test.js +61 -0
  571. package/dist/state/__tests__/mode-state-context.test.js.map +1 -1
  572. package/dist/state/__tests__/operations.test.js +462 -850
  573. package/dist/state/__tests__/operations.test.js.map +1 -1
  574. package/dist/state/__tests__/skill-active.test.js +400 -2
  575. package/dist/state/__tests__/skill-active.test.js.map +1 -1
  576. package/dist/state/mode-state-context.d.ts +8 -0
  577. package/dist/state/mode-state-context.d.ts.map +1 -1
  578. package/dist/state/mode-state-context.js +73 -0
  579. package/dist/state/mode-state-context.js.map +1 -1
  580. package/dist/state/operations.d.ts +3 -0
  581. package/dist/state/operations.d.ts.map +1 -1
  582. package/dist/state/operations.js +144 -40
  583. package/dist/state/operations.js.map +1 -1
  584. package/dist/state/skill-active.d.ts +18 -1
  585. package/dist/state/skill-active.d.ts.map +1 -1
  586. package/dist/state/skill-active.js +420 -23
  587. package/dist/state/skill-active.js.map +1 -1
  588. package/dist/state/workflow-transition-reconcile.d.ts +3 -0
  589. package/dist/state/workflow-transition-reconcile.d.ts.map +1 -1
  590. package/dist/state/workflow-transition-reconcile.js +10 -4
  591. package/dist/state/workflow-transition-reconcile.js.map +1 -1
  592. package/dist/state/workflow-transition.d.ts.map +1 -1
  593. package/dist/state/workflow-transition.js +3 -1
  594. package/dist/state/workflow-transition.js.map +1 -1
  595. package/dist/subagents/__tests__/leader-bootstrap-3181.test.js +53 -247
  596. package/dist/subagents/__tests__/leader-bootstrap-3181.test.js.map +1 -1
  597. package/dist/subagents/__tests__/tracker.test.js +837 -1048
  598. package/dist/subagents/__tests__/tracker.test.js.map +1 -1
  599. package/dist/subagents/tracker.d.ts +58 -135
  600. package/dist/subagents/tracker.d.ts.map +1 -1
  601. package/dist/subagents/tracker.js +811 -632
  602. package/dist/subagents/tracker.js.map +1 -1
  603. package/dist/team/__tests__/api-interop.test.js +91 -1
  604. package/dist/team/__tests__/api-interop.test.js.map +1 -1
  605. package/dist/team/__tests__/delivery-e2e-smoke.test.js +58 -17
  606. package/dist/team/__tests__/delivery-e2e-smoke.test.js.map +1 -1
  607. package/dist/team/__tests__/idle-nudge.test.js +45 -15
  608. package/dist/team/__tests__/idle-nudge.test.js.map +1 -1
  609. package/dist/team/__tests__/mcp-comm.test.js +197 -30
  610. package/dist/team/__tests__/mcp-comm.test.js.map +1 -1
  611. package/dist/team/__tests__/model-contract.test.js +110 -3
  612. package/dist/team/__tests__/model-contract.test.js.map +1 -1
  613. package/dist/team/__tests__/notice-ledger.test.d.ts +2 -0
  614. package/dist/team/__tests__/notice-ledger.test.d.ts.map +1 -0
  615. package/dist/team/__tests__/notice-ledger.test.js +131 -0
  616. package/dist/team/__tests__/notice-ledger.test.js.map +1 -0
  617. package/dist/team/__tests__/pane-teardown-residue-e2e.test.d.ts +2 -0
  618. package/dist/team/__tests__/pane-teardown-residue-e2e.test.d.ts.map +1 -0
  619. package/dist/team/__tests__/pane-teardown-residue-e2e.test.js +410 -0
  620. package/dist/team/__tests__/pane-teardown-residue-e2e.test.js.map +1 -0
  621. package/dist/team/__tests__/phase-controller.test.js +20 -0
  622. package/dist/team/__tests__/phase-controller.test.js.map +1 -1
  623. package/dist/team/__tests__/runtime-cli.test.js +9 -0
  624. package/dist/team/__tests__/runtime-cli.test.js.map +1 -1
  625. package/dist/team/__tests__/runtime.test.js +3963 -428
  626. package/dist/team/__tests__/runtime.test.js.map +1 -1
  627. package/dist/team/__tests__/scaling.test.js +2405 -203
  628. package/dist/team/__tests__/scaling.test.js.map +1 -1
  629. package/dist/team/__tests__/state-root.test.js +117 -2
  630. package/dist/team/__tests__/state-root.test.js.map +1 -1
  631. package/dist/team/__tests__/state.test.js +804 -36
  632. package/dist/team/__tests__/state.test.js.map +1 -1
  633. package/dist/team/__tests__/team-ops-contract.test.js +6 -0
  634. package/dist/team/__tests__/team-ops-contract.test.js.map +1 -1
  635. package/dist/team/__tests__/tmux-session.test.js +4099 -1039
  636. package/dist/team/__tests__/tmux-session.test.js.map +1 -1
  637. package/dist/team/__tests__/tmux-source-authority-realtmux.test.d.ts +2 -0
  638. package/dist/team/__tests__/tmux-source-authority-realtmux.test.d.ts.map +1 -0
  639. package/dist/team/__tests__/tmux-source-authority-realtmux.test.js +149 -0
  640. package/dist/team/__tests__/tmux-source-authority-realtmux.test.js.map +1 -0
  641. package/dist/team/__tests__/tmux-test-fixture.d.ts +69 -0
  642. package/dist/team/__tests__/tmux-test-fixture.d.ts.map +1 -1
  643. package/dist/team/__tests__/tmux-test-fixture.js +242 -15
  644. package/dist/team/__tests__/tmux-test-fixture.js.map +1 -1
  645. package/dist/team/__tests__/tmux-test-fixture.test.js +177 -1
  646. package/dist/team/__tests__/tmux-test-fixture.test.js.map +1 -1
  647. package/dist/team/__tests__/worker-runtime-identity.test.js +53 -44
  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.map +1 -1
  652. package/dist/team/api-interop.js +15 -9
  653. package/dist/team/api-interop.js.map +1 -1
  654. package/dist/team/exact-pane.d.ts +23 -0
  655. package/dist/team/exact-pane.d.ts.map +1 -0
  656. package/dist/team/exact-pane.js +133 -0
  657. package/dist/team/exact-pane.js.map +1 -0
  658. package/dist/team/idle-nudge.d.ts +12 -1
  659. package/dist/team/idle-nudge.d.ts.map +1 -1
  660. package/dist/team/idle-nudge.js +41 -14
  661. package/dist/team/idle-nudge.js.map +1 -1
  662. package/dist/team/model-contract.d.ts +2 -5
  663. package/dist/team/model-contract.d.ts.map +1 -1
  664. package/dist/team/model-contract.js +59 -17
  665. package/dist/team/model-contract.js.map +1 -1
  666. package/dist/team/notice-ledger.d.ts +54 -0
  667. package/dist/team/notice-ledger.d.ts.map +1 -0
  668. package/dist/team/notice-ledger.js +259 -0
  669. package/dist/team/notice-ledger.js.map +1 -0
  670. package/dist/team/phase-controller.d.ts.map +1 -1
  671. package/dist/team/phase-controller.js +2 -0
  672. package/dist/team/phase-controller.js.map +1 -1
  673. package/dist/team/runtime.d.ts +4 -1
  674. package/dist/team/runtime.d.ts.map +1 -1
  675. package/dist/team/runtime.js +1527 -291
  676. package/dist/team/runtime.js.map +1 -1
  677. package/dist/team/scaling.d.ts +13 -1
  678. package/dist/team/scaling.d.ts.map +1 -1
  679. package/dist/team/scaling.js +1503 -387
  680. package/dist/team/scaling.js.map +1 -1
  681. package/dist/team/state/dispatch.d.ts.map +1 -1
  682. package/dist/team/state/dispatch.js +26 -8
  683. package/dist/team/state/dispatch.js.map +1 -1
  684. package/dist/team/state/locks.d.ts.map +1 -1
  685. package/dist/team/state/locks.js +61 -13
  686. package/dist/team/state/locks.js.map +1 -1
  687. package/dist/team/state/monitor.d.ts +10 -0
  688. package/dist/team/state/monitor.d.ts.map +1 -1
  689. package/dist/team/state/monitor.js +13 -0
  690. package/dist/team/state/monitor.js.map +1 -1
  691. package/dist/team/state/tasks.d.ts.map +1 -1
  692. package/dist/team/state/tasks.js +4 -3
  693. package/dist/team/state/tasks.js.map +1 -1
  694. package/dist/team/state/types.d.ts +15 -0
  695. package/dist/team/state/types.d.ts.map +1 -1
  696. package/dist/team/state/types.js.map +1 -1
  697. package/dist/team/state-root.d.ts +12 -0
  698. package/dist/team/state-root.d.ts.map +1 -1
  699. package/dist/team/state-root.js +177 -0
  700. package/dist/team/state-root.js.map +1 -1
  701. package/dist/team/state.d.ts +85 -1
  702. package/dist/team/state.d.ts.map +1 -1
  703. package/dist/team/state.js +672 -129
  704. package/dist/team/state.js.map +1 -1
  705. package/dist/team/team-ops.d.ts +5 -0
  706. package/dist/team/team-ops.d.ts.map +1 -1
  707. package/dist/team/team-ops.js +4 -0
  708. package/dist/team/team-ops.js.map +1 -1
  709. package/dist/team/tmux-session.d.ts +163 -27
  710. package/dist/team/tmux-session.d.ts.map +1 -1
  711. package/dist/team/tmux-session.js +1682 -376
  712. package/dist/team/tmux-session.js.map +1 -1
  713. package/dist/team/worktree.d.ts.map +1 -1
  714. package/dist/team/worktree.js +4 -0
  715. package/dist/team/worktree.js.map +1 -1
  716. package/dist/ultragoal/__tests__/artifacts.test.js +950 -2
  717. package/dist/ultragoal/__tests__/artifacts.test.js.map +1 -1
  718. package/dist/ultragoal/__tests__/docs-contract.test.js +1 -0
  719. package/dist/ultragoal/__tests__/docs-contract.test.js.map +1 -1
  720. package/dist/ultragoal/artifacts.d.ts +35 -1
  721. package/dist/ultragoal/artifacts.d.ts.map +1 -1
  722. package/dist/ultragoal/artifacts.js +232 -46
  723. package/dist/ultragoal/artifacts.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 +114 -0
  727. package/dist/utils/__tests__/file-durability.test.js.map +1 -0
  728. package/dist/utils/__tests__/paths.test.js +21 -1
  729. package/dist/utils/__tests__/paths.test.js.map +1 -1
  730. package/dist/utils/file-durability.d.ts +25 -0
  731. package/dist/utils/file-durability.d.ts.map +1 -0
  732. package/dist/utils/file-durability.js +67 -0
  733. package/dist/utils/file-durability.js.map +1 -0
  734. package/dist/utils/paths.d.ts.map +1 -1
  735. package/dist/utils/paths.js +14 -6
  736. package/dist/utils/paths.js.map +1 -1
  737. package/dist/verification/__tests__/ci-rust-gates.test.js +49 -4
  738. package/dist/verification/__tests__/ci-rust-gates.test.js.map +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/__tests__/explore-harness-release-workflow.test.js +60 -0
  742. package/dist/verification/__tests__/explore-harness-release-workflow.test.js.map +1 -1
  743. package/dist/verification/__tests__/native-release-manifest.test.js +157 -4
  744. package/dist/verification/__tests__/native-release-manifest.test.js.map +1 -1
  745. package/dist/wiki/lint.d.ts +4 -1
  746. package/dist/wiki/lint.d.ts.map +1 -1
  747. package/dist/wiki/lint.js +3 -2
  748. package/dist/wiki/lint.js.map +1 -1
  749. package/package.json +13 -5
  750. package/plugins/oh-my-codex/.codex-plugin/plugin.json +1 -1
  751. package/plugins/oh-my-codex/hooks/codex-native-hook.mjs +105 -17
  752. package/plugins/oh-my-codex/skills/autopilot/SKILL.md +13 -5
  753. package/plugins/oh-my-codex/skills/cancel/SKILL.md +30 -85
  754. package/plugins/oh-my-codex/skills/ralph/SKILL.md +6 -4
  755. package/plugins/oh-my-codex/skills/ralplan/SKILL.md +16 -17
  756. package/plugins/oh-my-codex/skills/team/SKILL.md +13 -9
  757. package/plugins/oh-my-codex/skills/ultragoal/SKILL.md +3 -2
  758. package/skills/autopilot/SKILL.md +13 -5
  759. package/skills/cancel/SKILL.md +30 -85
  760. package/skills/ralph/SKILL.md +6 -4
  761. package/skills/ralplan/SKILL.md +16 -17
  762. package/skills/team/SKILL.md +13 -9
  763. package/skills/ultragoal/SKILL.md +3 -2
  764. package/src/scripts/__tests__/codex-native-hook.test.ts +8831 -951
  765. package/src/scripts/__tests__/issue-3293-callsite-parity.test.ts +187 -0
  766. package/src/scripts/__tests__/issue-3293-cancel-transaction.test.ts +189 -0
  767. package/src/scripts/__tests__/issue-3293-hook-owned-cancel.test.ts +187 -0
  768. package/src/scripts/__tests__/issue-3311-ultragoal-native-outside-tmux.test.ts +591 -0
  769. package/src/scripts/__tests__/issue-3358-ultragoal-cancel-lifecycle.test.ts +701 -0
  770. package/src/scripts/__tests__/issue-3369-autopilot-ralplan-state-machine.test.ts +211 -0
  771. package/src/scripts/__tests__/notify-state-io.test.ts +29 -0
  772. package/src/scripts/__tests__/notify-tmux-injection.test.ts +26 -1
  773. package/src/scripts/__tests__/postinstall.test.ts +23 -1
  774. package/src/scripts/__tests__/reasoning-artifact-contract.test.ts +129 -0
  775. package/src/scripts/__tests__/role-intent-bootstrap-e2e-3181.test.ts +67 -185
  776. package/src/scripts/__tests__/role-intent-durable-recovery-3181.test.ts +79 -178
  777. package/src/scripts/__tests__/smoke-packed-install.test.ts +525 -16
  778. package/src/scripts/__tests__/verify-native-release-assets.test.ts +240 -0
  779. package/src/scripts/codex-native-hook.ts +14238 -1429
  780. package/src/scripts/codex-native-pre-post.ts +43 -12
  781. package/src/scripts/generate-native-release-manifest.ts +83 -79
  782. package/src/scripts/notify-fallback-watcher.ts +91 -122
  783. package/src/scripts/notify-hook/auto-nudge.ts +71 -3
  784. package/src/scripts/notify-hook/state-io.ts +11 -0
  785. package/src/scripts/notify-hook/team-dispatch.ts +242 -75
  786. package/src/scripts/notify-hook/team-leader-nudge.ts +72 -22
  787. package/src/scripts/notify-hook/team-tmux-guard.ts +366 -39
  788. package/src/scripts/notify-hook/team-worker-stop.ts +43 -20
  789. package/src/scripts/notify-hook/team-worker.ts +82 -31
  790. package/src/scripts/notify-hook/tmux-injection.ts +33 -3
  791. package/src/scripts/notify-hook.ts +84 -82
  792. package/src/scripts/postinstall-advisory.ts +67 -0
  793. package/src/scripts/postinstall.ts +1 -1
  794. package/src/scripts/smoke-packed-install.ts +3608 -39
  795. package/src/scripts/sync-plugin-mirror.ts +17 -1
  796. package/src/scripts/verify-native-release-assets.ts +39 -31
  797. package/templates/AGENTS.md +1 -0
  798. package/dist/subagents/__tests__/adapted-role-binding.test.d.ts +0 -2
  799. package/dist/subagents/__tests__/adapted-role-binding.test.d.ts.map +0 -1
  800. package/dist/subagents/__tests__/adapted-role-binding.test.js +0 -988
  801. package/dist/subagents/__tests__/adapted-role-binding.test.js.map +0 -1
  802. package/dist/subagents/adapted-role-binding.d.ts +0 -17
  803. package/dist/subagents/adapted-role-binding.d.ts.map +0 -1
  804. package/dist/subagents/adapted-role-binding.js +0 -75
  805. package/dist/subagents/adapted-role-binding.js.map +0 -1
@@ -1,11 +1,24 @@
1
+ import { randomBytes } from 'crypto';
1
2
  import { existsSync } from 'fs';
2
- import { mkdir, readFile, readdir, unlink, writeFile } from 'fs/promises';
3
- import { dirname, join } from 'path';
3
+ import { mkdir, readFile, readdir, rename, rm, rmdir, stat, unlink, writeFile } from 'fs/promises';
4
+ import { basename, dirname, join } from 'path';
4
5
  import { getBaseStateDir } from '../mcp/state-paths.js';
5
6
  import { isTerminalRunOutcome, normalizeRunOutcome, normalizeTerminalLifecycleOutcome } from '../runtime/run-outcome.js';
6
7
  import { assertWorkflowTransitionAllowed, isTrackedWorkflowMode, pickPrimaryWorkflowMode, } from './workflow-transition.js';
8
+ import { readNeutralizedRoutingOverlay } from '../ralplan/documented-leader-preflight.js';
7
9
  export const SKILL_ACTIVE_STATE_MODE = 'skill-active';
8
10
  export const SKILL_ACTIVE_STATE_FILE = `${SKILL_ACTIVE_STATE_MODE}-state.json`;
11
+ const ROOT_SKILL_ACTIVE_LOCK_TIMEOUT_MS = 2_000;
12
+ const ROOT_SKILL_ACTIVE_LOCK_RETRY_MS = 10;
13
+ const ROOT_SKILL_ACTIVE_LOCK_STALE_MS = 10_000;
14
+ export class SkillActiveStateWriteError extends Error {
15
+ code;
16
+ constructor(code, message, options) {
17
+ super(message, options);
18
+ this.name = 'SkillActiveStateWriteError';
19
+ this.code = code;
20
+ }
21
+ }
9
22
  export const CANONICAL_WORKFLOW_SKILLS = [
10
23
  'autopilot',
11
24
  'autoresearch',
@@ -186,6 +199,20 @@ export function listTransitionActiveSkills(raw, sessionId) {
186
199
  }
187
200
  return entries.filter((entry) => safeString(entry.session_id).trim().length === 0);
188
201
  }
202
+ /**
203
+ * Matches an active-skill entry to a normalized session id for
204
+ * deactivation/clear purposes. An entry matches when:
205
+ * - its `session_id` equals the normalized session id (normal path), OR
206
+ * - its `session_id` is empty AND its `owner_codex_session_id` equals the
207
+ * normalized session id (unscoped root entry owned by the session).
208
+ * This prevents stale root-scoped entries from surviving a mode clear (#3451-A).
209
+ */
210
+ function entryMatchesSessionOrOwner(entry, normalizedSessionId) {
211
+ if (safeString(entry.session_id).trim() === normalizedSessionId)
212
+ return true;
213
+ return safeString(entry.session_id).trim().length === 0
214
+ && safeString(entry.owner_codex_session_id).trim() === normalizedSessionId;
215
+ }
189
216
  /** Owner metadata for read-only provenance preflight; never infers ownership from storage. */
190
217
  export function listSkillActiveOwnerCodexSessionIds(raw) {
191
218
  if (!raw || typeof raw !== 'object')
@@ -238,34 +265,391 @@ export function getSkillActiveStatePathsForStateDir(stateDir, sessionId) {
238
265
  }
239
266
  export async function readSkillActiveState(path) {
240
267
  try {
241
- return normalizeSkillActiveState(JSON.parse(await readFile(path, 'utf-8')));
268
+ const canonical = JSON.parse(await readFile(path, 'utf-8'));
269
+ const overlay = await readNeutralizedRoutingOverlay(path, 'skill');
270
+ return normalizeSkillActiveState(overlay ?? canonical);
242
271
  }
243
272
  catch {
244
273
  return null;
245
274
  }
246
275
  }
276
+ async function readRootStateForWrite(rootPath) {
277
+ let raw;
278
+ try {
279
+ raw = await readFile(rootPath, 'utf-8');
280
+ }
281
+ catch (error) {
282
+ if (error.code === 'ENOENT')
283
+ return null;
284
+ throw new SkillActiveStateWriteError('malformed-root', `unreadable root skill-active state: ${rootPath}`, { cause: error });
285
+ }
286
+ let parsed;
287
+ try {
288
+ parsed = JSON.parse(raw);
289
+ }
290
+ catch (error) {
291
+ throw new SkillActiveStateWriteError('malformed-root', `malformed root skill-active state: ${rootPath}`, { cause: error });
292
+ }
293
+ if (!parsed || typeof parsed !== 'object') {
294
+ throw new SkillActiveStateWriteError('malformed-root', `malformed root skill-active state: ${rootPath}`);
295
+ }
296
+ return normalizeSkillActiveState(parsed) ?? parsed;
297
+ }
298
+ function lockOwnerPath(lockPath, token) {
299
+ return join(lockPath, token ? `owner-${token}` : 'owner');
300
+ }
301
+ async function inspectLockOwner(lockPath) {
302
+ try {
303
+ const entries = await readdir(lockPath);
304
+ const ownerEntries = entries.filter((entry) => entry === 'owner' || entry.startsWith('owner-'));
305
+ const knownOwnerlessEntries = entries.filter((entry) => entry.startsWith('pending-') || entry.startsWith('released-'));
306
+ if (ownerEntries.length === 0) {
307
+ if (entries.length === 0)
308
+ return { kind: 'ownerless' };
309
+ if (entries.length === 1 && knownOwnerlessEntries.length === 1) {
310
+ const entry = knownOwnerlessEntries[0];
311
+ const expectedToken = entry.slice(entry.indexOf('-') + 1);
312
+ const content = (await readFile(join(lockPath, entry), 'utf-8')).trim();
313
+ return content === expectedToken ? { kind: 'ownerless' } : { kind: 'ambiguous' };
314
+ }
315
+ return { kind: 'ambiguous' };
316
+ }
317
+ if (ownerEntries.length !== 1 || entries.length !== 1)
318
+ return { kind: 'ambiguous' };
319
+ const ownerName = ownerEntries[0];
320
+ const owner = (await readFile(join(lockPath, ownerName), 'utf-8')).trim();
321
+ if (!owner)
322
+ return { kind: 'ambiguous' };
323
+ if (ownerName === 'owner' || ownerName.slice('owner-'.length) === owner) {
324
+ return { kind: 'valid', token: owner };
325
+ }
326
+ return { kind: 'ambiguous' };
327
+ }
328
+ catch {
329
+ return { kind: 'ambiguous' };
330
+ }
331
+ }
332
+ async function readLockOwner(lockPath) {
333
+ const metadata = await inspectLockOwner(lockPath);
334
+ return metadata.kind === 'valid' ? metadata.token : null;
335
+ }
336
+ async function assertRootSkillActiveLockOwner(lock) {
337
+ if (await readLockOwner(lock.path) !== lock.token) {
338
+ throw new SkillActiveStateWriteError('lock-lost', `root skill-active lock ownership was lost: ${lock.path}`);
339
+ }
340
+ }
341
+ function ownerProcessIsDead(token) {
342
+ const pid = Number.parseInt(token.split('-', 1)[0] ?? '', 10);
343
+ if (!Number.isInteger(pid) || pid <= 0)
344
+ return false;
345
+ try {
346
+ process.kill(pid, 0);
347
+ return false;
348
+ }
349
+ catch (error) {
350
+ return error.code === 'ESRCH';
351
+ }
352
+ }
353
+ function lockPendingPath(lockPath, token) {
354
+ return join(lockPath, `pending-${token}`);
355
+ }
356
+ function lockReleasedPath(lockPath, token) {
357
+ return `${lockPath}.released-${token}`;
358
+ }
359
+ async function reclaimOwnerlessStaleLock(lockPath) {
360
+ const firstStat = await stat(lockPath);
361
+ const firstMetadata = await inspectLockOwner(lockPath);
362
+ if (firstMetadata.kind !== 'ownerless')
363
+ return false;
364
+ const firstEntries = await readdir(lockPath);
365
+ const pendingEntry = firstEntries.length === 1 && firstEntries[0].startsWith('pending-');
366
+ const markerPrefix = `${basename(lockPath)}.released-`;
367
+ const markerEntries = (await readdir(dirname(lockPath))).filter((entry) => entry.startsWith(markerPrefix));
368
+ if (markerEntries.length > 1)
369
+ return false;
370
+ let releaseMarkerPath;
371
+ if (markerEntries.length === 1) {
372
+ const markerName = markerEntries[0];
373
+ const markerToken = markerName.slice(markerPrefix.length);
374
+ if ((await readFile(join(dirname(lockPath), markerName), 'utf-8')).trim() !== markerToken)
375
+ return false;
376
+ releaseMarkerPath = join(dirname(lockPath), markerName);
377
+ }
378
+ if (!releaseMarkerPath && !pendingEntry && Date.now() - firstStat.mtimeMs <= ROOT_SKILL_ACTIVE_LOCK_STALE_MS)
379
+ return false;
380
+ const confirmedStat = await stat(lockPath);
381
+ const confirmedMetadata = await inspectLockOwner(lockPath);
382
+ const confirmedEntries = await readdir(lockPath);
383
+ if (confirmedMetadata.kind !== 'ownerless'
384
+ || confirmedStat.mtimeMs !== firstStat.mtimeMs
385
+ || confirmedStat.ctimeMs !== firstStat.ctimeMs
386
+ || confirmedEntries.length !== firstEntries.length
387
+ || confirmedEntries[0] !== firstEntries[0])
388
+ return false;
389
+ const stalePath = `${lockPath}.stale-${process.pid}-${randomBytes(6).toString('hex')}`;
390
+ try {
391
+ await rename(lockPath, stalePath);
392
+ }
393
+ catch {
394
+ return false;
395
+ }
396
+ try {
397
+ if ((await inspectLockOwner(stalePath)).kind === 'ownerless') {
398
+ await rm(stalePath, { recursive: true, force: true });
399
+ if (releaseMarkerPath)
400
+ await unlink(releaseMarkerPath).catch(() => undefined);
401
+ }
402
+ }
403
+ catch {
404
+ // The path was replaced or removed; leave any successor untouched.
405
+ }
406
+ return true;
407
+ }
408
+ async function sleepForRootLock() {
409
+ await new Promise((resolve) => setTimeout(resolve, ROOT_SKILL_ACTIVE_LOCK_RETRY_MS));
410
+ }
411
+ async function acquireRootSkillActiveStateLock(rootPath) {
412
+ const lockPath = `${rootPath}.lock`;
413
+ const token = `${process.pid}-${Date.now()}-${randomBytes(12).toString('hex')}`;
414
+ const deadline = Date.now() + ROOT_SKILL_ACTIVE_LOCK_TIMEOUT_MS;
415
+ await mkdir(dirname(rootPath), { recursive: true });
416
+ for (;;) {
417
+ let createdLockDirectory = false;
418
+ let createdLockStat;
419
+ try {
420
+ await mkdir(lockPath);
421
+ createdLockDirectory = true;
422
+ createdLockStat = await stat(lockPath);
423
+ await writeFile(lockPendingPath(lockPath, token), token, { flag: 'wx' });
424
+ await rename(lockPendingPath(lockPath, token), lockOwnerPath(lockPath, token));
425
+ return { path: lockPath, token };
426
+ }
427
+ catch {
428
+ if (createdLockDirectory) {
429
+ try {
430
+ const currentStat = await stat(lockPath);
431
+ if ((await inspectLockOwner(lockPath)).kind === 'ownerless'
432
+ && (await readdir(lockPath)).length === 0
433
+ && createdLockStat
434
+ && currentStat.mtimeMs === createdLockStat.mtimeMs
435
+ && currentStat.ctimeMs === createdLockStat.ctimeMs) {
436
+ await rmdir(lockPath);
437
+ }
438
+ }
439
+ catch {
440
+ // The path may have been atomically taken over or removed; retry without cleanup.
441
+ }
442
+ continue;
443
+ }
444
+ try {
445
+ const observedToken = await readLockOwner(lockPath);
446
+ if (!observedToken) {
447
+ await reclaimOwnerlessStaleLock(lockPath);
448
+ }
449
+ else if (ownerProcessIsDead(observedToken)) {
450
+ const firstStat = await stat(lockPath);
451
+ if (Date.now() - firstStat.mtimeMs > ROOT_SKILL_ACTIVE_LOCK_STALE_MS) {
452
+ const confirmedToken = await readLockOwner(lockPath);
453
+ const confirmedStat = await stat(lockPath);
454
+ if (confirmedToken === observedToken && confirmedStat.mtimeMs === firstStat.mtimeMs) {
455
+ const stalePath = `${lockPath}.stale-${process.pid}-${randomBytes(6).toString('hex')}`;
456
+ try {
457
+ await rename(lockPath, stalePath);
458
+ if (await readLockOwner(stalePath) === observedToken) {
459
+ await rm(stalePath, { recursive: true, force: true });
460
+ }
461
+ }
462
+ catch {
463
+ // Another process won the stale-lock takeover race; retry.
464
+ }
465
+ }
466
+ }
467
+ }
468
+ }
469
+ catch {
470
+ // The lock may have been released between observations; retry.
471
+ }
472
+ if (Date.now() >= deadline) {
473
+ throw new SkillActiveStateWriteError('lock-timeout', `timed out waiting for root skill-active lock: ${lockPath}`);
474
+ }
475
+ await sleepForRootLock();
476
+ }
477
+ }
478
+ }
479
+ async function releaseRootSkillActiveStateLock(lock) {
480
+ if (await readLockOwner(lock.path) !== lock.token)
481
+ return;
482
+ const releasedPath = lockReleasedPath(lock.path, lock.token);
483
+ try {
484
+ await writeFile(releasedPath, lock.token, { flag: 'wx' });
485
+ await unlink(lockOwnerPath(lock.path, lock.token));
486
+ }
487
+ catch {
488
+ await unlink(releasedPath).catch(() => undefined);
489
+ return;
490
+ }
491
+ }
492
+ async function withRootSkillActiveStateLock(rootPath, operation) {
493
+ const lock = await acquireRootSkillActiveStateLock(rootPath);
494
+ try {
495
+ await assertRootSkillActiveLockOwner(lock);
496
+ return await operation(lock);
497
+ }
498
+ finally {
499
+ await releaseRootSkillActiveStateLock(lock);
500
+ }
501
+ }
502
+ function stateWithActiveEntries(base, entries, fallbackMode) {
503
+ const inherited = entries.length > 0 ? clearTerminalSkillActiveMarkers({ ...(base ?? {}) }) : { ...(base ?? {}) };
504
+ const primarySkill = pickPrimaryWorkflowMode(safeString(inherited.skill).trim(), entries.map((entry) => entry.skill), fallbackMode);
505
+ const primaryEntry = entries.find((entry) => entry.skill === primarySkill) ?? entries[0];
506
+ return {
507
+ ...inherited,
508
+ version: 1,
509
+ active: entries.length > 0,
510
+ skill: primaryEntry?.skill || primarySkill || fallbackMode,
511
+ phase: primaryEntry?.phase || safeString(inherited.phase).trim(),
512
+ activated_at: primaryEntry?.activated_at || safeString(inherited.activated_at).trim(),
513
+ active_skills: entries,
514
+ };
515
+ }
516
+ function mergeRootStateForSession(currentRoot, sessionState, sessionId) {
517
+ const normalizedSessionId = safeString(sessionId).trim();
518
+ const currentEntries = listActiveSkills(currentRoot ?? {});
519
+ const hasCurrentSessionEntry = currentEntries.some((entry) => entryMatchesSessionOrOwner(entry, normalizedSessionId));
520
+ const incomingEntries = hasCurrentSessionEntry
521
+ ? listActiveSkills(sessionState).filter((entry) => entryMatchesSessionOrOwner(entry, normalizedSessionId))
522
+ : [];
523
+ const mergedEntries = [
524
+ ...currentEntries.filter((entry) => !entryMatchesSessionOrOwner(entry, normalizedSessionId)),
525
+ ...incomingEntries,
526
+ ];
527
+ return stateWithActiveEntries(currentRoot ?? sessionState, mergedEntries, sessionState.skill || 'skill-active');
528
+ }
529
+ async function writeRootSkillActiveStateAtomically(rootPath, rootState, beforeCommit, lock) {
530
+ const tempPath = `${rootPath}.tmp-${process.pid}-${Date.now()}-${randomBytes(4).toString('hex')}`;
531
+ const payload = `${JSON.stringify({ version: 1, ...rootState }, null, 2)}\n`;
532
+ await beforeCommit?.({ site: 'skill-active.root-copy', kind: 'write', path: rootPath });
533
+ try {
534
+ if (lock)
535
+ await assertRootSkillActiveLockOwner(lock);
536
+ await writeFile(tempPath, payload);
537
+ if (lock)
538
+ await assertRootSkillActiveLockOwner(lock);
539
+ await rename(tempPath, rootPath);
540
+ }
541
+ catch (error) {
542
+ await rm(tempPath, { force: true }).catch(() => undefined);
543
+ if (error instanceof SkillActiveStateWriteError)
544
+ throw error;
545
+ throw new SkillActiveStateWriteError('atomic-replace-failed', `failed to atomically replace root skill-active state: ${rootPath}`, { cause: error });
546
+ }
547
+ }
548
+ async function restoreRootSkillActiveStateBytesIfOwned(rootPath, previousRoot, lock) {
549
+ await assertRootSkillActiveLockOwner(lock);
550
+ if (previousRoot === null) {
551
+ await unlink(rootPath).catch((error) => {
552
+ if (error.code !== 'ENOENT')
553
+ throw error;
554
+ });
555
+ return;
556
+ }
557
+ const tempPath = `${rootPath}.rollback-${process.pid}-${Date.now()}-${randomBytes(4).toString('hex')}`;
558
+ try {
559
+ await writeFile(tempPath, previousRoot);
560
+ await assertRootSkillActiveLockOwner(lock);
561
+ await rename(tempPath, rootPath);
562
+ }
563
+ finally {
564
+ await rm(tempPath, { force: true }).catch(() => undefined);
565
+ }
566
+ }
247
567
  export async function writeSkillActiveStateCopies(cwd, state, sessionId, rootState) {
248
568
  const { rootPath, sessionPath } = getSkillActiveStatePaths(cwd, sessionId);
249
569
  await writeSkillActiveStateCopiesToPaths(rootPath, sessionPath, state, rootState);
250
570
  }
251
- export async function writeSkillActiveStateCopiesForStateDir(stateDir, state, sessionId, rootState) {
571
+ export async function writeSkillActiveStateCopiesForStateDir(stateDir, state, sessionId, rootState, options = {}) {
252
572
  const { rootPath, sessionPath } = getSkillActiveStatePathsForStateDir(stateDir, sessionId);
253
- await writeSkillActiveStateCopiesToPaths(rootPath, sessionPath, state, rootState);
573
+ await writeSkillActiveStateCopiesToPaths(rootPath, sessionPath, state, rootState, options.beforeCommit, undefined, options.sessionOnlyWhenRootMissing);
254
574
  }
255
- async function writeSkillActiveStateCopiesToPaths(rootPath, sessionPath, state, rootState) {
575
+ export async function updateRootSkillActiveStateForStateDir(stateDir, update, options = {}) {
576
+ const { rootPath } = getSkillActiveStatePathsForStateDir(stateDir);
577
+ await withRootSkillActiveStateLock(rootPath, async (lock) => {
578
+ const currentRoot = await readRootStateForWrite(rootPath);
579
+ const nextRoot = update(currentRoot);
580
+ if (nextRoot === null)
581
+ return;
582
+ await writeRootSkillActiveStateAtomically(rootPath, nextRoot, options.beforeCommit, lock);
583
+ });
584
+ }
585
+ export async function writeSkillActiveStateWithPrimaryTransactionForStateDir(stateDir, state, sessionId, primaryPath, primaryWrite, options = {}) {
586
+ const { rootPath, sessionPath } = getSkillActiveStatePathsForStateDir(stateDir, sessionId);
587
+ if (sessionPath !== primaryPath)
588
+ throw new Error('skill-active primary path is not session-scoped');
256
589
  const normalized = { version: 1, ...state };
257
- const normalizedRoot = rootState === null
258
- ? null
259
- : { version: 1, ...(rootState ?? normalized) };
260
- if (normalizedRoot !== null) {
261
- const rootPayload = JSON.stringify(normalizedRoot, null, 2);
262
- await mkdir(dirname(rootPath), { recursive: true });
263
- await writeFile(rootPath, rootPayload);
264
- }
265
- if (sessionPath) {
266
- const sessionPayload = JSON.stringify(normalized, null, 2);
590
+ const sessionPayload = `${JSON.stringify(normalized, null, 2)}\n`;
591
+ await withRootSkillActiveStateLock(rootPath, async (lock) => {
592
+ const currentRoot = await readRootStateForWrite(rootPath);
593
+ const nextRoot = mergeRootStateForSession(currentRoot, normalized, safeString(normalized.session_id).trim());
594
+ const previousPrimary = existsSync(primaryPath) ? await readFile(primaryPath) : null;
595
+ const previousRoot = existsSync(rootPath) ? await readFile(rootPath) : null;
596
+ let primaryCommitted = false;
597
+ try {
598
+ await primaryWrite();
599
+ primaryCommitted = true;
600
+ await writeRootSkillActiveStateAtomically(rootPath, nextRoot, options.beforeCommit, lock);
601
+ await options.beforeCommit?.({ site: 'skill-active.session-copy', kind: 'write', path: sessionPath });
602
+ await assertRootSkillActiveLockOwner(lock);
603
+ await writeFile(sessionPath, sessionPayload);
604
+ }
605
+ catch (error) {
606
+ let rollbackError;
607
+ if (primaryCommitted) {
608
+ if (previousPrimary === null)
609
+ await unlink(primaryPath).catch(() => undefined);
610
+ else
611
+ await writeFile(primaryPath, previousPrimary);
612
+ }
613
+ try {
614
+ await restoreRootSkillActiveStateBytesIfOwned(rootPath, previousRoot, lock);
615
+ }
616
+ catch (ownershipOrRestoreError) {
617
+ rollbackError = ownershipOrRestoreError;
618
+ }
619
+ throw rollbackError ?? error;
620
+ }
621
+ });
622
+ }
623
+ async function writeSkillActiveStateCopiesToPaths(rootPath, sessionPath, state, rootState, beforeCommit, lock, sessionOnlyWhenRootMissing = false) {
624
+ const normalized = { version: 1, ...state };
625
+ const writeSessionCopy = async () => {
626
+ if (!sessionPath)
627
+ return;
628
+ const sessionPayload = `${JSON.stringify(normalized, null, 2)}\n`;
267
629
  await mkdir(dirname(sessionPath), { recursive: true });
630
+ await beforeCommit?.({ site: 'skill-active.session-copy', kind: 'write', path: sessionPath });
268
631
  await writeFile(sessionPath, sessionPayload);
632
+ };
633
+ const writeRootTransaction = async (ownedLock) => {
634
+ const currentRoot = await readRootStateForWrite(rootPath);
635
+ if (sessionPath && sessionOnlyWhenRootMissing && currentRoot === null) {
636
+ await writeSessionCopy();
637
+ return;
638
+ }
639
+ const nextRoot = sessionPath
640
+ ? mergeRootStateForSession(currentRoot, normalized, safeString(normalized.session_id).trim())
641
+ : { version: 1, ...(rootState ?? normalized) };
642
+ await writeRootSkillActiveStateAtomically(rootPath, nextRoot, beforeCommit, ownedLock);
643
+ await writeSessionCopy();
644
+ };
645
+ if (rootState !== null && lock) {
646
+ await writeRootTransaction(lock);
647
+ }
648
+ else if (rootState !== null) {
649
+ await withRootSkillActiveStateLock(rootPath, writeRootTransaction);
650
+ }
651
+ else {
652
+ await writeSessionCopy();
269
653
  }
270
654
  }
271
655
  export async function readVisibleSkillActiveState(cwd, sessionId) {
@@ -288,11 +672,18 @@ export function tracksCanonicalWorkflowSkill(mode) {
288
672
  return CANONICAL_WORKFLOW_SKILLS.includes(mode);
289
673
  }
290
674
  export async function syncCanonicalSkillStateForMode(options) {
675
+ const baseStateDir = options.baseStateDir ?? getBaseStateDir(options.cwd);
676
+ const { rootPath } = getSkillActiveStatePathsForStateDir(baseStateDir);
677
+ await withRootSkillActiveStateLock(rootPath, async (lock) => {
678
+ await syncCanonicalSkillStateForModeUnlocked({ ...options, baseStateDir }, lock);
679
+ });
680
+ }
681
+ async function syncCanonicalSkillStateForModeUnlocked(options, lock) {
291
682
  const { cwd, baseStateDir = getBaseStateDir(cwd), mode, active, currentPhase, sessionId, threadId, turnId, ownerCodexSessionId, nowIso = new Date().toISOString(), source = 'state-server', allSessions = false, } = options;
292
683
  if (!tracksCanonicalWorkflowSkill(mode))
293
684
  return;
294
685
  const { rootPath, sessionPath } = getSkillActiveStatePathsForStateDir(baseStateDir, sessionId);
295
- const existingRoot = await readSkillActiveState(rootPath);
686
+ const existingRoot = await readRootStateForWrite(rootPath);
296
687
  const existingSession = sessionPath ? await readSkillActiveState(sessionPath) : null;
297
688
  if (!existingRoot && !existingSession && !active && !options.allSessions)
298
689
  return;
@@ -355,14 +746,16 @@ export async function syncCanonicalSkillStateForMode(options) {
355
746
  });
356
747
  }
357
748
  const nextSessionRootEntries = rootEntries.filter((entry) => !(entry.skill === mode
358
- && safeString(entry.session_id).trim() === normalizedSessionId));
749
+ && entryMatchesSessionOrOwner(entry, normalizedSessionId)));
359
750
  const nextRootEntries = allRootEntries.filter((entry) => !(entry.skill === mode
360
- && safeString(entry.session_id).trim() === normalizedSessionId));
751
+ && entryMatchesSessionOrOwner(entry, normalizedSessionId)));
361
752
  const nextSessionState = applyEntriesToState(existingSession ?? existingRoot, [...nextSessionRootEntries, ...nextSessionEntries], mode, normalizedSessionId);
753
+ nextSessionState.session_id = normalizedSessionId;
362
754
  const nextRootState = nextRootEntries.length > 0
363
755
  ? applyEntriesToState(existingRoot, nextRootEntries, mode)
364
756
  : applyEntriesToState(existingSession ?? existingRoot, active ? nextSessionEntries : [], mode, normalizedSessionId);
365
- await writeSkillActiveStateCopiesForStateDir(baseStateDir, nextSessionState, sessionId, nextRootState);
757
+ const sessionPaths = getSkillActiveStatePathsForStateDir(baseStateDir, sessionId);
758
+ await writeSkillActiveStateCopiesToPaths(sessionPaths.rootPath, sessionPaths.sessionPath, nextSessionState, nextRootState, options.beforeCommit, lock);
366
759
  return;
367
760
  }
368
761
  const rootScopedEntries = rootEntries.filter((entry) => safeString(entry.session_id).trim().length === 0);
@@ -387,7 +780,7 @@ export async function syncCanonicalSkillStateForMode(options) {
387
780
  ? rootEntries.filter((entry) => entry.skill !== mode)
388
781
  : [...sessionScopedRootMirrorEntries, ...nextRootScopedEntries];
389
782
  const nextRootState = applyEntriesToState(existingRoot, nextRootEntries, mode);
390
- await writeSkillActiveStateCopiesForStateDir(baseStateDir, nextRootState, undefined, nextRootState);
783
+ await writeSkillActiveStateCopiesToPaths(rootPath, undefined, nextRootState, nextRootState, options.beforeCommit, lock);
391
784
  const sessionsDir = join(baseStateDir, 'sessions');
392
785
  if (!existsSync(sessionsDir))
393
786
  return;
@@ -406,11 +799,15 @@ export async function syncCanonicalSkillStateForMode(options) {
406
799
  .filter((entry) => safeString(entry.session_id).trim() === sessionId);
407
800
  const nextSessionEntries = [...nextVisibleRootEntries, ...sessionOnlyEntries];
408
801
  if (nextSessionEntries.length === 0) {
409
- await unlink(sessionPath).catch(() => { });
802
+ await options.beforeCommit?.({ site: 'skill-active.session-unlink', kind: 'unlink', path: sessionPath });
803
+ await unlink(sessionPath).catch((error) => {
804
+ if (error.code !== 'ENOENT')
805
+ throw error;
806
+ });
410
807
  continue;
411
808
  }
412
809
  const nextSessionState = applyEntriesToState(existingSessionState ?? existingRoot, nextSessionEntries, nextSessionEntries[0]?.skill || mode, sessionId);
413
- await writeSkillActiveStateCopiesForStateDir(baseStateDir, nextSessionState, sessionId, nextRootState);
810
+ await writeSkillActiveStateCopiesToPaths(rootPath, sessionPath, nextSessionState, nextRootState, options.beforeCommit, lock);
414
811
  }
415
812
  }
416
813
  //# sourceMappingURL=skill-active.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"skill-active.js","sourceRoot":"","sources":["../../src/state/skill-active.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill-active.js","sourceRoot":"","sources":["../../src/state/skill-active.ts"],"names":[],"mappings":"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"}