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,61 @@
1
+ import type { CodexAppTurnInput } from '../types.js';
2
+ export declare const CODEX_APP_INPUT_PREFIX = "::botmux-codex-app:";
3
+ export interface CodexAppRunnerInput {
4
+ type: 'message';
5
+ content: string;
6
+ codexAppInput?: CodexAppTurnInput;
7
+ /** Immutable botmux/Lark message id used only for reply routing. */
8
+ replyTurnId?: string;
9
+ }
10
+ export interface CodexAppFinalMarker {
11
+ content: string;
12
+ startedAtMs?: number;
13
+ completedAtMs?: number;
14
+ /** Codex app-server turn id, used for protocol matching and deduplication. */
15
+ appTurnId?: string;
16
+ /** botmux/Lark message id, used to select the Feishu reply destination. */
17
+ replyTurnId?: string;
18
+ /** Pre-steer Codex App and Mira markers used one id for both domains. */
19
+ legacyTurnId?: string;
20
+ }
21
+ interface CodexAppLifecycleBase {
22
+ atMs: number;
23
+ queueLength?: number;
24
+ appTurnId?: string;
25
+ replyTurnId?: string;
26
+ }
27
+ export type CodexAppLifecycleOperation = 'turn/start' | 'turn/steer' | 'runner';
28
+ export type CodexAppLifecycleCategory = 'definite_rejection' | 'steer_in_flight' | 'transport' | 'rpc' | 'protocol' | 'runtime';
29
+ export type CodexAppLifecycleEvent = (CodexAppLifecycleBase & {
30
+ kind: 'input_queued' | 'turn_start_attempt';
31
+ queueLength: number;
32
+ }) | (CodexAppLifecycleBase & {
33
+ kind: 'turn_started' | 'steer_attempt' | 'steer_accepted';
34
+ appTurnId: string;
35
+ }) | (CodexAppLifecycleBase & {
36
+ kind: 'steer_rejected_fallback';
37
+ appTurnId: string;
38
+ category: 'definite_rejection';
39
+ }) | (CodexAppLifecycleBase & {
40
+ kind: 'completion_race';
41
+ appTurnId: string;
42
+ category: 'steer_in_flight';
43
+ }) | (CodexAppLifecycleBase & {
44
+ kind: 'unknown_outcome';
45
+ operation: 'turn/start' | 'turn/steer';
46
+ category: 'transport' | 'rpc' | 'protocol';
47
+ }) | (CodexAppLifecycleBase & {
48
+ kind: 'fatal';
49
+ operation: CodexAppLifecycleOperation;
50
+ category: 'transport' | 'rpc' | 'protocol' | 'runtime';
51
+ });
52
+ export interface AppRunnerFinalIds {
53
+ lastUuid: string;
54
+ turnId: string;
55
+ }
56
+ export declare function decodeCodexAppRunnerInput(line: string): CodexAppRunnerInput | undefined;
57
+ export declare function normalizeAppRunnerFinalMarker(payload: unknown): CodexAppFinalMarker | undefined;
58
+ export declare function normalizeCodexAppLifecycleEvent(payload: unknown): CodexAppLifecycleEvent | undefined;
59
+ export declare function projectAppRunnerFinalIds(marker: CodexAppFinalMarker, fallbackTurnId: string | undefined, generatedFallbackId: string): AppRunnerFinalIds;
60
+ export {};
61
+ //# sourceMappingURL=codex-app-runner-protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-app-runner-protocol.d.ts","sourceRoot":"","sources":["../../src/services/codex-app-runner-protocol.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGrD,eAAO,MAAM,sBAAsB,wBAAwB,CAAC;AAE5D,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,oEAAoE;IACpE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,qBAAqB;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,0BAA0B,GAAG,YAAY,GAAG,YAAY,GAAG,QAAQ,CAAC;AAChF,MAAM,MAAM,yBAAyB,GACjC,oBAAoB,GACpB,iBAAiB,GACjB,WAAW,GACX,KAAK,GACL,UAAU,GACV,SAAS,CAAC;AAEd,MAAM,MAAM,sBAAsB,GAC9B,CAAC,qBAAqB,GAAG;IACzB,IAAI,EAAE,cAAc,GAAG,oBAAoB,CAAC;IAC5C,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC,GACA,CAAC,qBAAqB,GAAG;IACzB,IAAI,EAAE,cAAc,GAAG,eAAe,GAAG,gBAAgB,CAAC;IAC1D,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC,GACA,CAAC,qBAAqB,GAAG;IACzB,IAAI,EAAE,yBAAyB,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,oBAAoB,CAAC;CAChC,CAAC,GACA,CAAC,qBAAqB,GAAG;IACzB,IAAI,EAAE,iBAAiB,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,iBAAiB,CAAC;CAC7B,CAAC,GACA,CAAC,qBAAqB,GAAG;IACzB,IAAI,EAAE,iBAAiB,CAAC;IACxB,SAAS,EAAE,YAAY,GAAG,YAAY,CAAC;IACvC,QAAQ,EAAE,WAAW,GAAG,KAAK,GAAG,UAAU,CAAC;CAC5C,CAAC,GACA,CAAC,qBAAqB,GAAG;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,0BAA0B,CAAC;IACtC,QAAQ,EAAE,WAAW,GAAG,KAAK,GAAG,UAAU,GAAG,SAAS,CAAC;CACxD,CAAC,CAAC;AAEL,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAwBD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAkCvF;AAED,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,OAAO,GAAG,mBAAmB,GAAG,SAAS,CAU/F;AAED,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,OAAO,GAAG,sBAAsB,GAAG,SAAS,CA2FpG;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,mBAAmB,EAC3B,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,mBAAmB,EAAE,MAAM,GAC1B,iBAAiB,CASnB"}
@@ -0,0 +1,170 @@
1
+ import { Buffer } from 'node:buffer';
2
+ import { isCodexAppTurnInput } from '../adapters/cli/codex-app-turn.js';
3
+ export const CODEX_APP_INPUT_PREFIX = '::botmux-codex-app:';
4
+ function isRecord(value) {
5
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
6
+ }
7
+ function optionalNonEmptyString(value) {
8
+ return typeof value === 'string' && value.length > 0 ? value : undefined;
9
+ }
10
+ function optionalFiniteNumber(value) {
11
+ return typeof value === 'number' && Number.isFinite(value) ? value : undefined;
12
+ }
13
+ function optionalLifecycleId(value) {
14
+ return typeof value === 'string' && value.length > 0 && value.length <= 512
15
+ ? value
16
+ : undefined;
17
+ }
18
+ function isNonNegativeInteger(value) {
19
+ return typeof value === 'number' && Number.isInteger(value) && value >= 0;
20
+ }
21
+ export function decodeCodexAppRunnerInput(line) {
22
+ const trimmed = line.trim();
23
+ if (!trimmed.startsWith(CODEX_APP_INPUT_PREFIX))
24
+ return undefined;
25
+ let value;
26
+ try {
27
+ const encoded = trimmed.slice(CODEX_APP_INPUT_PREFIX.length);
28
+ value = JSON.parse(Buffer.from(encoded, 'base64').toString('utf8'));
29
+ }
30
+ catch {
31
+ return undefined;
32
+ }
33
+ if (!isRecord(value) || value.type !== 'message' || typeof value.content !== 'string') {
34
+ return undefined;
35
+ }
36
+ const allowedKeys = new Set(['type', 'content', 'codexAppInput', 'replyTurnId']);
37
+ if (Object.keys(value).some(key => !allowedKeys.has(key)))
38
+ return undefined;
39
+ if (value.replyTurnId !== undefined && optionalLifecycleId(value.replyTurnId) === undefined) {
40
+ return undefined;
41
+ }
42
+ if (value.codexAppInput !== undefined && !isCodexAppTurnInput(value.codexAppInput)) {
43
+ return undefined;
44
+ }
45
+ const codexAppInput = isCodexAppTurnInput(value.codexAppInput)
46
+ ? value.codexAppInput
47
+ : undefined;
48
+ const replyTurnId = typeof value.replyTurnId === 'string'
49
+ ? value.replyTurnId
50
+ : codexAppInput?.clientUserMessageId;
51
+ return {
52
+ type: 'message',
53
+ content: value.content,
54
+ ...(codexAppInput ? { codexAppInput } : {}),
55
+ ...(replyTurnId ? { replyTurnId } : {}),
56
+ };
57
+ }
58
+ export function normalizeAppRunnerFinalMarker(payload) {
59
+ if (!isRecord(payload) || typeof payload.content !== 'string')
60
+ return undefined;
61
+ return {
62
+ content: payload.content,
63
+ startedAtMs: optionalFiniteNumber(payload.startedAtMs),
64
+ completedAtMs: optionalFiniteNumber(payload.completedAtMs),
65
+ appTurnId: optionalNonEmptyString(payload.appTurnId),
66
+ replyTurnId: optionalNonEmptyString(payload.replyTurnId),
67
+ legacyTurnId: optionalNonEmptyString(payload.turnId),
68
+ };
69
+ }
70
+ export function normalizeCodexAppLifecycleEvent(payload) {
71
+ if (!isRecord(payload) || typeof payload.kind !== 'string')
72
+ return undefined;
73
+ const allowedKeys = new Set([
74
+ 'kind',
75
+ 'atMs',
76
+ 'queueLength',
77
+ 'appTurnId',
78
+ 'replyTurnId',
79
+ 'operation',
80
+ 'category',
81
+ ]);
82
+ if (Object.keys(payload).some(key => !allowedKeys.has(key)))
83
+ return undefined;
84
+ if (typeof payload.atMs !== 'number' || !Number.isFinite(payload.atMs) || payload.atMs < 0) {
85
+ return undefined;
86
+ }
87
+ if (payload.queueLength !== undefined && !isNonNegativeInteger(payload.queueLength)) {
88
+ return undefined;
89
+ }
90
+ if (payload.appTurnId !== undefined && optionalLifecycleId(payload.appTurnId) === undefined) {
91
+ return undefined;
92
+ }
93
+ if (payload.replyTurnId !== undefined && optionalLifecycleId(payload.replyTurnId) === undefined) {
94
+ return undefined;
95
+ }
96
+ const base = {
97
+ atMs: payload.atMs,
98
+ ...(typeof payload.queueLength === 'number' ? { queueLength: payload.queueLength } : {}),
99
+ ...(typeof payload.appTurnId === 'string' ? { appTurnId: payload.appTurnId } : {}),
100
+ ...(typeof payload.replyTurnId === 'string' ? { replyTurnId: payload.replyTurnId } : {}),
101
+ };
102
+ const appTurnId = optionalLifecycleId(payload.appTurnId);
103
+ switch (payload.kind) {
104
+ case 'input_queued':
105
+ case 'turn_start_attempt':
106
+ if (!isNonNegativeInteger(payload.queueLength)
107
+ || payload.appTurnId !== undefined
108
+ || payload.operation !== undefined
109
+ || payload.category !== undefined)
110
+ return undefined;
111
+ return { ...base, kind: payload.kind, queueLength: payload.queueLength };
112
+ case 'turn_started':
113
+ case 'steer_attempt':
114
+ case 'steer_accepted':
115
+ if (!appTurnId || payload.operation !== undefined || payload.category !== undefined) {
116
+ return undefined;
117
+ }
118
+ return { ...base, kind: payload.kind, appTurnId };
119
+ case 'steer_rejected_fallback':
120
+ if (!appTurnId || payload.operation !== undefined || payload.category !== 'definite_rejection') {
121
+ return undefined;
122
+ }
123
+ return { ...base, kind: payload.kind, appTurnId, category: 'definite_rejection' };
124
+ case 'completion_race':
125
+ if (!appTurnId || payload.operation !== undefined || payload.category !== 'steer_in_flight') {
126
+ return undefined;
127
+ }
128
+ return { ...base, kind: payload.kind, appTurnId, category: 'steer_in_flight' };
129
+ case 'unknown_outcome':
130
+ if ((payload.operation !== 'turn/start' && payload.operation !== 'turn/steer')
131
+ || (payload.category !== 'transport'
132
+ && payload.category !== 'rpc'
133
+ && payload.category !== 'protocol'))
134
+ return undefined;
135
+ return {
136
+ ...base,
137
+ kind: payload.kind,
138
+ operation: payload.operation,
139
+ category: payload.category,
140
+ };
141
+ case 'fatal':
142
+ if ((payload.operation !== 'turn/start'
143
+ && payload.operation !== 'turn/steer'
144
+ && payload.operation !== 'runner')
145
+ || (payload.category !== 'transport'
146
+ && payload.category !== 'rpc'
147
+ && payload.category !== 'protocol'
148
+ && payload.category !== 'runtime'))
149
+ return undefined;
150
+ return {
151
+ ...base,
152
+ kind: payload.kind,
153
+ operation: payload.operation,
154
+ category: payload.category,
155
+ };
156
+ default:
157
+ return undefined;
158
+ }
159
+ }
160
+ export function projectAppRunnerFinalIds(marker, fallbackTurnId, generatedFallbackId) {
161
+ if (marker.appTurnId) {
162
+ return {
163
+ lastUuid: marker.appTurnId,
164
+ turnId: marker.replyTurnId ?? fallbackTurnId ?? marker.appTurnId,
165
+ };
166
+ }
167
+ const legacyId = marker.legacyTurnId ?? fallbackTurnId ?? generatedFallbackId;
168
+ return { lastUuid: legacyId, turnId: legacyId };
169
+ }
170
+ //# sourceMappingURL=codex-app-runner-protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-app-runner-protocol.js","sourceRoot":"","sources":["../../src/services/codex-app-runner-protocol.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ import type { CodexAppFinalMarker, CodexAppLifecycleCategory, CodexAppLifecycleEvent, CodexAppRunnerInput } from './codex-app-runner-protocol.js';
2
+ import type { CodexAppTurnInput } from '../types.js';
3
+ export declare class CodexAppRpcResponseError extends Error {
4
+ readonly method: string;
5
+ readonly code?: number;
6
+ readonly data?: unknown;
7
+ constructor(method: string, error: unknown);
8
+ }
9
+ export declare class CodexAppTransportError extends Error {
10
+ constructor(message: string);
11
+ }
12
+ export interface CodexAppPreparedInput {
13
+ input: Array<Record<string, unknown>>;
14
+ additionalContext?: CodexAppTurnInput['additionalContext'];
15
+ clientUserMessageId?: string;
16
+ visibleText: string;
17
+ structured: boolean;
18
+ skippedImages?: string[];
19
+ }
20
+ export interface CodexAppTurnControllerDeps {
21
+ cwd: string;
22
+ ensureThread(): Promise<string>;
23
+ request(method: string, params: unknown): Promise<unknown>;
24
+ prepareInput(input: CodexAppRunnerInput, structuredDisabled: boolean): CodexAppPreparedInput;
25
+ isStartCapabilityError?(error: unknown): boolean;
26
+ onTurnInput?(input: CodexAppRunnerInput, prepared: CodexAppPreparedInput): void;
27
+ onOutput?(text: string): void;
28
+ onDiagnostic?(message: string): void;
29
+ onLifecycle?(event: CodexAppLifecycleEvent): void;
30
+ onFinal(marker: CodexAppFinalMarker & {
31
+ appTurnId: string;
32
+ }): void;
33
+ onPrompt?(): void;
34
+ now?(): number;
35
+ }
36
+ export declare function isDefiniteSteerRejection(error: CodexAppRpcResponseError): boolean;
37
+ export declare class CodexAppTurnController {
38
+ private readonly deps;
39
+ private readonly queue;
40
+ private readonly closedTurnIds;
41
+ private active;
42
+ private fatal;
43
+ private structuredDisabled;
44
+ private failureSequence;
45
+ private driving;
46
+ private driveAgain;
47
+ constructor(deps: CodexAppTurnControllerDeps);
48
+ enqueue(input: CodexAppRunnerInput): void;
49
+ handleNotification(message: unknown): void;
50
+ handleFatal(error: unknown, category?: Extract<CodexAppLifecycleCategory, 'transport' | 'rpc' | 'protocol' | 'runtime'>): void;
51
+ private drive;
52
+ private startTurn;
53
+ private beginTurnStart;
54
+ private steerQueueHead;
55
+ private performSteer;
56
+ private turnStartParams;
57
+ private reportPreparedInput;
58
+ private adoptAppTurnId;
59
+ private emitTurnStarted;
60
+ private emitUnknownOutcome;
61
+ private finalizeTurn;
62
+ private emitFailure;
63
+ private emitStandaloneFailure;
64
+ private afterTurn;
65
+ private rememberClosedTurn;
66
+ private nextFailureId;
67
+ private now;
68
+ private emitLifecycle;
69
+ private activeOperation;
70
+ private errorCategory;
71
+ }
72
+ //# sourceMappingURL=codex-app-turn-controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-app-turn-controller.d.ts","sourceRoot":"","sources":["../../src/services/codex-app-turn-controller.ts"],"names":[],"mappings":"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"}