botmux 3.5.2 → 3.6.0

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 (458) hide show
  1. package/README.en.md +56 -396
  2. package/README.md +55 -396
  3. package/dist/.runtime-build-id +1 -0
  4. package/dist/adapters/cli/claude-code.d.ts +6 -0
  5. package/dist/adapters/cli/claude-code.d.ts.map +1 -1
  6. package/dist/adapters/cli/claude-code.js +197 -11
  7. package/dist/adapters/cli/claude-code.js.map +1 -1
  8. package/dist/adapters/cli/coco.js +4 -4
  9. package/dist/adapters/cli/coco.js.map +1 -1
  10. package/dist/adapters/cli/codex-app.d.ts.map +1 -1
  11. package/dist/adapters/cli/codex-app.js +9 -6
  12. package/dist/adapters/cli/codex-app.js.map +1 -1
  13. package/dist/adapters/cli/codex.js +5 -5
  14. package/dist/adapters/cli/codex.js.map +1 -1
  15. package/dist/adapters/cli/fs-policy.d.ts.map +1 -1
  16. package/dist/adapters/cli/fs-policy.js +5 -7
  17. package/dist/adapters/cli/fs-policy.js.map +1 -1
  18. package/dist/adapters/cli/grok.d.ts +2 -1
  19. package/dist/adapters/cli/grok.d.ts.map +1 -1
  20. package/dist/adapters/cli/grok.js +2 -1
  21. package/dist/adapters/cli/grok.js.map +1 -1
  22. package/dist/adapters/cli/hermes.d.ts.map +1 -1
  23. package/dist/adapters/cli/hermes.js +8 -4
  24. package/dist/adapters/cli/hermes.js.map +1 -1
  25. package/dist/adapters/cli/mtr.d.ts.map +1 -1
  26. package/dist/adapters/cli/mtr.js +3 -2
  27. package/dist/adapters/cli/mtr.js.map +1 -1
  28. package/dist/adapters/cli/opencode.d.ts.map +1 -1
  29. package/dist/adapters/cli/opencode.js +5 -4
  30. package/dist/adapters/cli/opencode.js.map +1 -1
  31. package/dist/adapters/cli/relay.js +2 -2
  32. package/dist/adapters/cli/relay.js.map +1 -1
  33. package/dist/adapters/cli/runner-input.d.ts +2 -2
  34. package/dist/adapters/cli/runner-input.d.ts.map +1 -1
  35. package/dist/adapters/cli/runner-input.js +9 -6
  36. package/dist/adapters/cli/runner-input.js.map +1 -1
  37. package/dist/adapters/cli/seed.d.ts.map +1 -1
  38. package/dist/adapters/cli/seed.js +2 -1
  39. package/dist/adapters/cli/seed.js.map +1 -1
  40. package/dist/adapters/cli/traex.d.ts.map +1 -1
  41. package/dist/adapters/cli/traex.js +3 -2
  42. package/dist/adapters/cli/traex.js.map +1 -1
  43. package/dist/adapters/cli/types.d.ts +25 -18
  44. package/dist/adapters/cli/types.d.ts.map +1 -1
  45. package/dist/bot-registry.d.ts +28 -0
  46. package/dist/bot-registry.d.ts.map +1 -1
  47. package/dist/bot-registry.js +75 -0
  48. package/dist/bot-registry.js.map +1 -1
  49. package/dist/cli.d.ts.map +1 -1
  50. package/dist/cli.js +272 -86
  51. package/dist/cli.js.map +1 -1
  52. package/dist/codex-app-runner.js +85 -192
  53. package/dist/codex-app-runner.js.map +1 -1
  54. package/dist/config.d.ts +0 -16
  55. package/dist/config.d.ts.map +1 -1
  56. package/dist/config.js +0 -30
  57. package/dist/config.js.map +1 -1
  58. package/dist/core/ask-broker.d.ts +12 -0
  59. package/dist/core/ask-broker.d.ts.map +1 -1
  60. package/dist/core/ask-broker.js +41 -0
  61. package/dist/core/ask-broker.js.map +1 -1
  62. package/dist/core/bot-turn-mutation-gate.d.ts +24 -0
  63. package/dist/core/bot-turn-mutation-gate.d.ts.map +1 -0
  64. package/dist/core/bot-turn-mutation-gate.js +369 -0
  65. package/dist/core/bot-turn-mutation-gate.js.map +1 -0
  66. package/dist/core/command-handler.d.ts +5 -0
  67. package/dist/core/command-handler.d.ts.map +1 -1
  68. package/dist/core/command-handler.js +38 -16
  69. package/dist/core/command-handler.js.map +1 -1
  70. package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
  71. package/dist/core/dashboard-ipc-server.js +330 -57
  72. package/dist/core/dashboard-ipc-server.js.map +1 -1
  73. package/dist/core/dashboard-rows.d.ts +8 -0
  74. package/dist/core/dashboard-rows.d.ts.map +1 -1
  75. package/dist/core/dashboard-rows.js.map +1 -1
  76. package/dist/core/host-overload-alert.d.ts +157 -0
  77. package/dist/core/host-overload-alert.d.ts.map +1 -0
  78. package/dist/core/host-overload-alert.js +251 -0
  79. package/dist/core/host-overload-alert.js.map +1 -0
  80. package/dist/core/passthrough-commands.d.ts +8 -0
  81. package/dist/core/passthrough-commands.d.ts.map +1 -1
  82. package/dist/core/passthrough-commands.js +19 -0
  83. package/dist/core/passthrough-commands.js.map +1 -1
  84. package/dist/core/restart-coordinator.d.ts +28 -0
  85. package/dist/core/restart-coordinator.d.ts.map +1 -0
  86. package/dist/core/restart-coordinator.js +82 -0
  87. package/dist/core/restart-coordinator.js.map +1 -0
  88. package/dist/core/restart-followup-policy.d.ts +112 -0
  89. package/dist/core/restart-followup-policy.d.ts.map +1 -0
  90. package/dist/core/restart-followup-policy.js +49 -0
  91. package/dist/core/restart-followup-policy.js.map +1 -0
  92. package/dist/core/role-library.d.ts +1 -1
  93. package/dist/core/role-library.js +1 -1
  94. package/dist/core/session-cwd.d.ts.map +1 -1
  95. package/dist/core/session-cwd.js +8 -0
  96. package/dist/core/session-cwd.js.map +1 -1
  97. package/dist/core/session-discovery.d.ts +14 -0
  98. package/dist/core/session-discovery.d.ts.map +1 -1
  99. package/dist/core/session-discovery.js +25 -0
  100. package/dist/core/session-discovery.js.map +1 -1
  101. package/dist/core/session-liveness.d.ts +15 -0
  102. package/dist/core/session-liveness.d.ts.map +1 -0
  103. package/dist/core/session-liveness.js +76 -0
  104. package/dist/core/session-liveness.js.map +1 -0
  105. package/dist/core/session-row-enrichment.d.ts +15 -0
  106. package/dist/core/session-row-enrichment.d.ts.map +1 -0
  107. package/dist/core/session-row-enrichment.js +93 -0
  108. package/dist/core/session-row-enrichment.js.map +1 -0
  109. package/dist/core/slash-inject.js +1 -1
  110. package/dist/core/slash-inject.js.map +1 -1
  111. package/dist/core/trigger-final-suppression.d.ts +24 -0
  112. package/dist/core/trigger-final-suppression.d.ts.map +1 -0
  113. package/dist/core/trigger-final-suppression.js +97 -0
  114. package/dist/core/trigger-final-suppression.js.map +1 -0
  115. package/dist/core/trigger-session.d.ts.map +1 -1
  116. package/dist/core/trigger-session.js +64 -4
  117. package/dist/core/trigger-session.js.map +1 -1
  118. package/dist/core/types.d.ts +6 -0
  119. package/dist/core/types.d.ts.map +1 -1
  120. package/dist/core/types.js.map +1 -1
  121. package/dist/core/worker-pool.d.ts +20 -0
  122. package/dist/core/worker-pool.d.ts.map +1 -1
  123. package/dist/core/worker-pool.js +283 -32
  124. package/dist/core/worker-pool.js.map +1 -1
  125. package/dist/daemon.d.ts +5 -1
  126. package/dist/daemon.d.ts.map +1 -1
  127. package/dist/daemon.js +520 -35
  128. package/dist/daemon.js.map +1 -1
  129. package/dist/dashboard/aggregator.d.ts +1 -0
  130. package/dist/dashboard/aggregator.d.ts.map +1 -1
  131. package/dist/dashboard/aggregator.js +34 -6
  132. package/dist/dashboard/aggregator.js.map +1 -1
  133. package/dist/dashboard/bot-payload.d.ts +3 -0
  134. package/dist/dashboard/bot-payload.d.ts.map +1 -1
  135. package/dist/dashboard/bot-payload.js +3 -0
  136. package/dist/dashboard/bot-payload.js.map +1 -1
  137. package/dist/dashboard/compat.d.ts +102 -2
  138. package/dist/dashboard/compat.d.ts.map +1 -1
  139. package/dist/dashboard/compat.js +78 -14
  140. package/dist/dashboard/compat.js.map +1 -1
  141. package/dist/dashboard/connector-api.d.ts.map +1 -1
  142. package/dist/dashboard/connector-api.js +1 -0
  143. package/dist/dashboard/connector-api.js.map +1 -1
  144. package/dist/dashboard/desktop-asks.d.ts +21 -0
  145. package/dist/dashboard/desktop-asks.d.ts.map +1 -0
  146. package/dist/dashboard/desktop-asks.js +49 -0
  147. package/dist/dashboard/desktop-asks.js.map +1 -0
  148. package/dist/dashboard/public-redact.d.ts +7 -0
  149. package/dist/dashboard/public-redact.d.ts.map +1 -1
  150. package/dist/dashboard/public-redact.js +35 -3
  151. package/dist/dashboard/public-redact.js.map +1 -1
  152. package/dist/dashboard/session-presentation.d.ts +16 -0
  153. package/dist/dashboard/session-presentation.d.ts.map +1 -0
  154. package/dist/dashboard/session-presentation.js +62 -0
  155. package/dist/dashboard/session-presentation.js.map +1 -0
  156. package/dist/dashboard/settings-write-applier.d.ts +2 -1
  157. package/dist/dashboard/settings-write-applier.d.ts.map +1 -1
  158. package/dist/dashboard/settings-write-applier.js +19 -1
  159. package/dist/dashboard/settings-write-applier.js.map +1 -1
  160. package/dist/dashboard/trigger-api.d.ts.map +1 -1
  161. package/dist/dashboard/trigger-api.js +19 -1
  162. package/dist/dashboard/trigger-api.js.map +1 -1
  163. package/dist/dashboard/vc-consumer-profiles-api.d.ts +7 -2
  164. package/dist/dashboard/vc-consumer-profiles-api.d.ts.map +1 -1
  165. package/dist/dashboard/vc-consumer-profiles-api.js +13 -0
  166. package/dist/dashboard/vc-consumer-profiles-api.js.map +1 -1
  167. package/dist/dashboard/web/app.d.ts.map +1 -1
  168. package/dist/dashboard/web/app.js +18 -5
  169. package/dist/dashboard/web/app.js.map +1 -1
  170. package/dist/dashboard/web/bot-defaults-page.d.ts +1 -1
  171. package/dist/dashboard/web/bot-defaults-page.d.ts.map +1 -1
  172. package/dist/dashboard/web/bot-defaults-page.js +97 -35
  173. package/dist/dashboard/web/bot-defaults-page.js.map +1 -1
  174. package/dist/dashboard/web/bot-defaults.d.ts +3 -0
  175. package/dist/dashboard/web/bot-defaults.d.ts.map +1 -1
  176. package/dist/dashboard/web/bot-defaults.js.map +1 -1
  177. package/dist/dashboard/web/client-shell.d.ts +29 -0
  178. package/dist/dashboard/web/client-shell.d.ts.map +1 -0
  179. package/dist/dashboard/web/client-shell.js +89 -0
  180. package/dist/dashboard/web/client-shell.js.map +1 -0
  181. package/dist/dashboard/web/connectors-page.d.ts.map +1 -1
  182. package/dist/dashboard/web/connectors-page.js +5 -1
  183. package/dist/dashboard/web/connectors-page.js.map +1 -1
  184. package/dist/dashboard/web/i18n.d.ts.map +1 -1
  185. package/dist/dashboard/web/i18n.js +100 -8
  186. package/dist/dashboard/web/i18n.js.map +1 -1
  187. package/dist/dashboard/web/preferences.d.ts +7 -0
  188. package/dist/dashboard/web/preferences.d.ts.map +1 -1
  189. package/dist/dashboard/web/preferences.js +32 -0
  190. package/dist/dashboard/web/preferences.js.map +1 -1
  191. package/dist/dashboard/web/sessions-kanban.d.ts +1 -1
  192. package/dist/dashboard/web/sessions-kanban.d.ts.map +1 -1
  193. package/dist/dashboard/web/sessions-kanban.js +1 -1
  194. package/dist/dashboard/web/sessions-kanban.js.map +1 -1
  195. package/dist/dashboard/web/sessions-page.d.ts.map +1 -1
  196. package/dist/dashboard/web/sessions-page.js +77 -23
  197. package/dist/dashboard/web/sessions-page.js.map +1 -1
  198. package/dist/dashboard/web/sessions.d.ts +4 -0
  199. package/dist/dashboard/web/sessions.d.ts.map +1 -1
  200. package/dist/dashboard/web/sessions.js +14 -1
  201. package/dist/dashboard/web/sessions.js.map +1 -1
  202. package/dist/dashboard/web/settings-page.d.ts +6 -0
  203. package/dist/dashboard/web/settings-page.d.ts.map +1 -1
  204. package/dist/dashboard/web/settings-page.js +55 -30
  205. package/dist/dashboard/web/settings-page.js.map +1 -1
  206. package/dist/dashboard/web/store.d.ts +1 -2
  207. package/dist/dashboard/web/store.d.ts.map +1 -1
  208. package/dist/dashboard/web/store.js +69 -20
  209. package/dist/dashboard/web/store.js.map +1 -1
  210. package/dist/dashboard/web/vc-consumer-profiles-section.d.ts.map +1 -1
  211. package/dist/dashboard/web/vc-consumer-profiles-section.js +128 -42
  212. package/dist/dashboard/web/vc-consumer-profiles-section.js.map +1 -1
  213. package/dist/dashboard/webhook-routes.d.ts.map +1 -1
  214. package/dist/dashboard/webhook-routes.js +9 -2
  215. package/dist/dashboard/webhook-routes.js.map +1 -1
  216. package/dist/dashboard-web/app.js +1 -1
  217. package/dist/dashboard-web/chunks/bot-defaults-page-VQMPUJ4Y.js +10 -0
  218. package/dist/dashboard-web/chunks/chunk-AGCPF6MT.js +1 -0
  219. package/dist/dashboard-web/chunks/{chunk-KPQAUX7V.js → chunk-JMRGZQDB.js} +1 -1
  220. package/dist/dashboard-web/chunks/{chunk-R7IAKAYX.js → chunk-NP4JUBGS.js} +1 -1
  221. package/dist/dashboard-web/chunks/{chunk-NRL6CVAS.js → chunk-P327LXOT.js} +1 -1
  222. package/dist/dashboard-web/chunks/{chunk-X2L65IOM.js → chunk-SNKATZWK.js} +15 -15
  223. package/dist/dashboard-web/chunks/connectors-page-DOY4J3ZL.js +1 -0
  224. package/dist/dashboard-web/chunks/{groups-page-6DKXBYOM.js → groups-page-74TS2DIH.js} +1 -1
  225. package/dist/dashboard-web/chunks/{insights-page-NWARTJ6J.js → insights-page-AYCO65JC.js} +1 -1
  226. package/dist/dashboard-web/chunks/{monitor-room-AGX3XRJX.js → monitor-room-YKYLTSAN.js} +1 -1
  227. package/dist/dashboard-web/chunks/{monitoring-page-GGGIWN4C.js → monitoring-page-QBIUNRBR.js} +1 -1
  228. package/dist/dashboard-web/chunks/{office-page-6SIVKSK3.js → office-page-4PH2A26P.js} +1 -1
  229. package/dist/dashboard-web/chunks/overview-page-H73D5UT4.js +1 -0
  230. package/dist/dashboard-web/chunks/{roles-page-WE2YB7KN.js → roles-page-U4BTOQ7F.js} +1 -1
  231. package/dist/dashboard-web/chunks/{schedules-page-TB3I24XN.js → schedules-page-RHRHX7R7.js} +1 -1
  232. package/dist/dashboard-web/chunks/sessions-page-VSC6AM5G.js +2 -0
  233. package/dist/dashboard-web/chunks/settings-page-LF3RKM5P.js +2 -0
  234. package/dist/dashboard-web/chunks/{skills-page-3QAT2IWD.js → skills-page-SYOIGGXH.js} +1 -1
  235. package/dist/dashboard-web/chunks/{team-federation-page-K4VVAVAK.js → team-federation-page-RMBLASTW.js} +1 -1
  236. package/dist/dashboard-web/chunks/{v3-page-V6IOJR2B.js → v3-page-XJXKKJRN.js} +1 -1
  237. package/dist/dashboard-web/chunks/{whiteboards-page-V6CGKRNX.js → whiteboards-page-K3YVSTHJ.js} +1 -1
  238. package/dist/dashboard-web/style.css +551 -0
  239. package/dist/dashboard.js +153 -9
  240. package/dist/dashboard.js.map +1 -1
  241. package/dist/global-config.d.ts +11 -0
  242. package/dist/global-config.d.ts.map +1 -1
  243. package/dist/global-config.js +23 -0
  244. package/dist/global-config.js.map +1 -1
  245. package/dist/i18n/en.d.ts.map +1 -1
  246. package/dist/i18n/en.js +5 -0
  247. package/dist/i18n/en.js.map +1 -1
  248. package/dist/i18n/zh.d.ts.map +1 -1
  249. package/dist/i18n/zh.js +5 -0
  250. package/dist/i18n/zh.js.map +1 -1
  251. package/dist/im/lark/card-builder.d.ts +1 -1
  252. package/dist/im/lark/card-builder.js +1 -1
  253. package/dist/im/lark/card-handler.d.ts +10 -0
  254. package/dist/im/lark/card-handler.d.ts.map +1 -1
  255. package/dist/im/lark/card-handler.js +163 -17
  256. package/dist/im/lark/card-handler.js.map +1 -1
  257. package/dist/im/lark/client.d.ts +11 -0
  258. package/dist/im/lark/client.d.ts.map +1 -1
  259. package/dist/im/lark/client.js +47 -18
  260. package/dist/im/lark/client.js.map +1 -1
  261. package/dist/im/lark/event-dispatcher.d.ts +13 -0
  262. package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
  263. package/dist/im/lark/event-dispatcher.js +20 -0
  264. package/dist/im/lark/event-dispatcher.js.map +1 -1
  265. package/dist/im/lark/identity-cache.d.ts +25 -1
  266. package/dist/im/lark/identity-cache.d.ts.map +1 -1
  267. package/dist/im/lark/identity-cache.js +47 -1
  268. package/dist/im/lark/identity-cache.js.map +1 -1
  269. package/dist/im/lark/overload-nonce.d.ts +19 -0
  270. package/dist/im/lark/overload-nonce.d.ts.map +1 -0
  271. package/dist/im/lark/overload-nonce.js +72 -0
  272. package/dist/im/lark/overload-nonce.js.map +1 -0
  273. package/dist/im/lark/v3-progress-card.d.ts.map +1 -1
  274. package/dist/im/lark/v3-progress-card.js +5 -0
  275. package/dist/im/lark/v3-progress-card.js.map +1 -1
  276. package/dist/services/async-trigger-state.d.ts +82 -0
  277. package/dist/services/async-trigger-state.d.ts.map +1 -0
  278. package/dist/services/async-trigger-state.js +95 -0
  279. package/dist/services/async-trigger-state.js.map +1 -0
  280. package/dist/services/async-trigger-store.d.ts +28 -0
  281. package/dist/services/async-trigger-store.d.ts.map +1 -0
  282. package/dist/services/async-trigger-store.js +120 -0
  283. package/dist/services/async-trigger-store.js.map +1 -0
  284. package/dist/services/bot-config-store.d.ts.map +1 -1
  285. package/dist/services/bot-config-store.js +34 -2
  286. package/dist/services/bot-config-store.js.map +1 -1
  287. package/dist/services/bridge-fallback-gate.d.ts +32 -0
  288. package/dist/services/bridge-fallback-gate.d.ts.map +1 -1
  289. package/dist/services/bridge-fallback-gate.js +39 -0
  290. package/dist/services/bridge-fallback-gate.js.map +1 -1
  291. package/dist/services/bridge-turn-queue.d.ts.map +1 -1
  292. package/dist/services/bridge-turn-queue.js +15 -1
  293. package/dist/services/bridge-turn-queue.js.map +1 -1
  294. package/dist/services/card-prefs-store.d.ts +4 -0
  295. package/dist/services/card-prefs-store.d.ts.map +1 -1
  296. package/dist/services/card-prefs-store.js +8 -0
  297. package/dist/services/card-prefs-store.js.map +1 -1
  298. package/dist/services/claude-transcript.d.ts +23 -0
  299. package/dist/services/claude-transcript.d.ts.map +1 -1
  300. package/dist/services/claude-transcript.js +33 -0
  301. package/dist/services/claude-transcript.js.map +1 -1
  302. package/dist/services/codex-app-runner-protocol.d.ts +61 -0
  303. package/dist/services/codex-app-runner-protocol.d.ts.map +1 -0
  304. package/dist/services/codex-app-runner-protocol.js +170 -0
  305. package/dist/services/codex-app-runner-protocol.js.map +1 -0
  306. package/dist/services/codex-app-turn-controller.d.ts +72 -0
  307. package/dist/services/codex-app-turn-controller.d.ts.map +1 -0
  308. package/dist/services/codex-app-turn-controller.js +524 -0
  309. package/dist/services/codex-app-turn-controller.js.map +1 -0
  310. package/dist/services/codex-runner-freshness.d.ts +39 -0
  311. package/dist/services/codex-runner-freshness.d.ts.map +1 -0
  312. package/dist/services/codex-runner-freshness.js +78 -0
  313. package/dist/services/codex-runner-freshness.js.map +1 -0
  314. package/dist/services/connector-store.d.ts +6 -0
  315. package/dist/services/connector-store.d.ts.map +1 -1
  316. package/dist/services/connector-store.js.map +1 -1
  317. package/dist/services/grant-store.d.ts.map +1 -1
  318. package/dist/services/grant-store.js +16 -0
  319. package/dist/services/grant-store.js.map +1 -1
  320. package/dist/services/hermes-transcript.d.ts +1 -0
  321. package/dist/services/hermes-transcript.d.ts.map +1 -1
  322. package/dist/services/hermes-transcript.js +49 -0
  323. package/dist/services/hermes-transcript.js.map +1 -1
  324. package/dist/services/schedule-split-migration.d.ts +2 -0
  325. package/dist/services/schedule-split-migration.d.ts.map +1 -0
  326. package/dist/services/schedule-split-migration.js +159 -0
  327. package/dist/services/schedule-split-migration.js.map +1 -0
  328. package/dist/services/schedule-store.d.ts +28 -4
  329. package/dist/services/schedule-store.d.ts.map +1 -1
  330. package/dist/services/schedule-store.js +118 -33
  331. package/dist/services/schedule-store.js.map +1 -1
  332. package/dist/services/trigger-types.d.ts +18 -1
  333. package/dist/services/trigger-types.d.ts.map +1 -1
  334. package/dist/services/trigger-types.js +3 -0
  335. package/dist/services/trigger-types.js.map +1 -1
  336. package/dist/services/vc-meeting-consumer-profile-store.d.ts.map +1 -1
  337. package/dist/services/vc-meeting-consumer-profile-store.js +1 -0
  338. package/dist/services/vc-meeting-consumer-profile-store.js.map +1 -1
  339. package/dist/services/vc-meeting-consumer-profile-templates.d.ts +32 -0
  340. package/dist/services/vc-meeting-consumer-profile-templates.d.ts.map +1 -0
  341. package/dist/services/vc-meeting-consumer-profile-templates.js +106 -0
  342. package/dist/services/vc-meeting-consumer-profile-templates.js.map +1 -0
  343. package/dist/services/vc-meeting-delivery-feed.d.ts +1 -1
  344. package/dist/services/vc-meeting-delivery-feed.d.ts.map +1 -1
  345. package/dist/services/vc-meeting-delivery-feed.js +2 -1
  346. package/dist/services/vc-meeting-delivery-feed.js.map +1 -1
  347. package/dist/services/vc-meeting-delivery-hub-store.d.ts +3 -1
  348. package/dist/services/vc-meeting-delivery-hub-store.d.ts.map +1 -1
  349. package/dist/services/vc-meeting-delivery-hub-store.js +11 -0
  350. package/dist/services/vc-meeting-delivery-hub-store.js.map +1 -1
  351. package/dist/services/vc-meeting-delivery-protocol.d.ts +9 -2
  352. package/dist/services/vc-meeting-delivery-protocol.d.ts.map +1 -1
  353. package/dist/services/vc-meeting-delivery-protocol.js +10 -1
  354. package/dist/services/vc-meeting-delivery-protocol.js.map +1 -1
  355. package/dist/services/vc-meeting-delivery-receiver.d.ts.map +1 -1
  356. package/dist/services/vc-meeting-delivery-receiver.js +10 -1
  357. package/dist/services/vc-meeting-delivery-receiver.js.map +1 -1
  358. package/dist/services/vc-meeting-delivery-store.d.ts +12 -2
  359. package/dist/services/vc-meeting-delivery-store.d.ts.map +1 -1
  360. package/dist/services/vc-meeting-delivery-store.js +14 -2
  361. package/dist/services/vc-meeting-delivery-store.js.map +1 -1
  362. package/dist/services/vc-meeting-im-reply.d.ts +2 -1
  363. package/dist/services/vc-meeting-im-reply.d.ts.map +1 -1
  364. package/dist/services/vc-meeting-im-reply.js +19 -3
  365. package/dist/services/vc-meeting-im-reply.js.map +1 -1
  366. package/dist/services/vc-meeting-listener-output-protocol.d.ts +27 -0
  367. package/dist/services/vc-meeting-listener-output-protocol.d.ts.map +1 -0
  368. package/dist/services/vc-meeting-listener-output-protocol.js +58 -0
  369. package/dist/services/vc-meeting-listener-output-protocol.js.map +1 -0
  370. package/dist/services/vc-meeting-listener-topic-store.d.ts +31 -0
  371. package/dist/services/vc-meeting-listener-topic-store.d.ts.map +1 -0
  372. package/dist/services/vc-meeting-listener-topic-store.js +120 -0
  373. package/dist/services/vc-meeting-listener-topic-store.js.map +1 -0
  374. package/dist/services/vc-meeting-runtime-store.d.ts +2 -1
  375. package/dist/services/vc-meeting-runtime-store.d.ts.map +1 -1
  376. package/dist/services/vc-meeting-runtime-store.js +8 -0
  377. package/dist/services/vc-meeting-runtime-store.js.map +1 -1
  378. package/dist/services/vc-meeting-send-policy.d.ts +8 -1
  379. package/dist/services/vc-meeting-send-policy.d.ts.map +1 -1
  380. package/dist/services/vc-meeting-send-policy.js +8 -0
  381. package/dist/services/vc-meeting-send-policy.js.map +1 -1
  382. package/dist/types.d.ts +40 -3
  383. package/dist/types.d.ts.map +1 -1
  384. package/dist/utils/allowed-users-apply.d.ts +76 -0
  385. package/dist/utils/allowed-users-apply.d.ts.map +1 -0
  386. package/dist/utils/allowed-users-apply.js +123 -0
  387. package/dist/utils/allowed-users-apply.js.map +1 -0
  388. package/dist/utils/allowed-users-cache.d.ts +29 -0
  389. package/dist/utils/allowed-users-cache.d.ts.map +1 -0
  390. package/dist/utils/allowed-users-cache.js +82 -0
  391. package/dist/utils/allowed-users-cache.js.map +1 -0
  392. package/dist/utils/child-env.d.ts +2 -1
  393. package/dist/utils/child-env.d.ts.map +1 -1
  394. package/dist/utils/child-env.js +2 -1
  395. package/dist/utils/child-env.js.map +1 -1
  396. package/dist/utils/cli-usage-limit.d.ts +27 -1
  397. package/dist/utils/cli-usage-limit.d.ts.map +1 -1
  398. package/dist/utils/cli-usage-limit.js +92 -20
  399. package/dist/utils/cli-usage-limit.js.map +1 -1
  400. package/dist/utils/input-gate.d.ts +2 -0
  401. package/dist/utils/input-gate.d.ts.map +1 -1
  402. package/dist/utils/input-gate.js +2 -0
  403. package/dist/utils/input-gate.js.map +1 -1
  404. package/dist/utils/runtime-build-id.d.ts +21 -0
  405. package/dist/utils/runtime-build-id.d.ts.map +1 -0
  406. package/dist/utils/runtime-build-id.js +83 -0
  407. package/dist/utils/runtime-build-id.js.map +1 -0
  408. package/dist/utils/terminal-renderer.d.ts +3 -3
  409. package/dist/utils/terminal-renderer.js +3 -3
  410. package/dist/vc-agent/cards.d.ts.map +1 -1
  411. package/dist/vc-agent/cards.js +21 -1
  412. package/dist/vc-agent/cards.js.map +1 -1
  413. package/dist/worker.js +601 -179
  414. package/dist/worker.js.map +1 -1
  415. package/dist/workflows/hostExecutors/botmux-schedule.d.ts.map +1 -1
  416. package/dist/workflows/hostExecutors/botmux-schedule.js +13 -1
  417. package/dist/workflows/hostExecutors/botmux-schedule.js.map +1 -1
  418. package/dist/workflows/migration/v2-run-archive-schema.d.ts +20 -20
  419. package/dist/workflows/migration/v2-to-v3.d.ts.map +1 -1
  420. package/dist/workflows/migration/v2-to-v3.js +5 -1
  421. package/dist/workflows/migration/v2-to-v3.js.map +1 -1
  422. package/dist/workflows/v3/architect.d.ts.map +1 -1
  423. package/dist/workflows/v3/architect.js +1 -0
  424. package/dist/workflows/v3/architect.js.map +1 -1
  425. package/dist/workflows/v3/cli-run.d.ts +9 -0
  426. package/dist/workflows/v3/cli-run.d.ts.map +1 -1
  427. package/dist/workflows/v3/cli-run.js +17 -2
  428. package/dist/workflows/v3/cli-run.js.map +1 -1
  429. package/dist/workflows/v3/goal-cli.d.ts +58 -0
  430. package/dist/workflows/v3/goal-cli.d.ts.map +1 -0
  431. package/dist/workflows/v3/goal-cli.js +430 -0
  432. package/dist/workflows/v3/goal-cli.js.map +1 -0
  433. package/dist/workflows/v3/library-materialize.d.ts.map +1 -1
  434. package/dist/workflows/v3/library-materialize.js +5 -1
  435. package/dist/workflows/v3/library-materialize.js.map +1 -1
  436. package/dist/workflows/v3/library-schema.d.ts +21 -0
  437. package/dist/workflows/v3/library-schema.d.ts.map +1 -1
  438. package/dist/workflows/v3/library-schema.js +95 -1
  439. package/dist/workflows/v3/library-schema.js.map +1 -1
  440. package/dist/workflows/v3/progress-projection.d.ts +3 -0
  441. package/dist/workflows/v3/progress-projection.d.ts.map +1 -1
  442. package/dist/workflows/v3/progress-projection.js +23 -1
  443. package/dist/workflows/v3/progress-projection.js.map +1 -1
  444. package/dist/workflows/v3/run-envelope.d.ts +46 -1
  445. package/dist/workflows/v3/run-envelope.d.ts.map +1 -1
  446. package/dist/workflows/v3/run-envelope.js +32 -1
  447. package/dist/workflows/v3/run-envelope.js.map +1 -1
  448. package/package.json +2 -2
  449. package/dist/dashboard-web/chunks/bot-defaults-page-AUKV7P4L.js +0 -10
  450. package/dist/dashboard-web/chunks/chunk-SZOB6VK2.js +0 -1
  451. package/dist/dashboard-web/chunks/connectors-page-HDQFEXZI.js +0 -1
  452. package/dist/dashboard-web/chunks/overview-page-FVR3NKAF.js +0 -1
  453. package/dist/dashboard-web/chunks/sessions-page-KOOOASIL.js +0 -2
  454. package/dist/dashboard-web/chunks/settings-page-IEBR7TGN.js +0 -2
  455. package/dist/utils/screen-analyzer.d.ts +0 -75
  456. package/dist/utils/screen-analyzer.d.ts.map +0 -1
  457. package/dist/utils/screen-analyzer.js +0 -333
  458. package/dist/utils/screen-analyzer.js.map +0 -1
