oh-my-codex 0.21.0 → 0.21.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (346) hide show
  1. package/Cargo.toml +1 -1
  2. package/README.md +4 -2
  3. package/dist/cli/__tests__/detached-launch-diagnostics-3578.test.d.ts +2 -0
  4. package/dist/cli/__tests__/detached-launch-diagnostics-3578.test.d.ts.map +1 -0
  5. package/dist/cli/__tests__/detached-launch-diagnostics-3578.test.js +592 -0
  6. package/dist/cli/__tests__/detached-launch-diagnostics-3578.test.js.map +1 -0
  7. package/dist/cli/__tests__/detached-leader-teardown.test.js +270 -33
  8. package/dist/cli/__tests__/detached-leader-teardown.test.js.map +1 -1
  9. package/dist/cli/__tests__/doctor-warning-copy.test.js +133 -5
  10. package/dist/cli/__tests__/doctor-warning-copy.test.js.map +1 -1
  11. package/dist/cli/__tests__/index.test.js +543 -2
  12. package/dist/cli/__tests__/index.test.js.map +1 -1
  13. package/dist/cli/__tests__/issue-windows-cancel-identity.test.d.ts +2 -0
  14. package/dist/cli/__tests__/issue-windows-cancel-identity.test.d.ts.map +1 -0
  15. package/dist/cli/__tests__/issue-windows-cancel-identity.test.js +17 -0
  16. package/dist/cli/__tests__/issue-windows-cancel-identity.test.js.map +1 -0
  17. package/dist/cli/__tests__/launch-fallback.test.js +15 -3
  18. package/dist/cli/__tests__/launch-fallback.test.js.map +1 -1
  19. package/dist/cli/__tests__/package-bin-contract.test.js +20 -0
  20. package/dist/cli/__tests__/package-bin-contract.test.js.map +1 -1
  21. package/dist/cli/__tests__/plugin-cache-stale-lock.test.d.ts +2 -0
  22. package/dist/cli/__tests__/plugin-cache-stale-lock.test.d.ts.map +1 -0
  23. package/dist/cli/__tests__/plugin-cache-stale-lock.test.js +76 -0
  24. package/dist/cli/__tests__/plugin-cache-stale-lock.test.js.map +1 -0
  25. package/dist/cli/__tests__/plugin-cache-symlink-provenance-3552.test.d.ts +2 -0
  26. package/dist/cli/__tests__/plugin-cache-symlink-provenance-3552.test.d.ts.map +1 -0
  27. package/dist/cli/__tests__/plugin-cache-symlink-provenance-3552.test.js +1662 -0
  28. package/dist/cli/__tests__/plugin-cache-symlink-provenance-3552.test.js.map +1 -0
  29. package/dist/cli/__tests__/plugin-launcher-provenance-3558.test.d.ts +2 -0
  30. package/dist/cli/__tests__/plugin-launcher-provenance-3558.test.d.ts.map +1 -0
  31. package/dist/cli/__tests__/plugin-launcher-provenance-3558.test.js +522 -0
  32. package/dist/cli/__tests__/plugin-launcher-provenance-3558.test.js.map +1 -0
  33. package/dist/cli/__tests__/ralplan-advisory.test.d.ts +2 -0
  34. package/dist/cli/__tests__/ralplan-advisory.test.d.ts.map +1 -0
  35. package/dist/cli/__tests__/ralplan-advisory.test.js +301 -0
  36. package/dist/cli/__tests__/ralplan-advisory.test.js.map +1 -0
  37. package/dist/cli/__tests__/ralplan.test.js +39 -0
  38. package/dist/cli/__tests__/ralplan.test.js.map +1 -1
  39. package/dist/cli/__tests__/resume.test.js +81 -6
  40. package/dist/cli/__tests__/resume.test.js.map +1 -1
  41. package/dist/cli/__tests__/session-scoped-runtime.test.js +423 -4
  42. package/dist/cli/__tests__/session-scoped-runtime.test.js.map +1 -1
  43. package/dist/cli/__tests__/setup-install-mode.test.js +60 -3
  44. package/dist/cli/__tests__/setup-install-mode.test.js.map +1 -1
  45. package/dist/cli/__tests__/setup-refresh.test.js +9 -0
  46. package/dist/cli/__tests__/setup-refresh.test.js.map +1 -1
  47. package/dist/cli/__tests__/sparkshell-cli.test.js +4 -0
  48. package/dist/cli/__tests__/sparkshell-cli.test.js.map +1 -1
  49. package/dist/cli/__tests__/ultragoal.test.js +71 -0
  50. package/dist/cli/__tests__/ultragoal.test.js.map +1 -1
  51. package/dist/cli/__tests__/windows-popup-loop-contract.test.js +30 -4
  52. package/dist/cli/__tests__/windows-popup-loop-contract.test.js.map +1 -1
  53. package/dist/cli/doctor.d.ts.map +1 -1
  54. package/dist/cli/doctor.js +57 -8
  55. package/dist/cli/doctor.js.map +1 -1
  56. package/dist/cli/index.d.ts +113 -7
  57. package/dist/cli/index.d.ts.map +1 -1
  58. package/dist/cli/index.js +1850 -185
  59. package/dist/cli/index.js.map +1 -1
  60. package/dist/cli/native-assets.d.ts +2 -1
  61. package/dist/cli/native-assets.d.ts.map +1 -1
  62. package/dist/cli/native-assets.js +7 -7
  63. package/dist/cli/native-assets.js.map +1 -1
  64. package/dist/cli/plugin-marketplace.d.ts +89 -4
  65. package/dist/cli/plugin-marketplace.d.ts.map +1 -1
  66. package/dist/cli/plugin-marketplace.js +2135 -118
  67. package/dist/cli/plugin-marketplace.js.map +1 -1
  68. package/dist/cli/ralplan.d.ts +2 -1
  69. package/dist/cli/ralplan.d.ts.map +1 -1
  70. package/dist/cli/ralplan.js +149 -9
  71. package/dist/cli/ralplan.js.map +1 -1
  72. package/dist/cli/setup.d.ts.map +1 -1
  73. package/dist/cli/setup.js +7 -1
  74. package/dist/cli/setup.js.map +1 -1
  75. package/dist/cli/sparkshell.d.ts.map +1 -1
  76. package/dist/cli/sparkshell.js +9 -10
  77. package/dist/cli/sparkshell.js.map +1 -1
  78. package/dist/cli/update-worker.js +9 -0
  79. package/dist/cli/update-worker.js.map +1 -1
  80. package/dist/cli/update.d.ts +1 -0
  81. package/dist/cli/update.d.ts.map +1 -1
  82. package/dist/cli/update.js +9 -0
  83. package/dist/cli/update.js.map +1 -1
  84. package/dist/config/__tests__/generator-idempotent.test.js +118 -0
  85. package/dist/config/__tests__/generator-idempotent.test.js.map +1 -1
  86. package/dist/config/generator.d.ts.map +1 -1
  87. package/dist/config/generator.js +74 -4
  88. package/dist/config/generator.js.map +1 -1
  89. package/dist/hooks/__tests__/keyword-detector.test.js +74 -0
  90. package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
  91. package/dist/hooks/__tests__/ralplan-advisory-keyword.test.d.ts +2 -0
  92. package/dist/hooks/__tests__/ralplan-advisory-keyword.test.d.ts.map +1 -0
  93. package/dist/hooks/__tests__/ralplan-advisory-keyword.test.js +250 -0
  94. package/dist/hooks/__tests__/ralplan-advisory-keyword.test.js.map +1 -0
  95. package/dist/hooks/__tests__/session.test.js +10 -1
  96. package/dist/hooks/__tests__/session.test.js.map +1 -1
  97. package/dist/hooks/keyword-detector.d.ts +8 -1
  98. package/dist/hooks/keyword-detector.d.ts.map +1 -1
  99. package/dist/hooks/keyword-detector.js +130 -9
  100. package/dist/hooks/keyword-detector.js.map +1 -1
  101. package/dist/hooks/session.d.ts +5 -0
  102. package/dist/hooks/session.d.ts.map +1 -1
  103. package/dist/hooks/session.js +17 -3
  104. package/dist/hooks/session.js.map +1 -1
  105. package/dist/hud/__tests__/index.test.js +16 -1
  106. package/dist/hud/__tests__/index.test.js.map +1 -1
  107. package/dist/hud/__tests__/reconcile.test.js +134 -7
  108. package/dist/hud/__tests__/reconcile.test.js.map +1 -1
  109. package/dist/hud/__tests__/render.test.js +57 -0
  110. package/dist/hud/__tests__/render.test.js.map +1 -1
  111. package/dist/hud/__tests__/session-attached.test.d.ts +2 -0
  112. package/dist/hud/__tests__/session-attached.test.d.ts.map +1 -0
  113. package/dist/hud/__tests__/session-attached.test.js +82 -0
  114. package/dist/hud/__tests__/session-attached.test.js.map +1 -0
  115. package/dist/hud/__tests__/state.test.js +94 -2
  116. package/dist/hud/__tests__/state.test.js.map +1 -1
  117. package/dist/hud/__tests__/tmux-split-realtmux.test.js +169 -2
  118. package/dist/hud/__tests__/tmux-split-realtmux.test.js.map +1 -1
  119. package/dist/hud/__tests__/tmux.test.js +104 -22
  120. package/dist/hud/__tests__/tmux.test.js.map +1 -1
  121. package/dist/hud/__tests__/types.test.js +9 -0
  122. package/dist/hud/__tests__/types.test.js.map +1 -1
  123. package/dist/hud/__tests__/watch-detached.test.d.ts +2 -0
  124. package/dist/hud/__tests__/watch-detached.test.d.ts.map +1 -0
  125. package/dist/hud/__tests__/watch-detached.test.js +383 -0
  126. package/dist/hud/__tests__/watch-detached.test.js.map +1 -0
  127. package/dist/hud/__tests__/watch-realtmux.test.d.ts +2 -0
  128. package/dist/hud/__tests__/watch-realtmux.test.d.ts.map +1 -0
  129. package/dist/hud/__tests__/watch-realtmux.test.js +322 -0
  130. package/dist/hud/__tests__/watch-realtmux.test.js.map +1 -0
  131. package/dist/hud/index.d.ts +3 -0
  132. package/dist/hud/index.d.ts.map +1 -1
  133. package/dist/hud/index.js +98 -20
  134. package/dist/hud/index.js.map +1 -1
  135. package/dist/hud/reconcile.d.ts.map +1 -1
  136. package/dist/hud/reconcile.js +68 -24
  137. package/dist/hud/reconcile.js.map +1 -1
  138. package/dist/hud/render.d.ts.map +1 -1
  139. package/dist/hud/render.js +20 -0
  140. package/dist/hud/render.js.map +1 -1
  141. package/dist/hud/session-attached.d.ts +15 -0
  142. package/dist/hud/session-attached.d.ts.map +1 -0
  143. package/dist/hud/session-attached.js +47 -0
  144. package/dist/hud/session-attached.js.map +1 -0
  145. package/dist/hud/state.d.ts +9 -1
  146. package/dist/hud/state.d.ts.map +1 -1
  147. package/dist/hud/state.js +140 -3
  148. package/dist/hud/state.js.map +1 -1
  149. package/dist/hud/tmux.d.ts +4 -0
  150. package/dist/hud/tmux.d.ts.map +1 -1
  151. package/dist/hud/tmux.js +86 -23
  152. package/dist/hud/tmux.js.map +1 -1
  153. package/dist/hud/types.d.ts +20 -0
  154. package/dist/hud/types.d.ts.map +1 -1
  155. package/dist/hud/types.js +3 -0
  156. package/dist/hud/types.js.map +1 -1
  157. package/dist/modes/base.d.ts +15 -2
  158. package/dist/modes/base.d.ts.map +1 -1
  159. package/dist/modes/base.js +105 -16
  160. package/dist/modes/base.js.map +1 -1
  161. package/dist/question/autopilot-wait.js +2 -2
  162. package/dist/question/autopilot-wait.js.map +1 -1
  163. package/dist/question/deep-interview.js +2 -2
  164. package/dist/question/deep-interview.js.map +1 -1
  165. package/dist/ralplan/__tests__/advisory-activation.test.d.ts +2 -0
  166. package/dist/ralplan/__tests__/advisory-activation.test.d.ts.map +1 -0
  167. package/dist/ralplan/__tests__/advisory-activation.test.js +700 -0
  168. package/dist/ralplan/__tests__/advisory-activation.test.js.map +1 -0
  169. package/dist/ralplan/__tests__/advisory-detached-transition.test.d.ts +2 -0
  170. package/dist/ralplan/__tests__/advisory-detached-transition.test.d.ts.map +1 -0
  171. package/dist/ralplan/__tests__/advisory-detached-transition.test.js +88 -0
  172. package/dist/ralplan/__tests__/advisory-detached-transition.test.js.map +1 -0
  173. package/dist/ralplan/__tests__/advisory.test.d.ts +2 -0
  174. package/dist/ralplan/__tests__/advisory.test.d.ts.map +1 -0
  175. package/dist/ralplan/__tests__/advisory.test.js +1087 -0
  176. package/dist/ralplan/__tests__/advisory.test.js.map +1 -0
  177. package/dist/ralplan/__tests__/runtime.test.js +416 -7
  178. package/dist/ralplan/__tests__/runtime.test.js.map +1 -1
  179. package/dist/ralplan/advisory-activation-verifier.d.ts +19 -0
  180. package/dist/ralplan/advisory-activation-verifier.d.ts.map +1 -0
  181. package/dist/ralplan/advisory-activation-verifier.js +77 -0
  182. package/dist/ralplan/advisory-activation-verifier.js.map +1 -0
  183. package/dist/ralplan/advisory-activation.d.ts +34 -0
  184. package/dist/ralplan/advisory-activation.d.ts.map +1 -0
  185. package/dist/ralplan/advisory-activation.js +205 -0
  186. package/dist/ralplan/advisory-activation.js.map +1 -0
  187. package/dist/ralplan/advisory-contract.d.ts +103 -0
  188. package/dist/ralplan/advisory-contract.d.ts.map +1 -0
  189. package/dist/ralplan/advisory-contract.js +83 -0
  190. package/dist/ralplan/advisory-contract.js.map +1 -0
  191. package/dist/ralplan/advisory-detached-transition.d.ts +11 -0
  192. package/dist/ralplan/advisory-detached-transition.d.ts.map +1 -0
  193. package/dist/ralplan/advisory-detached-transition.js +21 -0
  194. package/dist/ralplan/advisory-detached-transition.js.map +1 -0
  195. package/dist/ralplan/advisory-evidence.d.ts +91 -0
  196. package/dist/ralplan/advisory-evidence.d.ts.map +1 -0
  197. package/dist/ralplan/advisory-evidence.js +393 -0
  198. package/dist/ralplan/advisory-evidence.js.map +1 -0
  199. package/dist/ralplan/advisory-lifecycle-validation.d.ts +11 -0
  200. package/dist/ralplan/advisory-lifecycle-validation.d.ts.map +1 -0
  201. package/dist/ralplan/advisory-lifecycle-validation.js +72 -0
  202. package/dist/ralplan/advisory-lifecycle-validation.js.map +1 -0
  203. package/dist/ralplan/advisory-postconditions.d.ts +3 -0
  204. package/dist/ralplan/advisory-postconditions.d.ts.map +1 -0
  205. package/dist/ralplan/advisory-postconditions.js +33 -0
  206. package/dist/ralplan/advisory-postconditions.js.map +1 -0
  207. package/dist/ralplan/advisory-recovery-journal.d.ts +56 -0
  208. package/dist/ralplan/advisory-recovery-journal.d.ts.map +1 -0
  209. package/dist/ralplan/advisory-recovery-journal.js +136 -0
  210. package/dist/ralplan/advisory-recovery-journal.js.map +1 -0
  211. package/dist/ralplan/advisory-storage.d.ts +24 -0
  212. package/dist/ralplan/advisory-storage.d.ts.map +1 -0
  213. package/dist/ralplan/advisory-storage.js +106 -0
  214. package/dist/ralplan/advisory-storage.js.map +1 -0
  215. package/dist/ralplan/advisory.d.ts +99 -0
  216. package/dist/ralplan/advisory.d.ts.map +1 -0
  217. package/dist/ralplan/advisory.js +914 -0
  218. package/dist/ralplan/advisory.js.map +1 -0
  219. package/dist/ralplan/documented-leader-preflight.d.ts +8 -0
  220. package/dist/ralplan/documented-leader-preflight.d.ts.map +1 -1
  221. package/dist/ralplan/documented-leader-preflight.js +60 -2
  222. package/dist/ralplan/documented-leader-preflight.js.map +1 -1
  223. package/dist/ralplan/runtime-advisory-lifecycle.d.ts +74 -0
  224. package/dist/ralplan/runtime-advisory-lifecycle.d.ts.map +1 -0
  225. package/dist/ralplan/runtime-advisory-lifecycle.js +352 -0
  226. package/dist/ralplan/runtime-advisory-lifecycle.js.map +1 -0
  227. package/dist/ralplan/runtime-contract.d.ts +126 -0
  228. package/dist/ralplan/runtime-contract.d.ts.map +1 -0
  229. package/dist/ralplan/runtime-contract.js +2 -0
  230. package/dist/ralplan/runtime-contract.js.map +1 -0
  231. package/dist/ralplan/runtime.d.ts +6 -109
  232. package/dist/ralplan/runtime.d.ts.map +1 -1
  233. package/dist/ralplan/runtime.js +174 -56
  234. package/dist/ralplan/runtime.js.map +1 -1
  235. package/dist/scripts/__tests__/postinstall.test.js +26 -0
  236. package/dist/scripts/__tests__/postinstall.test.js.map +1 -1
  237. package/dist/scripts/__tests__/ralplan-advisory-hook.test.d.ts +2 -0
  238. package/dist/scripts/__tests__/ralplan-advisory-hook.test.d.ts.map +1 -0
  239. package/dist/scripts/__tests__/ralplan-advisory-hook.test.js +299 -0
  240. package/dist/scripts/__tests__/ralplan-advisory-hook.test.js.map +1 -0
  241. package/dist/scripts/__tests__/smoke-packed-install.test.js +102 -8
  242. package/dist/scripts/__tests__/smoke-packed-install.test.js.map +1 -1
  243. package/dist/scripts/codex-native-hook.d.ts +20 -0
  244. package/dist/scripts/codex-native-hook.d.ts.map +1 -1
  245. package/dist/scripts/codex-native-hook.js +226 -15
  246. package/dist/scripts/codex-native-hook.js.map +1 -1
  247. package/dist/scripts/postinstall.d.ts +7 -0
  248. package/dist/scripts/postinstall.d.ts.map +1 -1
  249. package/dist/scripts/postinstall.js +40 -0
  250. package/dist/scripts/postinstall.js.map +1 -1
  251. package/dist/scripts/smoke-packed-install.d.ts +21 -5
  252. package/dist/scripts/smoke-packed-install.d.ts.map +1 -1
  253. package/dist/scripts/smoke-packed-install.js +157 -57
  254. package/dist/scripts/smoke-packed-install.js.map +1 -1
  255. package/dist/state/__tests__/mode-binding-lease.test.d.ts +2 -0
  256. package/dist/state/__tests__/mode-binding-lease.test.d.ts.map +1 -0
  257. package/dist/state/__tests__/mode-binding-lease.test.js +498 -0
  258. package/dist/state/__tests__/mode-binding-lease.test.js.map +1 -0
  259. package/dist/state/__tests__/operations.test.js +1 -0
  260. package/dist/state/__tests__/operations.test.js.map +1 -1
  261. package/dist/state/__tests__/pinned-atomic-file.test.d.ts +2 -0
  262. package/dist/state/__tests__/pinned-atomic-file.test.d.ts.map +1 -0
  263. package/dist/state/__tests__/pinned-atomic-file.test.js +438 -0
  264. package/dist/state/__tests__/pinned-atomic-file.test.js.map +1 -0
  265. package/dist/state/__tests__/skill-active-exact-session-transaction.test.d.ts +2 -0
  266. package/dist/state/__tests__/skill-active-exact-session-transaction.test.d.ts.map +1 -0
  267. package/dist/state/__tests__/skill-active-exact-session-transaction.test.js +179 -0
  268. package/dist/state/__tests__/skill-active-exact-session-transaction.test.js.map +1 -0
  269. package/dist/state/__tests__/skill-active.test.js +29 -1
  270. package/dist/state/__tests__/skill-active.test.js.map +1 -1
  271. package/dist/state/mode-binding-lease-helper.d.ts +2 -0
  272. package/dist/state/mode-binding-lease-helper.d.ts.map +1 -0
  273. package/dist/state/mode-binding-lease-helper.js +623 -0
  274. package/dist/state/mode-binding-lease-helper.js.map +1 -0
  275. package/dist/state/mode-binding-lease.d.ts +25 -0
  276. package/dist/state/mode-binding-lease.d.ts.map +1 -0
  277. package/dist/state/mode-binding-lease.js +380 -0
  278. package/dist/state/mode-binding-lease.js.map +1 -0
  279. package/dist/state/operations.d.ts +29 -1
  280. package/dist/state/operations.d.ts.map +1 -1
  281. package/dist/state/operations.js +203 -122
  282. package/dist/state/operations.js.map +1 -1
  283. package/dist/state/pinned-atomic-file-darwin-client.d.ts +34 -0
  284. package/dist/state/pinned-atomic-file-darwin-client.d.ts.map +1 -0
  285. package/dist/state/pinned-atomic-file-darwin-client.js +174 -0
  286. package/dist/state/pinned-atomic-file-darwin-client.js.map +1 -0
  287. package/dist/state/pinned-atomic-file-darwin-helper.d.ts +2 -0
  288. package/dist/state/pinned-atomic-file-darwin-helper.d.ts.map +1 -0
  289. package/dist/state/pinned-atomic-file-darwin-helper.js +275 -0
  290. package/dist/state/pinned-atomic-file-darwin-helper.js.map +1 -0
  291. package/dist/state/pinned-atomic-file-darwin-janitor.d.ts +2 -0
  292. package/dist/state/pinned-atomic-file-darwin-janitor.d.ts.map +1 -0
  293. package/dist/state/pinned-atomic-file-darwin-janitor.js +272 -0
  294. package/dist/state/pinned-atomic-file-darwin-janitor.js.map +1 -0
  295. package/dist/state/pinned-atomic-file.d.ts +29 -0
  296. package/dist/state/pinned-atomic-file.d.ts.map +1 -0
  297. package/dist/state/pinned-atomic-file.js +536 -0
  298. package/dist/state/pinned-atomic-file.js.map +1 -0
  299. package/dist/state/process-identity.d.ts +30 -0
  300. package/dist/state/process-identity.d.ts.map +1 -0
  301. package/dist/state/process-identity.js +99 -0
  302. package/dist/state/process-identity.js.map +1 -0
  303. package/dist/state/skill-active.d.ts +18 -1
  304. package/dist/state/skill-active.d.ts.map +1 -1
  305. package/dist/state/skill-active.js +82 -5
  306. package/dist/state/skill-active.js.map +1 -1
  307. package/dist/state/workflow-transition-reconcile.js +1 -1
  308. package/dist/state/workflow-transition-reconcile.js.map +1 -1
  309. package/dist/team/__tests__/tmux-session.test.js +109 -0
  310. package/dist/team/__tests__/tmux-session.test.js.map +1 -1
  311. package/dist/team/tmux-session.d.ts.map +1 -1
  312. package/dist/team/tmux-session.js +10 -1
  313. package/dist/team/tmux-session.js.map +1 -1
  314. package/dist/utils/__tests__/file-durability.test.js +20 -0
  315. package/dist/utils/__tests__/file-durability.test.js.map +1 -1
  316. package/dist/utils/file-durability.d.ts +1 -1
  317. package/dist/utils/file-durability.d.ts.map +1 -1
  318. package/dist/utils/file-durability.js.map +1 -1
  319. package/dist/verification/__tests__/ci-rust-gates.test.js +12 -4
  320. package/dist/verification/__tests__/ci-rust-gates.test.js.map +1 -1
  321. package/dist/verification/__tests__/ci-trusted-publish.test.d.ts +2 -0
  322. package/dist/verification/__tests__/ci-trusted-publish.test.d.ts.map +1 -0
  323. package/dist/verification/__tests__/ci-trusted-publish.test.js +205 -0
  324. package/dist/verification/__tests__/ci-trusted-publish.test.js.map +1 -0
  325. package/dist/verification/__tests__/explore-harness-release-workflow.test.js +10 -5
  326. package/dist/verification/__tests__/explore-harness-release-workflow.test.js.map +1 -1
  327. package/dist/verification/__tests__/publish-npm-manual-retired.test.d.ts +2 -0
  328. package/dist/verification/__tests__/publish-npm-manual-retired.test.d.ts.map +1 -0
  329. package/dist/verification/__tests__/publish-npm-manual-retired.test.js +22 -0
  330. package/dist/verification/__tests__/publish-npm-manual-retired.test.js.map +1 -0
  331. package/package.json +1 -1
  332. package/plugins/oh-my-codex/.codex-plugin/plugin.json +1 -1
  333. package/plugins/oh-my-codex/skills/doctor/SKILL.md +1 -1
  334. package/plugins/oh-my-codex/skills/omx-setup/SKILL.md +1 -1
  335. package/plugins/oh-my-codex/skills/ralplan/SKILL.md +10 -1
  336. package/plugins/oh-my-codex/skills/team/SKILL.md +2 -0
  337. package/skills/doctor/SKILL.md +1 -1
  338. package/skills/omx-setup/SKILL.md +1 -1
  339. package/skills/ralplan/SKILL.md +10 -1
  340. package/skills/team/SKILL.md +2 -0
  341. package/src/scripts/__tests__/postinstall.test.ts +28 -0
  342. package/src/scripts/__tests__/ralplan-advisory-hook.test.ts +320 -0
  343. package/src/scripts/__tests__/smoke-packed-install.test.ts +120 -7
  344. package/src/scripts/codex-native-hook.ts +220 -10
  345. package/src/scripts/postinstall.ts +46 -0
  346. package/src/scripts/smoke-packed-install.ts +175 -70