@@ -0,0 +1,58 @@
1
+ /**
2
+ * `botmux goal run` — a small, daemon-free product entrypoint for one real
3
+ * headless goal. It deliberately reuses the v3 run envelope, journal, drive
4
+ * lease, worker fence, ephemeral pool, and manifest validator. There is no
5
+ * second scheduler or mutable result store here.
6
+ */
7
+ import { type BotConfig } from '../../bot-registry.js';
8
+ import { readAndValidateManifest } from './manifest.js';
9
+ import type { ManifestFile, RunNode, ValidateManifest } from './contract.js';
10
+ export declare const GOAL_RUN_REQUEST_SCHEMA: "botmux.goal-run-request/v1";
11
+ export declare const GOAL_RUN_RESULT_SCHEMA: "botmux.goal-run-result/v1";
12
+ export declare const GOAL_RUN_EXIT: {
13
+ readonly succeeded: 0;
14
+ readonly failed: 10;
15
+ readonly blocked: 11;
16
+ readonly cancelled: 12;
17
+ readonly conflict: 13;
18
+ readonly error: 14;
19
+ };
20
+ export type GoalRunTerminalState = 'succeeded' | 'failed' | 'blocked' | 'cancelled';
21
+ export interface GoalRunResultV1 {
22
+ schemaVersion: typeof GOAL_RUN_RESULT_SCHEMA;
23
+ runId: string | null;
24
+ state: GoalRunTerminalState | 'conflict' | 'error';
25
+ exitCode: number;
26
+ summary?: string;
27
+ error?: {
28
+ code: string;
29
+ message: string;
30
+ };
31
+ artifacts?: ManifestFile[];
32
+ runDirectory?: {
33
+ path: string;
34
+ stability: 'informative-only';
35
+ };
36
+ }
37
+ interface SignalEmitter {
38
+ on(signal: NodeJS.Signals, listener: () => void): unknown;
39
+ off(signal: NodeJS.Signals, listener: () => void): unknown;
40
+ }
41
+ export interface GoalCliDependencies {
42
+ loadBots: () => BotConfig[];
43
+ makeRunNode: (bots: BotConfig[]) => RunNode;
44
+ validateManifest: ValidateManifest;
45
+ readValidatedManifest: typeof readAndValidateManifest;
46
+ signalEmitter: SignalEmitter;
47
+ now: () => Date;
48
+ newRunId: () => string;
49
+ stdout: Pick<NodeJS.WriteStream, 'write'> & {
50
+ fd?: number;
51
+ };
52
+ stderr: Pick<NodeJS.WriteStream, 'write'>;
53
+ }
54
+ export declare function projectGoalRunTerminal(runId: string, runDir: string, deps: GoalCliDependencies): Promise<GoalRunResultV1 | undefined>;
55
+ /** Dispatcher for `botmux goal <sub>`. Returns an exit code; never calls exit. */
56
+ export declare function cmdGoal(sub: string, rest: string[], overrides?: Partial<GoalCliDependencies>): Promise<number>;
57
+ export {};
58
+ //# sourceMappingURL=goal-cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"goal-cli.d.ts","sourceRoot":"","sources":["../../../src/workflows/v3/goal-cli.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAkB,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAOvE,OAAO,EAAE,uBAAuB,EAA2B,MAAM,eAAe,CAAC;AAYjF,OAAO,KAAK,EAGV,YAAY,EACZ,OAAO,EACP,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAMvB,eAAO,MAAM,uBAAuB,EAAG,4BAAqC,CAAC;AAC7E,eAAO,MAAM,sBAAsB,EAAG,2BAAoC,CAAC;AAE3E,eAAO,MAAM,aAAa;;;;;;;CAOhB,CAAC;AA0BX,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;AAEpF,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,OAAO,sBAAsB,CAAC;IAC7C,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,oBAAoB,GAAG,UAAU,GAAG,OAAO,CAAC;IACnD,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE;QACb,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,kBAAkB,CAAC;KAC/B,CAAC;CACH;AAED,UAAU,aAAa;IACrB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC;IAC1D,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC;CAC5D;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,SAAS,EAAE,CAAC;IAC5B,WAAW,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,OAAO,CAAC;IAC5C,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,qBAAqB,EAAE,OAAO,uBAAuB,CAAC;IACtD,aAAa,EAAE,aAAa,CAAC;IAC7B,GAAG,EAAE,MAAM,IAAI,CAAC;IAChB,QAAQ,EAAE,MAAM,MAAM,CAAC;IACvB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,GAAG;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5D,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;CAC3C;AA4JD,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAuBtC;AAqOD,kFAAkF;AAClF,wBAAsB,OAAO,CAC3B,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EAAE,EACd,SAAS,GAAE,OAAO,CAAC,mBAAmB,CAAM,GAC3C,OAAO,CAAC,MAAM,CAAC,CA8BjB"}
@@ -0,0 +1,430 @@
1
+ /**
2
+ * `botmux goal run` — a small, daemon-free product entrypoint for one real
3
+ * headless goal. It deliberately reuses the v3 run envelope, journal, drive
4
+ * lease, worker fence, ephemeral pool, and manifest validator. There is no
5
+ * second scheduler or mutable result store here.
6
+ */
7
+ import { randomUUID } from 'node:crypto';
8
+ import { readFileSync, writeFileSync } from 'node:fs';
9
+ import { dirname, join, resolve } from 'node:path';
10
+ import { loadBotConfigs } from '../../bot-registry.js';
11
+ import { withFileLock } from '../../utils/file-lock.js';
12
+ import { expandHomePath } from '../../utils/working-dir.js';
13
+ import { validateDag, MAX_NODE_TIMEOUT_SEC } from './dag.js';
14
+ import { v3DriveLeaseTarget } from './drive-lease.js';
15
+ import { createEphemeralPool } from './ephemeral-pool.js';
16
+ import { readJournal } from './journal.js';
17
+ import { readAndValidateManifest, ManifestValidationError } from './manifest.js';
18
+ import { runWorkflow } from './runtime.js';
19
+ import { materialize } from './state.js';
20
+ import { botToSnapshot, resolveBotConfig, } from './bot-resolve.js';
21
+ import { authorizeManualCliRun, defaultBaseDir, } from './cli-run.js';
22
+ import { readRunEnvelope, RunEnvelopeConflictError } from './run-envelope.js';
23
+ import { createDefaultHostExecutorRegistry, createDefaultProviderReconcilers, } from '../hostExecutors/registry.js';
24
+ export const GOAL_RUN_REQUEST_SCHEMA = 'botmux.goal-run-request/v1';
25
+ export const GOAL_RUN_RESULT_SCHEMA = 'botmux.goal-run-result/v1';
26
+ export const GOAL_RUN_EXIT = {
27
+ succeeded: 0,
28
+ failed: 10,
29
+ blocked: 11,
30
+ cancelled: 12,
31
+ conflict: 13,
32
+ error: 14,
33
+ };
34
+ const GOAL_NODE_ID = 'goal';
35
+ const DRIVE_LOCK_RECOVERY_WAIT_MS = 1_200;
36
+ function defaultDependencies() {
37
+ return {
38
+ loadBots: loadBotConfigs,
39
+ makeRunNode: (bots) => {
40
+ const secrets = new Map(bots.map((bot) => [bot.larkAppId, bot.larkAppSecret]));
41
+ return createEphemeralPool({
42
+ resolveLarkAppSecret: (larkAppId) => secrets.get(larkAppId),
43
+ }).runNode;
44
+ },
45
+ validateManifest: async (manifestPath, outputDir) => {
46
+ try {
47
+ const manifest = await readAndValidateManifest(manifestPath, outputDir);
48
+ return { ok: true, manifest };
49
+ }
50
+ catch (error) {
51
+ return {
52
+ ok: false,
53
+ problems: error instanceof ManifestValidationError ? error.problems : [String(error)],
54
+ };
55
+ }
56
+ },
57
+ readValidatedManifest: readAndValidateManifest,
58
+ signalEmitter: process,
59
+ now: () => new Date(),
60
+ newRunId: () => `goal-${Date.now()}-${randomUUID().slice(0, 8)}`,
61
+ stdout: process.stdout,
62
+ stderr: process.stderr,
63
+ };
64
+ }
65
+ function valueFor(args, flag) {
66
+ for (let index = 0; index < args.length; index++) {
67
+ const arg = args[index];
68
+ if (arg === flag)
69
+ return args[index + 1];
70
+ if (arg.startsWith(`${flag}=`))
71
+ return arg.slice(flag.length + 1);
72
+ }
73
+ return undefined;
74
+ }
75
+ function parsePositiveSeconds(raw) {
76
+ if (raw === undefined)
77
+ return undefined;
78
+ const seconds = Number(raw);
79
+ if (!Number.isFinite(seconds) || seconds <= 0) {
80
+ throw new Error(`--timeout must be a positive number of seconds (got ${JSON.stringify(raw)})`);
81
+ }
82
+ // Leave a small cushion above the outer cancellation deadline so timeout is
83
+ // represented as durable run cancellation, not a racing node timeout.
84
+ if (seconds > MAX_NODE_TIMEOUT_SEC - 30) {
85
+ throw new Error(`--timeout must be <= ${MAX_NODE_TIMEOUT_SEC - 30} seconds`);
86
+ }
87
+ return Math.ceil(seconds * 1_000);
88
+ }
89
+ function parseArgs(rest, deps) {
90
+ const flagsWithValues = new Set([
91
+ '--run-id', '--bot', '--working-dir', '--base-dir', '--goal-file', '--timeout',
92
+ ]);
93
+ const knownFlags = new Set([...flagsWithValues, '--stdin', '--json', '--help', '-h']);
94
+ const positionals = [];
95
+ for (let index = 0; index < rest.length; index++) {
96
+ const arg = rest[index];
97
+ if (flagsWithValues.has(arg)) {
98
+ if (index + 1 >= rest.length || rest[index + 1].startsWith('--')) {
99
+ throw new Error(`${arg} requires a value`);
100
+ }
101
+ index++;
102
+ continue;
103
+ }
104
+ if ([...flagsWithValues].some((flag) => arg.startsWith(`${flag}=`)))
105
+ continue;
106
+ if (arg.startsWith('-')) {
107
+ if (!knownFlags.has(arg))
108
+ throw new Error(`unknown option: ${arg}`);
109
+ continue;
110
+ }
111
+ positionals.push(arg);
112
+ }
113
+ if (rest.includes('--help') || rest.includes('-h')) {
114
+ throw new Error('usage: botmux goal run <goal> [--run-id <id>] [--bot <id|name>] [--working-dir <dir>] [--timeout <seconds>] [--json]\n' +
115
+ ' botmux goal run --goal-file <path> | --stdin [...options]');
116
+ }
117
+ const goalFile = valueFor(rest, '--goal-file');
118
+ const useStdin = rest.includes('--stdin');
119
+ const sources = Number(positionals.length > 0) + Number(goalFile !== undefined) + Number(useStdin);
120
+ if (sources !== 1 || positionals.length > 1) {
121
+ throw new Error('provide exactly one goal source: a positional goal, --goal-file <path>, or --stdin');
122
+ }
123
+ const rawGoal = goalFile !== undefined
124
+ ? readFileSync(resolve(goalFile), 'utf8')
125
+ : useStdin
126
+ ? readFileSync(0, 'utf8')
127
+ : positionals[0];
128
+ const goal = rawGoal.trim();
129
+ if (!goal)
130
+ throw new Error('goal must not be empty');
131
+ return {
132
+ goal,
133
+ runId: valueFor(rest, '--run-id') ?? deps.newRunId(),
134
+ botSelector: valueFor(rest, '--bot'),
135
+ workingDir: valueFor(rest, '--working-dir')
136
+ ? resolve(expandHomePath(valueFor(rest, '--working-dir')))
137
+ : undefined,
138
+ baseDir: valueFor(rest, '--base-dir') ? resolve(valueFor(rest, '--base-dir')) : defaultBaseDir(),
139
+ timeoutMs: parsePositiveSeconds(valueFor(rest, '--timeout')),
140
+ json: rest.includes('--json'),
141
+ };
142
+ }
143
+ function requestBytes(request) {
144
+ // Fixed key insertion order is the v1 canonical encoding. Exact bytes are
145
+ // pinned by run.json and compared on every attach.
146
+ return `${JSON.stringify(request)}\n`;
147
+ }
148
+ function exitCodeFor(state) {
149
+ return GOAL_RUN_EXIT[state];
150
+ }
151
+ function terminalStatus(status) {
152
+ return status === 'succeeded' || status === 'failed' || status === 'blocked' || status === 'cancelled';
153
+ }
154
+ function latestNodeSettle(events) {
155
+ for (let index = events.length - 1; index >= 0; index--) {
156
+ const event = events[index];
157
+ if (event.type === 'nodeSucceeded' || event.type === 'nodeFailed' || event.type === 'nodeBlocked') {
158
+ return event;
159
+ }
160
+ }
161
+ return undefined;
162
+ }
163
+ async function validatedManifestForTerminal(runDir, events, deps) {
164
+ const settle = latestNodeSettle(events);
165
+ if (!settle)
166
+ return undefined;
167
+ const manifestPath = settle.type === 'nodeSucceeded'
168
+ ? settle.manifestPath
169
+ : join(runDir, settle.attemptId, 'manifest.json');
170
+ try {
171
+ return await deps.readValidatedManifest(manifestPath, join(dirname(manifestPath), 'work'));
172
+ }
173
+ catch {
174
+ // A terminal result never publishes unvalidated paths. The journal's
175
+ // terminal state/error remains reportable even when no valid manifest was
176
+ // produced (worker crash, malformed output, or later disk damage).
177
+ return undefined;
178
+ }
179
+ }
180
+ export async function projectGoalRunTerminal(runId, runDir, deps) {
181
+ const events = readJournal(join(runDir, 'journal.ndjson'));
182
+ const snapshot = materialize(events);
183
+ if (!terminalStatus(snapshot.runStatus))
184
+ return undefined;
185
+ const manifest = await validatedManifestForTerminal(runDir, events, deps);
186
+ const settle = latestNodeSettle(events);
187
+ const error = settle && (settle.type === 'nodeFailed' || settle.type === 'nodeBlocked')
188
+ ? {
189
+ code: settle.errorCode ?? settle.errorClass,
190
+ message: settle.message ?? `${settle.type === 'nodeBlocked' ? 'goal blocked' : 'goal failed'} (${settle.errorClass})`,
191
+ }
192
+ : undefined;
193
+ return {
194
+ schemaVersion: GOAL_RUN_RESULT_SCHEMA,
195
+ runId,
196
+ state: snapshot.runStatus,
197
+ exitCode: exitCodeFor(snapshot.runStatus),
198
+ ...(manifest?.summary ? { summary: manifest.summary } : {}),
199
+ ...(error ? { error } : {}),
200
+ ...(manifest?.files.length ? { artifacts: manifest.files } : {}),
201
+ runDirectory: { path: runDir, stability: 'informative-only' },
202
+ };
203
+ }
204
+ function errorResult(state, code, message, runId, runDir) {
205
+ return {
206
+ schemaVersion: GOAL_RUN_RESULT_SCHEMA,
207
+ runId,
208
+ state,
209
+ exitCode: GOAL_RUN_EXIT[state],
210
+ error: { code, message },
211
+ ...(runDir ? { runDirectory: { path: runDir, stability: 'informative-only' } } : {}),
212
+ };
213
+ }
214
+ function emitResult(result, json, deps) {
215
+ if (json) {
216
+ const bytes = `${JSON.stringify(result)}\n`;
217
+ // One synchronous terminal write: journal terminal publication always
218
+ // happens before this acknowledgement, and the process cannot exit 0
219
+ // while a queued stdout write is still pending.
220
+ if (typeof deps.stdout.fd === 'number')
221
+ writeFileSync(deps.stdout.fd, bytes);
222
+ else
223
+ deps.stdout.write(bytes);
224
+ return;
225
+ }
226
+ const line = result.state === 'succeeded'
227
+ ? `Goal succeeded (${result.runId})${result.summary ? `: ${result.summary}` : ''}\n`
228
+ : `Goal ${result.state} (${result.runId ?? 'unassigned'}): ${result.error?.message ?? result.summary ?? ''}\n`;
229
+ (result.state === 'succeeded' ? deps.stdout : deps.stderr).write(line);
230
+ }
231
+ function buildGoalDag(args, resolvedBotId) {
232
+ return validateDag({
233
+ runId: args.runId,
234
+ nodes: [{
235
+ id: GOAL_NODE_ID,
236
+ type: 'goal',
237
+ goal: args.goal,
238
+ ...(resolvedBotId ? { bot: resolvedBotId } : {}),
239
+ depends: [],
240
+ inputs: [],
241
+ humanGate: null,
242
+ ...(args.timeoutMs !== undefined
243
+ ? { timeoutSec: Math.ceil(args.timeoutMs / 1_000) + 30 }
244
+ : {}),
245
+ }],
246
+ });
247
+ }
248
+ async function executeGoalRun(args, deps) {
249
+ // Install cancellation delivery before publishing any run artifacts. A
250
+ // signal/timeout that arrives during authorization is remembered and becomes
251
+ // the runtime's durable cancellation cut as soon as the journal starts.
252
+ const abortController = new AbortController();
253
+ const abort = () => {
254
+ if (!abortController.signal.aborted)
255
+ abortController.abort('goal-cli');
256
+ };
257
+ deps.signalEmitter.on('SIGINT', abort);
258
+ deps.signalEmitter.on('SIGTERM', abort);
259
+ const timeout = args.timeoutMs === undefined ? undefined : setTimeout(abort, args.timeoutMs);
260
+ try {
261
+ return await executeGoalRunCore(args, deps, abortController.signal);
262
+ }
263
+ finally {
264
+ if (timeout)
265
+ clearTimeout(timeout);
266
+ deps.signalEmitter.off('SIGINT', abort);
267
+ deps.signalEmitter.off('SIGTERM', abort);
268
+ }
269
+ }
270
+ async function executeGoalRunCore(args, deps, cancelSignal) {
271
+ const runDir = join(args.baseDir, args.runId);
272
+ const request = {
273
+ schemaVersion: GOAL_RUN_REQUEST_SCHEMA,
274
+ goal: args.goal,
275
+ botSelector: args.botSelector ?? null,
276
+ workingDir: args.workingDir ?? null,
277
+ timeoutMs: args.timeoutMs ?? null,
278
+ };
279
+ let dag;
280
+ let frozenBotSnapshots;
281
+ let bots;
282
+ const envelope = readRunEnvelope(runDir, args.runId);
283
+ if (envelope.kind === 'invalid') {
284
+ return errorResult('error', 'RUN_AUTHORIZATION_FAILED', `run.json is invalid: ${envelope.problems.join('; ')}`, args.runId, runDir);
285
+ }
286
+ if (envelope.kind === 'ok') {
287
+ try {
288
+ // Existing authorization supplies the real DAG and frozen bot snapshot;
289
+ // the candidate is used only for its validated runId.
290
+ const authorization = authorizeManualCliRun({
291
+ runDir,
292
+ dag: buildGoalDag(args),
293
+ bots: [],
294
+ goalRequestBytes: requestBytes(request),
295
+ });
296
+ dag = authorization.dag;
297
+ frozenBotSnapshots = authorization.frozenBotSnapshots;
298
+ }
299
+ catch (error) {
300
+ const conflict = error instanceof RunEnvelopeConflictError;
301
+ return errorResult(conflict ? 'conflict' : 'error', conflict ? 'RUN_ID_CONFLICT' : 'RUN_AUTHORIZATION_FAILED', error instanceof Error ? error.message : String(error), args.runId, runDir);
302
+ }
303
+ // A durable terminal is fully self-contained: replay it even when live
304
+ // bots.json is missing or has changed since the original execution.
305
+ const terminal = await projectGoalRunTerminal(args.runId, runDir, deps);
306
+ if (terminal)
307
+ return terminal;
308
+ }
309
+ else {
310
+ try {
311
+ bots = deps.loadBots();
312
+ }
313
+ catch (error) {
314
+ return errorResult('error', 'BOTS_CONFIG_UNREADABLE', error instanceof Error ? error.message : String(error), args.runId, runDir);
315
+ }
316
+ if (bots.length === 0) {
317
+ return errorResult('error', 'NO_BOTS_CONFIGURED', 'no bots configured; run `botmux setup` first', args.runId, runDir);
318
+ }
319
+ try {
320
+ const bot = resolveBotConfig(args.botSelector, bots);
321
+ const unresolvedSnapshot = botToSnapshot(bot, args.workingDir);
322
+ // `child_process.fork({cwd})` interprets a relative cwd against the
323
+ // current driver process. Freeze an absolute path so a crash re-drive
324
+ // launched from another shell cannot silently execute in another repo.
325
+ const snapshot = {
326
+ ...unresolvedSnapshot,
327
+ workingDir: resolve(expandHomePath(unresolvedSnapshot.workingDir)),
328
+ };
329
+ dag = buildGoalDag(args, bot.larkAppId);
330
+ const authorization = authorizeManualCliRun({
331
+ runDir,
332
+ dag,
333
+ bots,
334
+ defaultBotSelector: bot.larkAppId,
335
+ workingDirOverride: snapshot.workingDir,
336
+ now: deps.now(),
337
+ goalRequestBytes: requestBytes(request),
338
+ });
339
+ dag = authorization.dag;
340
+ frozenBotSnapshots = authorization.frozenBotSnapshots;
341
+ }
342
+ catch (error) {
343
+ const conflict = error instanceof RunEnvelopeConflictError;
344
+ return errorResult(conflict ? 'conflict' : 'error', conflict ? 'RUN_ID_CONFLICT' : 'RUN_AUTHORIZATION_FAILED', error instanceof Error ? error.message : String(error), args.runId, runDir);
345
+ }
346
+ }
347
+ // Non-terminal replay still needs live credentials to spawn/recover a
348
+ // worker, but never re-resolves its frozen bot/cwd/model/sandbox settings.
349
+ if (!bots) {
350
+ try {
351
+ bots = deps.loadBots();
352
+ }
353
+ catch (error) {
354
+ return errorResult('error', 'BOTS_CONFIG_UNREADABLE', error instanceof Error ? error.message : String(error), args.runId, runDir);
355
+ }
356
+ }
357
+ if (bots.length === 0) {
358
+ return errorResult('error', 'NO_BOTS_CONFIGURED', 'no bots configured; cannot re-drive a non-terminal run', args.runId, runDir);
359
+ }
360
+ const firstSnapshot = frozenBotSnapshots.values().next().value;
361
+ if (!firstSnapshot) {
362
+ return errorResult('error', 'RUN_AUTHORIZATION_FAILED', 'bots.snapshot.json contains no frozen bot', args.runId, runDir);
363
+ }
364
+ const resolveFrozenSnapshot = (selector) => frozenBotSnapshots.get(selector ?? '')
365
+ ?? [...frozenBotSnapshots.values()].find((candidate) => candidate.larkAppId === selector)
366
+ ?? firstSnapshot;
367
+ let runtimeDeps;
368
+ try {
369
+ runtimeDeps = {
370
+ runNode: deps.makeRunNode(bots),
371
+ validateManifest: deps.validateManifest,
372
+ resolveBotSnapshot: resolveFrozenSnapshot,
373
+ hostExecutors: createDefaultHostExecutorRegistry(),
374
+ hostReconcilers: createDefaultProviderReconcilers(),
375
+ };
376
+ }
377
+ catch (error) {
378
+ return errorResult('error', 'RUNNER_INIT_FAILED', error instanceof Error ? error.message : String(error), args.runId, runDir);
379
+ }
380
+ try {
381
+ await withFileLock(v3DriveLeaseTarget(args.baseDir, dag.runId), () => runWorkflow(dag, runtimeDeps, {
382
+ baseDir: args.baseDir,
383
+ authorizedArtifacts: true,
384
+ frozenBotSnapshots,
385
+ cancelSignal,
386
+ }), { maxWaitMs: DRIVE_LOCK_RECOVERY_WAIT_MS });
387
+ }
388
+ catch (error) {
389
+ const terminal = await projectGoalRunTerminal(args.runId, runDir, deps);
390
+ if (terminal)
391
+ return terminal;
392
+ const message = error instanceof Error ? error.message : String(error);
393
+ if (message.includes('file-lock timeout waiting for')) {
394
+ return errorResult('conflict', 'RUN_ACTIVE', `run "${args.runId}" is being driven by another live process`, args.runId, runDir);
395
+ }
396
+ return errorResult('error', 'RUN_DRIVER_FAILED', message, args.runId, runDir);
397
+ }
398
+ return await projectGoalRunTerminal(args.runId, runDir, deps)
399
+ ?? errorResult('error', 'TERMINAL_RESULT_MISSING', 'driver returned before a durable terminal journal event existed', args.runId, runDir);
400
+ }
401
+ /** Dispatcher for `botmux goal <sub>`. Returns an exit code; never calls exit. */
402
+ export async function cmdGoal(sub, rest, overrides = {}) {
403
+ const deps = { ...defaultDependencies(), ...overrides };
404
+ const json = rest.includes('--json');
405
+ let result;
406
+ if (sub !== 'run') {
407
+ result = errorResult('error', 'USAGE', 'usage: botmux goal run <goal> [options]', null);
408
+ }
409
+ else {
410
+ let args;
411
+ try {
412
+ args = parseArgs(rest, deps);
413
+ }
414
+ catch (error) {
415
+ result = errorResult('error', 'USAGE', error instanceof Error ? error.message : String(error), valueFor(rest, '--run-id') ?? null);
416
+ }
417
+ if (args) {
418
+ try {
419
+ result = await executeGoalRun(args, deps);
420
+ }
421
+ catch (error) {
422
+ result = errorResult('error', 'INTERNAL_ERROR', error instanceof Error ? error.message : String(error), args.runId, join(args.baseDir, args.runId));
423
+ }
424
+ }
425
+ }
426
+ result ??= errorResult('error', 'INTERNAL_ERROR', 'goal command produced no result', valueFor(rest, '--run-id') ?? null);
427
+ emitResult(result, json, deps);
428
+ return result.exitCode;
429
+ }
430
+ //# sourceMappingURL=goal-cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"goal-cli.js","sourceRoot":"","sources":["../../../src/workflows/v3/goal-cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"library-materialize.d.ts","sourceRoot":"","sources":["../../../src/workflows/v3/library-materialize.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAWH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAIvD,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAuC,KAAK,KAAK,EAAe,MAAM,UAAU,CAAC;AASxF,OAAO,EAAe,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEpE,OAAO,EAKL,KAAK,2BAA2B,EAChC,KAAK,8BAA8B,EACnC,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAChC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAKL,KAAK,qBAAqB,EAC1B,KAAK,4BAA4B,EAClC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAMvD,MAAM,WAAW,4BAA4B;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,0BAA0B,CAAC;IACrC,YAAY,EAAE,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED;;;;GAIG;AACH,qBAAa,+BAAgC,SAAQ,KAAK;aAG5B,QAAQ,EAAE,SAAS,MAAM,EAAE;IAFvD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;gBAEH,QAAQ,EAAE,SAAS,MAAM,EAAE;CAWxD;AAED,MAAM,WAAW,kCAAkC;IACjD,+EAA+E;IAC/E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAC/C,WAAW,CAAC,EAAE,8BAA8B,EAAE,CAAC;IAC/C,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IACjC,6EAA6E;IAC7E,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,MAAM,MAAM,yCAAyC,GAAG,IAAI,CAC1D,kCAAkC,EAClC,QAAQ,GAAG,aAAa,GAAG,YAAY,CACxC,CAAC;AAEF,MAAM,WAAW,kCAAkC;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,0BAA0B,CAAC;IACrC,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AA+BD,wBAAgB,wCAAwC,CACtD,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAAE,GACjB,IAAI,CAoBN;AAED;;;;GAIG;AACH,wBAAgB,kCAAkC,CAChD,MAAM,EAAE,qBAAqB,EAC7B,IAAI,GAAE,yCAA8C,GACnD,kCAAkC,CA6BpC;AAED,oEAAoE;AACpE,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,kCAAuC,GAC5C,4BAA4B,CA0B9B;AAED,MAAM,WAAW,+BAA+B;IAC9C,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,EAAE,qBAAqB,CAAC;IAChC,QAAQ,EAAE,2BAA2B,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC1C,OAAO,CAAC,EAAE,+BAA+B,CAAC;IAC1C,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,IAAI,CAAC;CACZ;AAED,MAAM,WAAW,4BAA4B;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,KAAK,CAAC;IACX,IAAI,EAAE,IAAI,CAAC;IACX,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,eAAe,EAAE,OAAO,CAAC,MAAM,CAAC,8BAA8B,EAAE,MAAM,CAAC,CAAC,CAAC;IACzE,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACvC,QAAQ,EAAE,4BAA4B,CAAC;CACxC;AA2BD,6DAA6D;AAC7D,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,gCAAgC,GACtC,4BAA4B,CAoI9B;AAED,+CAA+C;AAC/C,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED,+EAA+E;AAC/E,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE5D"}
1
+ {"version":3,"file":"library-materialize.d.ts","sourceRoot":"","sources":["../../../src/workflows/v3/library-materialize.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ import { materialize } from './state.js';
20
20
  import { validateSpec } from './spec.js';
21
21
  import { mintV3RunId } from './grill-state.js';
22
22
  import { isValidRunId } from './ops-projection.js';
23
- import { computeSavedWorkflowGateDigest, computeSavedWorkflowSideEffects, validateDagTemplate, validateSpecTemplate, } from './library-schema.js';
23
+ import { computeSavedWorkflowGateDigest, computeSavedWorkflowSideEffects, assertNoSavedWorkflowChatSideEffects, validateDagTemplate, validateSpecTemplate, } from './library-schema.js';
24
24
  import { artifactRef, loadAuthorizedV3Run, makeSavedDefinitionRunEnvelope, publishRunEnvelopeOnce, } from './run-envelope.js';
25
25
  import { assertSavedWorkflowTemplateBindings, collectSavedWorkflowTemplateBindings, } from './template-bindings.js';
26
26
  /**
@@ -98,6 +98,10 @@ export function buildSavedWorkflowRevisionBaseline(loaded, opts = {}) {
98
98
  const snapshots = parseFrozenBotSnapshots(loaded.botSnapshots, loaded.dag);
99
99
  const normalizedNodes = canonicalizeNodeBots(cloneNodes(loaded.dag.nodes), snapshots);
100
100
  const dagTemplate = validateDagTemplate({ nodes: normalizedNodes });
101
+ // Authoring boundary: a freshly compiled definition must be free of
102
+ // chat-facing side effects in goal nodes. This does NOT run on the read path
103
+ // (loadSavedWorkflowRevision), so existing revisions stay loadable.
104
+ assertNoSavedWorkflowChatSideEffects(dagTemplate);
101
105
  const { runId: _runId, ...specWithoutRunId } = loaded.spec;
102
106
  const specTemplate = validateSpecTemplate(specWithoutRunId);
103
107
  const inputs = opts.inputs ?? {};
@@ -1 +1 @@
1
- {"version":3,"file":"library-materialize.js","sourceRoot":"","sources":["../../../src/workflows/v3/library-materialize.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"library-materialize.js","sourceRoot":"","sources":["../../../src/workflows/v3/library-materialize.ts"],"names":[],"mappings":"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"}