@@ -4,11 +4,13 @@ import { mkdir, mkdtemp, readFile, rm, writeFile } from 'node:fs/promises';
4
4
  import { existsSync } from 'node:fs';
5
5
  import { join } from 'node:path';
6
6
  import { tmpdir } from 'node:os';
7
- import { readModeState, startMode } from '../../modes/base.js';
7
+ import { startMode } from '../../modes/base.js';
8
8
  import { getBaseStateDir, getStatePath } from '../../state/paths.js';
9
9
  import { writeRoleRoutingMarker } from '../../subagents/role-routing-marker.js';
10
10
  import { subagentTrackingPath } from '../../subagents/tracker.js';
11
- import { cancelRalplanConsensus, runRalplanConsensus } from '../runtime.js';
11
+ import { cancelRalplanConsensus, isCompletedAdvisoryCatchRecovery, runRalplanConsensus } from '../runtime.js';
12
+ import { readCurrentRalplanAdvisory } from '../advisory.js';
13
+ import { __setRalplanAdvisoryLifecycleHooksForTests, verifyAdvisoryCatchRecovery, } from '../runtime-advisory-lifecycle.js';
12
14
  function sessionStatePath(cwd, sessionId) {
13
15
  return getStatePath('ralplan', cwd, sessionId);
14
16
  }
@@ -24,10 +26,10 @@ async function writeSessionPointer(cwd, sessionId) {
24
26
  async function readScopedRalplanState(cwd, sessionId) {
25
27
  return JSON.parse(await readFile(sessionStatePath(cwd, sessionId), 'utf-8'));
26
28
  }
27
- async function writeNativeSubagentTracking(cwd, sessionId) {
28
- const architectCompletedAt = '2026-05-28T00:00:00.000Z';
29
- const criticStartedAt = '2026-05-28T00:05:00.000Z';
30
- const criticCompletedAt = '2026-05-28T00:10:00.000Z';
29
+ async function writeNativeSubagentTracking(cwd, sessionId, postActivation = false) {
30
+ const architectCompletedAt = postActivation ? new Date(Date.now() + 1_000).toISOString() : '2026-05-28T00:00:00.000Z';
31
+ const criticStartedAt = postActivation ? new Date(Date.now() + 2_000).toISOString() : '2026-05-28T00:05:00.000Z';
32
+ const criticCompletedAt = postActivation ? new Date(Date.now() + 3_000).toISOString() : '2026-05-28T00:10:00.000Z';
31
33
  const trackingPath = subagentTrackingPath(cwd);
32
34
  await mkdir(join(trackingPath, '..'), { recursive: true });
33
35
  await writeFile(trackingPath, JSON.stringify({
@@ -53,6 +55,9 @@ async function writeNativeSubagentTracking(cwd, sessionId) {
53
55
  completed_at: architectCompletedAt,
54
56
  turn_count: 1,
55
57
  role: 'architect',
58
+ provenance_kind: 'native_subagent',
59
+ direct_child_root_id: 'thread-leader',
60
+ direct_child_parent_id: 'thread-leader',
56
61
  },
57
62
  'thread-critic': {
58
63
  thread_id: 'thread-critic',
@@ -62,6 +67,9 @@ async function writeNativeSubagentTracking(cwd, sessionId) {
62
67
  completed_at: criticCompletedAt,
63
68
  turn_count: 1,
64
69
  role: 'critic',
70
+ provenance_kind: 'native_subagent',
71
+ direct_child_root_id: 'thread-leader',
72
+ direct_child_parent_id: 'thread-leader',
65
73
  },
66
74
  },
67
75
  },
@@ -105,6 +113,38 @@ async function writeAdaptedSubagentTracking(cwd, sessionId) {
105
113
  evidence: 'OMX adapted role intent consumed for native child SessionStart',
106
114
  });
107
115
  }
116
+ async function runApprovedAdvisoryFixture(cwd, sessionId, duringCriticReview) {
117
+ await writeSessionPointer(cwd, sessionId);
118
+ await writeNativeSubagentTracking(cwd, sessionId, true);
119
+ await mkdir(join(cwd, '.omx', 'artifacts'), { recursive: true });
120
+ await writeFile(join(cwd, '.omx', 'artifacts', 'architect.md'), 'APPROVE\n');
121
+ await writeFile(join(cwd, '.omx', 'artifacts', 'critic.md'), 'APPROVE\n');
122
+ return runRalplanConsensus({
123
+ async draft() {
124
+ await mkdir(join(cwd, '.omx', 'plans'), { recursive: true });
125
+ const planPath = join(cwd, '.omx', 'plans', 'advisory.md');
126
+ await writeFile(planPath, '# approved plan\n');
127
+ return { planPath, summary: 'draft' };
128
+ },
129
+ async architectReview() {
130
+ return {
131
+ verdict: 'approve', agent_role: 'architect', provenance_kind: 'native_subagent',
132
+ session_id: sessionId, thread_id: 'thread-architect', artifact_path: '.omx/artifacts/architect.md',
133
+ };
134
+ },
135
+ async criticReview() {
136
+ await duringCriticReview?.();
137
+ return {
138
+ verdict: 'approve', agent_role: 'critic', provenance_kind: 'native_subagent',
139
+ session_id: sessionId, thread_id: 'thread-critic', artifact_path: '.omx/artifacts/critic.md',
140
+ };
141
+ },
142
+ }, {
143
+ task: 'produce advisory only', cwd, sessionId, maxIterations: 1, requireNativeSubagents: true,
144
+ workflowVariant: 'advisory', advisoryProducer: 'native', advisoryThreadKind: 'root-or-drift',
145
+ rootThreadId: 'thread-leader', activationTurnId: 'turn-a', closingTurnId: 'turn-a',
146
+ });
147
+ }
108
148
  describe('ralplan runtime', () => {
109
149
  let savedOmxEnv;
110
150
  beforeEach(() => {
@@ -120,6 +160,7 @@ describe('ralplan runtime', () => {
120
160
  delete process.env.OMX_SESSION_ID;
121
161
  });
122
162
  afterEach(() => {
163
+ __setRalplanAdvisoryLifecycleHooksForTests({});
123
164
  for (const key of ['OMX_ROOT', 'OMX_STATE_ROOT', 'OMX_TEAM_STATE_ROOT', 'OMX_SESSION_ID']) {
124
165
  const value = savedOmxEnv[key];
125
166
  if (value === undefined)
@@ -128,6 +169,31 @@ describe('ralplan runtime', () => {
128
169
  process.env[key] = value;
129
170
  }
130
171
  });
172
+ it('preserves the primary failure when Advisory reconciliation verification throws', async () => {
173
+ const primary = new Error('primary');
174
+ const recovery = new Error('reconcile failed');
175
+ __setRalplanAdvisoryLifecycleHooksForTests({ reconcile: async () => { throw recovery; } });
176
+ await assert.rejects(verifyAdvisoryCatchRecovery({ cwd: '/tmp', sessionId: 'session-a', generationId: 'generation-a', primaryError: primary }), (error) => error instanceof AggregateError && error.errors[0] === primary && error.errors[1] === recovery);
177
+ });
178
+ it('preserves the primary failure when Advisory binding verification throws', async () => {
179
+ const primary = new Error('primary');
180
+ const bindingError = new Error('binding read failed');
181
+ __setRalplanAdvisoryLifecycleHooksForTests({
182
+ reconcile: async () => ({ corruption: null, fence: { state: 'closed' }, journal: { outcome: 'approved' } }),
183
+ readBinding: async () => { throw bindingError; },
184
+ });
185
+ await assert.rejects(verifyAdvisoryCatchRecovery({ cwd: '/tmp', sessionId: 'session-a', generationId: 'generation-a', primaryError: primary }), (error) => error instanceof AggregateError && error.errors[0] === primary && error.errors[1] === bindingError);
186
+ });
187
+ it('distinguishes valid approved catch recovery from explicit absence', async () => {
188
+ const input = { cwd: '/tmp', sessionId: 'session-a', generationId: 'generation-a', primaryError: new Error('primary') };
189
+ __setRalplanAdvisoryLifecycleHooksForTests({
190
+ reconcile: async () => ({ corruption: null, fence: { state: 'closed' }, journal: { outcome: 'approved' } }),
191
+ readBinding: async () => ({ mode: 'ralplan', session_id: 'session-a', workflow_variant: 'advisory', advisory_generation_id: 'generation-a', active: false }),
192
+ });
193
+ assert.equal(await verifyAdvisoryCatchRecovery(input), true);
194
+ __setRalplanAdvisoryLifecycleHooksForTests({ reconcile: async () => null, readBinding: async () => null });
195
+ assert.equal(await verifyAdvisoryCatchRecovery(input), false);
196
+ });
131
197
  it('marks failed cleanly when execution throws', async () => {
132
198
  const cwd = await mkdtemp(join(tmpdir(), 'omx-ralplan-runtime-fail-'));
133
199
  const sessionId = 'sess-ralplan-fail';
@@ -147,7 +213,7 @@ describe('ralplan runtime', () => {
147
213
  }, { task: 'failing ralplan runtime', cwd });
148
214
  assert.equal(result.status, 'failed');
149
215
  assert.match(result.error || '', /architect blew up/);
150
- const finalState = await readModeState('ralplan', cwd);
216
+ const finalState = await readScopedRalplanState(cwd, sessionId);
151
217
  assert.equal(finalState?.active, false);
152
218
  assert.equal(finalState?.current_phase, 'failed');
153
219
  assert.match(String(finalState?.status_message || ''), /Status: failed/);
@@ -216,4 +282,347 @@ describe('ralplan runtime', () => {
216
282
  }
217
283
  });
218
284
  });
285
+ describe('ralplan advisory runtime', () => {
286
+ it('rejects the restricted Advisory start profile without its matching durable intent', async () => {
287
+ const cwd = await mkdtemp(join(tmpdir(), 'omx-ralplan-advisory-profile-'));
288
+ const sessionId = 'sess-advisory-profile';
289
+ try {
290
+ await writeSessionPointer(cwd, sessionId);
291
+ await assert.rejects(() => startMode('ralplan', 'cannot mint advisory state', 1, cwd, sessionId, {
292
+ kind: 'ralplan-advisory', sessionId, generationId: 'generation-a',
293
+ rootThreadId: 'thread-leader', activationTurnId: 'turn-a',
294
+ activationPrompt: 'cannot mint advisory state',
295
+ }), /ralplan_advisory_start_profile_intent_mismatch/);
296
+ assert.equal(existsSync(sessionStatePath(cwd, sessionId)), false);
297
+ }
298
+ finally {
299
+ await rm(cwd, { recursive: true, force: true });
300
+ }
301
+ });
302
+ it('publishes a complete Advisory binding on the first mode write and retries after an intent-only crash', async () => {
303
+ const cwd = await mkdtemp(join(tmpdir(), 'omx-ralplan-advisory-intent-retry-'));
304
+ const sessionId = 'sess-advisory-intent-retry';
305
+ const priorNodeEnv = process.env.NODE_ENV;
306
+ const priorFailpoint = process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT;
307
+ try {
308
+ process.env.NODE_ENV = 'test';
309
+ process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT = 'after_intent';
310
+ await writeSessionPointer(cwd, sessionId);
311
+ await writeNativeSubagentTracking(cwd, sessionId, true);
312
+ await mkdir(join(cwd, '.omx', 'artifacts'), { recursive: true });
313
+ await writeFile(join(cwd, '.omx', 'artifacts', 'architect.md'), 'APPROVE\n');
314
+ await writeFile(join(cwd, '.omx', 'artifacts', 'critic.md'), 'APPROVE\n');
315
+ const executor = {
316
+ async draft() {
317
+ await mkdir(join(cwd, '.omx', 'plans'), { recursive: true });
318
+ const planPath = join(cwd, '.omx', 'plans', 'advisory.md');
319
+ await writeFile(planPath, '# approved plan\n');
320
+ return { planPath, summary: 'draft' };
321
+ },
322
+ async architectReview() {
323
+ return { verdict: 'approve', agent_role: 'architect', provenance_kind: 'native_subagent', session_id: sessionId, thread_id: 'thread-architect', artifact_path: '.omx/artifacts/architect.md' };
324
+ },
325
+ async criticReview() {
326
+ return { verdict: 'approve', agent_role: 'critic', provenance_kind: 'native_subagent', session_id: sessionId, thread_id: 'thread-critic', artifact_path: '.omx/artifacts/critic.md' };
327
+ },
328
+ };
329
+ const options = {
330
+ task: 'retry advisory startup', cwd, sessionId, maxIterations: 1, requireNativeSubagents: true,
331
+ workflowVariant: 'advisory', advisoryProducer: 'native', advisoryThreadKind: 'root-or-drift', rootThreadId: 'thread-leader', activationTurnId: 'turn-intent', closingTurnId: 'turn-intent',
332
+ };
333
+ await assert.rejects(() => runRalplanConsensus(executor, options), /startup_test_failpoint:after_intent/);
334
+ assert.equal(existsSync(sessionStatePath(cwd, sessionId)), false, 'intent must precede every mode write');
335
+ assert.equal(existsSync(join(cwd, '.omx', 'state', 'sessions', sessionId, 'ralplan-advisory', 'rollover-intent.json')), true);
336
+ delete process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT;
337
+ const result = await runRalplanConsensus(executor, options);
338
+ assert.equal(result.status, 'completed', result.error ?? 'retry should complete');
339
+ const state = await readScopedRalplanState(cwd, sessionId);
340
+ assert.equal(state.workflow_variant, 'advisory');
341
+ assert.equal(state.execution_handoff_authorized, false);
342
+ assert.equal(state.host_verified, false);
343
+ }
344
+ finally {
345
+ if (priorNodeEnv === undefined)
346
+ delete process.env.NODE_ENV;
347
+ else
348
+ process.env.NODE_ENV = priorNodeEnv;
349
+ if (priorFailpoint === undefined)
350
+ delete process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT;
351
+ else
352
+ process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT = priorFailpoint;
353
+ await rm(cwd, { recursive: true, force: true });
354
+ }
355
+ });
356
+ it('retries idempotently after the Advisory mode binding is durable but activation is not committed', async () => {
357
+ const cwd = await mkdtemp(join(tmpdir(), 'omx-ralplan-advisory-mode-retry-'));
358
+ const sessionId = 'sess-advisory-mode-retry';
359
+ const priorNodeEnv = process.env.NODE_ENV;
360
+ const priorFailpoint = process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT;
361
+ try {
362
+ process.env.NODE_ENV = 'test';
363
+ process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT = 'after_mode';
364
+ await writeSessionPointer(cwd, sessionId);
365
+ await writeNativeSubagentTracking(cwd, sessionId, true);
366
+ await mkdir(join(cwd, '.omx', 'artifacts'), { recursive: true });
367
+ await writeFile(join(cwd, '.omx', 'artifacts', 'architect.md'), 'APPROVE\n');
368
+ await writeFile(join(cwd, '.omx', 'artifacts', 'critic.md'), 'APPROVE\n');
369
+ const executor = {
370
+ async draft() {
371
+ await mkdir(join(cwd, '.omx', 'plans'), { recursive: true });
372
+ const planPath = join(cwd, '.omx', 'plans', 'advisory.md');
373
+ await writeFile(planPath, '# approved plan\n');
374
+ return { planPath, summary: 'draft' };
375
+ },
376
+ async architectReview() { return { verdict: 'approve', agent_role: 'architect', provenance_kind: 'native_subagent', session_id: sessionId, thread_id: 'thread-architect', artifact_path: '.omx/artifacts/architect.md' }; },
377
+ async criticReview() { return { verdict: 'approve', agent_role: 'critic', provenance_kind: 'native_subagent', session_id: sessionId, thread_id: 'thread-critic', artifact_path: '.omx/artifacts/critic.md' }; },
378
+ };
379
+ const options = {
380
+ task: 'retry bound advisory startup', cwd, sessionId, maxIterations: 1, requireNativeSubagents: true,
381
+ workflowVariant: 'advisory', advisoryProducer: 'native', advisoryThreadKind: 'root-or-drift', rootThreadId: 'thread-leader', activationTurnId: 'turn-mode', closingTurnId: 'turn-mode',
382
+ };
383
+ await assert.rejects(() => runRalplanConsensus(executor, options), /startup_test_failpoint:after_mode/);
384
+ const firstBinding = await readScopedRalplanState(cwd, sessionId);
385
+ assert.equal(firstBinding.workflow_variant, 'advisory');
386
+ assert.equal(firstBinding.execution_handoff_authorized, false);
387
+ assert.equal(firstBinding.host_verified, false);
388
+ const generationId = String(firstBinding.advisory_generation_id);
389
+ delete process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT;
390
+ const result = await runRalplanConsensus(executor, options);
391
+ assert.equal(result.status, 'completed', result.error ?? 'retry should complete');
392
+ const projection = await readCurrentRalplanAdvisory(cwd, sessionId);
393
+ assert.equal(projection?.activation.generation_id, generationId, 'retry must reuse the durable generation intent');
394
+ }
395
+ finally {
396
+ if (priorNodeEnv === undefined)
397
+ delete process.env.NODE_ENV;
398
+ else
399
+ process.env.NODE_ENV = priorNodeEnv;
400
+ if (priorFailpoint === undefined)
401
+ delete process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT;
402
+ else
403
+ process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT = priorFailpoint;
404
+ await rm(cwd, { recursive: true, force: true });
405
+ }
406
+ });
407
+ it('does not mutate a standard or foreign Advisory binding that wins after intent preparation', async () => {
408
+ const priorNodeEnv = process.env.NODE_ENV;
409
+ const priorFailpoint = process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT;
410
+ try {
411
+ process.env.NODE_ENV = 'test';
412
+ for (const competitor of ['standard', 'foreign-advisory']) {
413
+ const cwd = await mkdtemp(join(tmpdir(), `omx-ralplan-advisory-race-${competitor}-`));
414
+ const sessionId = `sess-advisory-race-${competitor}`;
415
+ try {
416
+ await writeSessionPointer(cwd, sessionId);
417
+ const executor = {
418
+ async draft() { return { summary: 'unreachable' }; },
419
+ async architectReview() { return { verdict: 'approve' }; },
420
+ async criticReview() { return { verdict: 'approve' }; },
421
+ };
422
+ const options = {
423
+ task: `race ${competitor}`, cwd, sessionId, maxIterations: 1,
424
+ workflowVariant: 'advisory', advisoryProducer: 'native', advisoryThreadKind: 'root-or-drift', rootThreadId: 'thread-leader',
425
+ activationTurnId: 'turn-race', closingTurnId: 'turn-race',
426
+ };
427
+ process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT = 'after_intent';
428
+ await assert.rejects(() => runRalplanConsensus(executor, options), /startup_test_failpoint:after_intent/);
429
+ const competingBinding = competitor === 'standard'
430
+ ? { active: true, mode: 'ralplan', session_id: sessionId, current_phase: 'draft' }
431
+ : {
432
+ active: true, mode: 'ralplan', session_id: sessionId, current_phase: 'draft',
433
+ workflow_variant: 'advisory', advisory_generation_id: 'foreign-generation',
434
+ execution_handoff_authorized: false, host_verified: false,
435
+ };
436
+ await mkdir(join(sessionStatePath(cwd, sessionId), '..'), { recursive: true });
437
+ const competingBytes = `${JSON.stringify(competingBinding, null, 2)}\n`;
438
+ await writeFile(sessionStatePath(cwd, sessionId), competingBytes);
439
+ delete process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT;
440
+ await assert.rejects(() => runRalplanConsensus(executor, options), /ralplan_advisory_start_binding_conflict/);
441
+ assert.equal(await readFile(sessionStatePath(cwd, sessionId), 'utf-8'), competingBytes);
442
+ }
443
+ finally {
444
+ await rm(cwd, { recursive: true, force: true });
445
+ }
446
+ }
447
+ }
448
+ finally {
449
+ if (priorNodeEnv === undefined)
450
+ delete process.env.NODE_ENV;
451
+ else
452
+ process.env.NODE_ENV = priorNodeEnv;
453
+ if (priorFailpoint === undefined)
454
+ delete process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT;
455
+ else
456
+ process.env.OMX_RALPLAN_ADVISORY_STARTUP_FAILPOINT = priorFailpoint;
457
+ }
458
+ });
459
+ it('returns completed only after a byte-bound tracker-backed lifecycle closes the durable fence', async () => {
460
+ const cwd = await mkdtemp(join(tmpdir(), 'omx-ralplan-advisory-runtime-'));
461
+ const sessionId = 'sess-advisory-runtime';
462
+ try {
463
+ await mkdir(join(sessionStatePath(cwd, sessionId), '..'), { recursive: true });
464
+ await writeSessionPointer(cwd, sessionId);
465
+ await writeNativeSubagentTracking(cwd, sessionId, true);
466
+ await mkdir(join(cwd, '.omx', 'artifacts'), { recursive: true });
467
+ await writeFile(join(cwd, '.omx', 'artifacts', 'architect.md'), 'APPROVE\n');
468
+ await writeFile(join(cwd, '.omx', 'artifacts', 'critic.md'), 'APPROVE\n');
469
+ const result = await runRalplanConsensus({
470
+ async draft() {
471
+ await mkdir(join(cwd, '.omx', 'plans'), { recursive: true });
472
+ const planPath = join(cwd, '.omx', 'plans', 'advisory.md');
473
+ await writeFile(planPath, '# approved plan\n');
474
+ return { planPath, summary: 'draft' };
475
+ },
476
+ async architectReview() {
477
+ return {
478
+ verdict: 'approve', agent_role: 'architect', provenance_kind: 'native_subagent',
479
+ session_id: sessionId, thread_id: 'thread-architect', artifact_path: '.omx/artifacts/architect.md',
480
+ };
481
+ },
482
+ async criticReview() {
483
+ return {
484
+ verdict: 'approve', agent_role: 'critic', provenance_kind: 'native_subagent',
485
+ session_id: sessionId, thread_id: 'thread-critic', artifact_path: '.omx/artifacts/critic.md',
486
+ };
487
+ },
488
+ }, {
489
+ task: 'produce advisory only', cwd, sessionId, maxIterations: 1, requireNativeSubagents: true,
490
+ workflowVariant: 'advisory', advisoryProducer: 'native', advisoryThreadKind: 'root-or-drift', rootThreadId: 'thread-leader', activationTurnId: 'turn-a', closingTurnId: 'turn-a',
491
+ });
492
+ assert.equal(result.status, 'completed', result.error ?? 'advisory runtime did not complete');
493
+ assert.equal(result.planningComplete, true);
494
+ assert.equal(result.executionHandoffAuthorized, false);
495
+ assert.equal(result.ralplanConsensusGate.complete, false);
496
+ assert.equal(result.ralplanReviewLifecycle?.complete, true);
497
+ const projection = await readCurrentRalplanAdvisory(cwd, sessionId);
498
+ assert.equal(projection?.fence?.state, 'closed');
499
+ assert.equal(projection?.journal?.phase, 'committed');
500
+ const state = await readScopedRalplanState(cwd, sessionId);
501
+ assert.equal(state.active, false);
502
+ assert.equal(state.workflow_variant, 'advisory');
503
+ assert.equal(state.execution_handoff_authorized, false);
504
+ assert.equal(state.status_message, 'Status: advisory complete — local review lifecycle approved; control returned to the caller without an automatic execution handoff. Later user instructions follow normal host rules.');
505
+ }
506
+ finally {
507
+ await rm(cwd, { recursive: true, force: true });
508
+ }
509
+ });
510
+ it('fails closed when the Architect artifact changes after Architect review', async () => {
511
+ const cwd = await mkdtemp(join(tmpdir(), 'omx-ralplan-advisory-architect-baseline-'));
512
+ const sessionId = 'sess-advisory-architect-baseline';
513
+ try {
514
+ const result = await runApprovedAdvisoryFixture(cwd, sessionId, async () => {
515
+ await writeFile(join(cwd, '.omx', 'artifacts', 'architect.md'), 'MUTATED\n');
516
+ });
517
+ assert.equal(result.status, 'failed');
518
+ assert.match(result.error ?? '', /review_artifact_baseline_mismatch/);
519
+ const projection = await readCurrentRalplanAdvisory(cwd, sessionId);
520
+ assert.notEqual(projection?.journal?.outcome, 'approved');
521
+ assert.equal(projection?.journal?.integrity_status, 'proven');
522
+ }
523
+ finally {
524
+ await rm(cwd, { recursive: true, force: true });
525
+ }
526
+ });
527
+ it('fails closeout revalidation when the Critic artifact changes after lifecycle projection', async () => {
528
+ const cwd = await mkdtemp(join(tmpdir(), 'omx-ralplan-advisory-critic-baseline-'));
529
+ const sessionId = 'sess-advisory-critic-baseline';
530
+ let projections = 0;
531
+ try {
532
+ __setRalplanAdvisoryLifecycleHooksForTests({
533
+ beforeProjectLifecycle: async () => {
534
+ projections += 1;
535
+ if (projections === 2) {
536
+ await writeFile(join(cwd, '.omx', 'artifacts', 'critic.md'), 'MUTATED\n');
537
+ }
538
+ },
539
+ });
540
+ await assert.rejects(runApprovedAdvisoryFixture(cwd, sessionId), /closeout_binding_mismatch/);
541
+ const projection = await readCurrentRalplanAdvisory(cwd, sessionId);
542
+ assert.notEqual(projection?.fence?.state, 'closed');
543
+ assert.notEqual(projection?.journal?.integrity_status, 'proven');
544
+ }
545
+ finally {
546
+ __setRalplanAdvisoryLifecycleHooksForTests({});
547
+ await rm(cwd, { recursive: true, force: true });
548
+ }
549
+ });
550
+ it('recovers a stored approved journal in the runtime catch path', async () => {
551
+ const cwd = await mkdtemp(join(tmpdir(), 'omx-ralplan-advisory-runtime-catch-'));
552
+ const sessionId = 'sess-advisory-runtime-catch';
553
+ const priorNodeEnv = process.env.NODE_ENV;
554
+ const priorFailpoint = process.env.OMX_RALPLAN_ADVISORY_FAILPOINT;
555
+ try {
556
+ process.env.NODE_ENV = 'test';
557
+ process.env.OMX_RALPLAN_ADVISORY_FAILPOINT = 'journal-prepare';
558
+ await mkdir(join(sessionStatePath(cwd, sessionId), '..'), { recursive: true });
559
+ await writeSessionPointer(cwd, sessionId);
560
+ await writeNativeSubagentTracking(cwd, sessionId, true);
561
+ await mkdir(join(cwd, '.omx', 'artifacts'), { recursive: true });
562
+ await writeFile(join(cwd, '.omx', 'artifacts', 'architect.md'), 'APPROVE\n');
563
+ await writeFile(join(cwd, '.omx', 'artifacts', 'critic.md'), 'APPROVE\n');
564
+ const result = await runRalplanConsensus({
565
+ async draft() {
566
+ await mkdir(join(cwd, '.omx', 'plans'), { recursive: true });
567
+ const planPath = join(cwd, '.omx', 'plans', 'advisory.md');
568
+ await writeFile(planPath, '# approved plan\n');
569
+ return { planPath, summary: 'draft' };
570
+ },
571
+ async architectReview() {
572
+ return { verdict: 'approve', agent_role: 'architect', provenance_kind: 'native_subagent', session_id: sessionId, thread_id: 'thread-architect', artifact_path: '.omx/artifacts/architect.md' };
573
+ },
574
+ async criticReview() {
575
+ return { verdict: 'approve', agent_role: 'critic', provenance_kind: 'native_subagent', session_id: sessionId, thread_id: 'thread-critic', artifact_path: '.omx/artifacts/critic.md' };
576
+ },
577
+ }, {
578
+ task: 'recover approved advisory', cwd, sessionId, maxIterations: 1, requireNativeSubagents: true,
579
+ workflowVariant: 'advisory', advisoryProducer: 'native', advisoryThreadKind: 'root-or-drift', rootThreadId: 'thread-leader', activationTurnId: 'turn-a', closingTurnId: 'turn-a',
580
+ });
581
+ assert.equal(result.status, 'completed', result.error ?? 'runtime did not recover approved journal');
582
+ const projection = await readCurrentRalplanAdvisory(cwd, sessionId);
583
+ assert.equal(projection?.journal?.outcome, 'approved');
584
+ assert.equal(projection?.fence?.state, 'closed');
585
+ assert.equal(result.planningComplete, true);
586
+ }
587
+ finally {
588
+ if (priorNodeEnv === undefined)
589
+ delete process.env.NODE_ENV;
590
+ else
591
+ process.env.NODE_ENV = priorNodeEnv;
592
+ if (priorFailpoint === undefined)
593
+ delete process.env.OMX_RALPLAN_ADVISORY_FAILPOINT;
594
+ else
595
+ process.env.OMX_RALPLAN_ADVISORY_FAILPOINT = priorFailpoint;
596
+ await rm(cwd, { recursive: true, force: true });
597
+ }
598
+ });
599
+ it('fails closed for every invalid catch recovery projection or binding', () => {
600
+ const sessionId = 'sess-advisory-runtime-catch';
601
+ const generationId = 'generation-a';
602
+ const recovered = {
603
+ fence: { state: 'closed' },
604
+ journal: { outcome: 'approved' },
605
+ corruption: null,
606
+ };
607
+ const binding = {
608
+ mode: 'ralplan', session_id: sessionId, workflow_variant: 'advisory',
609
+ advisory_generation_id: generationId, active: false,
610
+ };
611
+ assert.equal(isCompletedAdvisoryCatchRecovery(recovered, binding, sessionId, generationId), true);
612
+ for (const corruption of [
613
+ 'closed_without_committed_journal', 'admin_event_invalid', 'rollover_pending_admin', 'live_session_binding_conflict',
614
+ ]) {
615
+ assert.equal(isCompletedAdvisoryCatchRecovery({ ...recovered, corruption }, binding, sessionId, generationId), false, corruption);
616
+ }
617
+ for (const invalidBinding of [
618
+ null,
619
+ { ...binding, active: true },
620
+ { ...binding, session_id: 'other-session' },
621
+ { ...binding, advisory_generation_id: 'other-generation' },
622
+ { mode: 'ralplan', session_id: sessionId, workflow_variant: 'advisory', active: false },
623
+ ]) {
624
+ assert.equal(isCompletedAdvisoryCatchRecovery(recovered, invalidBinding, sessionId, generationId), false);
625
+ }
626
+ });
627
+ });
219
628
  //# sourceMappingURL=runtime.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.test.js","sourceRoot":"","sources":["../../../src/ralplan/__tests__/runtime.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAE5E,SAAS,gBAAgB,CAAC,GAAW,EAAE,SAAiB;IACtD,OAAO,YAAY,CAAC,SAAS,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;AACjD,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,GAAW,EAAE,SAAiB;IAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,MAAM,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC;QAC7D,UAAU,EAAE,SAAS;QACrB,GAAG;QACH,UAAU,EAAE,QAAQ;KACrB,CAAC,CAAC,CAAC;AACN,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,GAAW,EAAE,SAAiB;IAClE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,gBAAgB,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,KAAK,UAAU,2BAA2B,CAAC,GAAW,EAAE,SAAiB;IACvE,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;IACxD,MAAM,eAAe,GAAG,0BAA0B,CAAC;IACnD,MAAM,iBAAiB,GAAG,0BAA0B,CAAC;IACrD,MAAM,YAAY,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,MAAM,SAAS,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC;QAC3C,aAAa,EAAE,CAAC;QAChB,QAAQ,EAAE;YACR,CAAC,SAAS,CAAC,EAAE;gBACX,UAAU,EAAE,SAAS;gBACrB,gBAAgB,EAAE,eAAe;gBACjC,UAAU,EAAE,iBAAiB;gBAC7B,OAAO,EAAE;oBACP,eAAe,EAAE;wBACf,SAAS,EAAE,eAAe;wBAC1B,IAAI,EAAE,QAAQ;wBACd,aAAa,EAAE,oBAAoB;wBACnC,YAAY,EAAE,oBAAoB;wBAClC,UAAU,EAAE,CAAC;qBACd;oBACD,kBAAkB,EAAE;wBAClB,SAAS,EAAE,kBAAkB;wBAC7B,IAAI,EAAE,UAAU;wBAChB,aAAa,EAAE,oBAAoB;wBACnC,YAAY,EAAE,oBAAoB;wBAClC,YAAY,EAAE,oBAAoB;wBAClC,UAAU,EAAE,CAAC;wBACb,IAAI,EAAE,WAAW;qBAClB;oBACD,eAAe,EAAE;wBACf,SAAS,EAAE,eAAe;wBAC1B,IAAI,EAAE,UAAU;wBAChB,aAAa,EAAE,eAAe;wBAC9B,YAAY,EAAE,iBAAiB;wBAC/B,YAAY,EAAE,iBAAiB;wBAC/B,UAAU,EAAE,CAAC;wBACb,IAAI,EAAE,QAAQ;qBACf;iBACF;aACF;SACF;KACF,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACf,CAAC;AAED,KAAK,UAAU,4BAA4B,CAAC,GAAW,EAAE,SAAiB;IACxE,MAAM,2BAA2B,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAEhE,CAAC;IACF,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IACtD,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC3E,KAAK,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,kBAAkB,EAAE,WAAW,CAAC,EAAE,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAU,EAAE,CAAC;QACzG,OAAO,CAAC,QAAQ,CAAC,GAAG;YAClB,GAAG,OAAO,CAAC,QAAQ,CAAC;YACpB,IAAI;YACJ,eAAe,EAAE,aAAa;SAC/B,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,kBAAkB,CAAC,GAAG;QAC5B,GAAG,OAAO,CAAC,kBAAkB,CAAC;QAC9B,aAAa,EAAE,0BAA0B;QACzC,YAAY,EAAE,0BAA0B;QACxC,YAAY,EAAE,0BAA0B;KACzC,CAAC;IACF,OAAO,CAAC,eAAe,CAAC,GAAG;QACzB,GAAG,OAAO,CAAC,eAAe,CAAC;QAC3B,aAAa,EAAE,0BAA0B;QACzC,YAAY,EAAE,0BAA0B;QACxC,YAAY,EAAE,0BAA0B;KACzC,CAAC;IACF,MAAM,SAAS,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACjE,sBAAsB,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE;QAC3C,cAAc,EAAE,CAAC;QACjB,GAAG;QACH,UAAU,EAAE,SAAS;QACrB,gBAAgB,EAAE,eAAe;QACjC,WAAW,EAAE,0BAA0B;QACvC,UAAU,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE;QACvD,QAAQ,EAAE,gEAAgE;KAC3E,CAAC,CAAC;AACL,CAAC;AAED,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,IAAI,WAA8G,CAAC;IAEnH,UAAU,CAAC,GAAG,EAAE;QACd,WAAW,GAAG;YACZ,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ;YAC9B,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;YAC1C,mBAAmB,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;YACpD,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;SAC3C,CAAC;QACF,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;QAC5B,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QAClC,OAAO,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;QACvC,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,gBAAgB,CAAU,EAAE,CAAC;YACnG,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAC/B,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;;gBAC5C,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAChC,CAAC;IACH,CAAC,CAAC,CAAC;IAYH,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QAC1D,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,2BAA2B,CAAC,CAAC,CAAC;QACvE,MAAM,SAAS,GAAG,mBAAmB,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/E,MAAM,mBAAmB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAE1C,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC;gBACvC,KAAK,CAAC,KAAK;oBACT,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;gBAC9B,CAAC;gBACD,KAAK,CAAC,eAAe;oBACnB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBACvC,CAAC;gBACD,KAAK,CAAC,YAAY;oBAChB,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBACpC,CAAC;aACF,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE,GAAG,EAAE,CAAC,CAAC;YAE7C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE,mBAAmB,CAAC,CAAC;YAEtD,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YACvD,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YACxC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;YAClD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,cAAc,IAAI,EAAE,CAAC,EAAE,gBAAgB,CAAC,CAAC;YACzE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,mBAAmB,CAAC,CAAC;QACrE,CAAC;gBAAS,CAAC;YACT,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sFAAsF,EAAE,KAAK,IAAI,EAAE;QACpG,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,gCAAgC,CAAC,CAAC,CAAC;QAC5E,MAAM,SAAS,GAAG,wBAAwB,CAAC;QAC3C,IAAI,CAAC;YACH,MAAM,mBAAmB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAC1C,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7D,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,UAAU,CAAC,CAAC;YACnE,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7D,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,CAAC,EAAE,kBAAkB,CAAC,CAAC;YACnF,MAAM,SAAS,CAAC,WAAW,EAAE,qBAAqB,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;YACvE,MAAM,EAAE,4BAA4B,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;YAC7E,MAAM,4BAA4B,CAAC;gBACjC,MAAM,EAAE,IAAI;gBACZ,aAAa,EAAE,SAAS;gBACxB,gBAAgB,EAAE,GAAG;gBACrB,UAAU,EAAE,SAAS;gBACrB,YAAY,EAAE,CAAC;gBACf,mBAAmB,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,wBAAwB,EAAE;gBAChF,iBAAiB,EAAE,EAAE,cAAc,EAAE,EAAE,SAAS,EAAE,4BAA4B,EAAE,EAAE;aACnF,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;YAEnB,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC;gBACvC,KAAK,CAAC,KAAK,KAAK,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC;gBAC9E,KAAK,CAAC,eAAe,KAAK,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;gBACnF,KAAK,CAAC,YAAY,KAAK,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;aAC9E,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,GAAG,EAAE,SAAS,EAAE,qBAAqB,EAAE,WAAW,EAAE,CAAC,CAAC;YAExF,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,KAAK,IAAI,yBAAyB,CAAC,CAAC;YACpF,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YAClF,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAC7D,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;YAChD,MAAM,CAAC,KAAK,CAAE,OAAO,CAAC,yBAAqD,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YACnG,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,sBAAsB,CAAC,EAAE,OAAO,CAAC,CAA4B,CAAC;YAC5J,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;YACnD,MAAM,CAAC,KAAK,CAAE,SAAS,CAAC,yBAAqD,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YACrG,MAAM,CAAC,KAAK,CAAE,SAAS,CAAC,yBAAqD,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACnG,MAAM,CAAC,KAAK,CAAE,SAAS,CAAC,sBAAkD,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC7F,CAAC;gBAAS,CAAC;YACT,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,6BAA6B,CAAC,CAAC,CAAC;QACzE,MAAM,SAAS,GAAG,qBAAqB,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/E,MAAM,mBAAmB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAE1C,MAAM,SAAS,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;YAC3D,MAAM,sBAAsB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAE7C,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAChE,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YACxC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;YACrD,MAAM,CAAC,EAAE,CAAC,OAAO,UAAU,EAAE,YAAY,KAAK,QAAQ,IAAI,UAAU,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC9F,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACpF,CAAC;gBAAS,CAAC;YACT,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"runtime.test.js","sourceRoot":"","sources":["../../../src/ralplan/__tests__/runtime.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { syncDirectory, syncRegularFile } from '../utils/file-durability.js';
2
+ /** @internal Durability seam for deterministic Windows tests. */
3
+ export declare const ADVISORY_ACTIVATION_VERIFIER_TEST_SEAM: {
4
+ fileSync?: typeof syncRegularFile;
5
+ directorySync?: typeof syncDirectory;
6
+ };
7
+ export type AdvisoryProjectionPredicate = (value: Record<string, unknown>) => boolean;
8
+ export interface AdvisoryActivationProjectionDescriptor {
9
+ path: string;
10
+ predicate: AdvisoryProjectionPredicate;
11
+ }
12
+ export declare function verifyPinnedJsonAndSync(path: string, predicate: AdvisoryProjectionPredicate, beforeSync?: () => void | Promise<void>): Promise<Record<string, unknown>>;
13
+ export declare function describeAdvisoryActivationProjections(stateDir: string, sessionId: string, generationId: string): {
14
+ mode: AdvisoryActivationProjectionDescriptor;
15
+ run: AdvisoryActivationProjectionDescriptor;
16
+ sessionSkill: AdvisoryActivationProjectionDescriptor;
17
+ rootSkill: AdvisoryActivationProjectionDescriptor;
18
+ };
19
+ //# sourceMappingURL=advisory-activation-verifier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"advisory-activation-verifier.d.ts","sourceRoot":"","sources":["../../src/ralplan/advisory-activation-verifier.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE7E,iEAAiE;AACjE,eAAO,MAAM,sCAAsC,EAAE;IACnD,QAAQ,CAAC,EAAE,OAAO,eAAe,CAAC;IAClC,aAAa,CAAC,EAAE,OAAO,aAAa,CAAC;CACjC,CAAC;AAEP,MAAM,MAAM,2BAA2B,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;AAEtF,MAAM,WAAW,sCAAsC;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,2BAA2B,CAAC;CACxC;AAUD,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,2BAA2B,EACtC,UAAU,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GACtC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAmClC;AAED,wBAAgB,qCAAqC,CACnD,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,GACnB;IACD,IAAI,EAAE,sCAAsC,CAAC;IAC7C,GAAG,EAAE,sCAAsC,CAAC;IAC5C,YAAY,EAAE,sCAAsC,CAAC;IACrD,SAAS,EAAE,sCAAsC,CAAC;CACnD,CAoBA"}