botmux 3.10.0 → 3.11.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 (539) hide show
  1. package/dist/.runtime-build-id +1 -1
  2. package/dist/adapters/backend/herdr-backend.d.ts +4 -3
  3. package/dist/adapters/backend/herdr-backend.d.ts.map +1 -1
  4. package/dist/adapters/backend/herdr-backend.js +11 -8
  5. package/dist/adapters/backend/herdr-backend.js.map +1 -1
  6. package/dist/adapters/backend/pty-backend.d.ts +1 -1
  7. package/dist/adapters/backend/pty-backend.d.ts.map +1 -1
  8. package/dist/adapters/backend/pty-backend.js +4 -1
  9. package/dist/adapters/backend/pty-backend.js.map +1 -1
  10. package/dist/adapters/backend/riff-backend.d.ts +29 -5
  11. package/dist/adapters/backend/riff-backend.d.ts.map +1 -1
  12. package/dist/adapters/backend/riff-backend.js +302 -31
  13. package/dist/adapters/backend/riff-backend.js.map +1 -1
  14. package/dist/adapters/backend/sandbox.d.ts +6 -0
  15. package/dist/adapters/backend/sandbox.d.ts.map +1 -1
  16. package/dist/adapters/backend/sandbox.js +7 -0
  17. package/dist/adapters/backend/sandbox.js.map +1 -1
  18. package/dist/adapters/backend/tmux-backend.d.ts +1 -1
  19. package/dist/adapters/backend/tmux-backend.d.ts.map +1 -1
  20. package/dist/adapters/backend/tmux-backend.js +4 -1
  21. package/dist/adapters/backend/tmux-backend.js.map +1 -1
  22. package/dist/adapters/backend/tmux-pipe-backend.d.ts +1 -1
  23. package/dist/adapters/backend/tmux-pipe-backend.d.ts.map +1 -1
  24. package/dist/adapters/backend/tmux-pipe-backend.js +1 -1
  25. package/dist/adapters/backend/tmux-pipe-backend.js.map +1 -1
  26. package/dist/adapters/backend/types.d.ts +37 -3
  27. package/dist/adapters/backend/types.d.ts.map +1 -1
  28. package/dist/adapters/backend/types.js.map +1 -1
  29. package/dist/adapters/backend/zellij-backend.d.ts +3 -3
  30. package/dist/adapters/backend/zellij-backend.d.ts.map +1 -1
  31. package/dist/adapters/backend/zellij-backend.js +9 -3
  32. package/dist/adapters/backend/zellij-backend.js.map +1 -1
  33. package/dist/adapters/backend/zellij-observe-backend.d.ts +3 -3
  34. package/dist/adapters/backend/zellij-observe-backend.d.ts.map +1 -1
  35. package/dist/adapters/backend/zellij-observe-backend.js +12 -7
  36. package/dist/adapters/backend/zellij-observe-backend.js.map +1 -1
  37. package/dist/adapters/cli/codex-app.d.ts.map +1 -1
  38. package/dist/adapters/cli/codex-app.js +11 -2
  39. package/dist/adapters/cli/codex-app.js.map +1 -1
  40. package/dist/adapters/cli/read-isolation.d.ts +35 -2
  41. package/dist/adapters/cli/read-isolation.d.ts.map +1 -1
  42. package/dist/adapters/cli/read-isolation.js +88 -7
  43. package/dist/adapters/cli/read-isolation.js.map +1 -1
  44. package/dist/adapters/cli/runner-input.d.ts +15 -14
  45. package/dist/adapters/cli/runner-input.d.ts.map +1 -1
  46. package/dist/adapters/cli/runner-input.js +64 -26
  47. package/dist/adapters/cli/runner-input.js.map +1 -1
  48. package/dist/adapters/cli/types.d.ts +20 -5
  49. package/dist/adapters/cli/types.d.ts.map +1 -1
  50. package/dist/bot-registry.d.ts +24 -0
  51. package/dist/bot-registry.d.ts.map +1 -1
  52. package/dist/bot-registry.js +110 -5
  53. package/dist/bot-registry.js.map +1 -1
  54. package/dist/cli/fleet-shutdown.d.ts +47 -0
  55. package/dist/cli/fleet-shutdown.d.ts.map +1 -0
  56. package/dist/cli/fleet-shutdown.js +387 -0
  57. package/dist/cli/fleet-shutdown.js.map +1 -0
  58. package/dist/cli/pm2-descriptor-guard.d.ts +19 -0
  59. package/dist/cli/pm2-descriptor-guard.d.ts.map +1 -0
  60. package/dist/cli/pm2-descriptor-guard.js +122 -0
  61. package/dist/cli/pm2-descriptor-guard.js.map +1 -0
  62. package/dist/cli/pm2-exact-start.d.ts +16 -0
  63. package/dist/cli/pm2-exact-start.d.ts.map +1 -0
  64. package/dist/cli/pm2-exact-start.js +63 -0
  65. package/dist/cli/pm2-exact-start.js.map +1 -0
  66. package/dist/cli/pm2-god-admission.d.ts +8 -0
  67. package/dist/cli/pm2-god-admission.d.ts.map +1 -0
  68. package/dist/cli/pm2-god-admission.js +25 -0
  69. package/dist/cli/pm2-god-admission.js.map +1 -0
  70. package/dist/cli/pm2-jlist.d.ts +13 -0
  71. package/dist/cli/pm2-jlist.d.ts.map +1 -0
  72. package/dist/cli/pm2-jlist.js +108 -0
  73. package/dist/cli/pm2-jlist.js.map +1 -0
  74. package/dist/cli/pm2-preflight.d.ts +10 -0
  75. package/dist/cli/pm2-preflight.d.ts.map +1 -0
  76. package/dist/cli/pm2-preflight.js +23 -0
  77. package/dist/cli/pm2-preflight.js.map +1 -0
  78. package/dist/cli/pm2-shutdown-capability.d.ts +27 -0
  79. package/dist/cli/pm2-shutdown-capability.d.ts.map +1 -0
  80. package/dist/cli/pm2-shutdown-capability.js +161 -0
  81. package/dist/cli/pm2-shutdown-capability.js.map +1 -0
  82. package/dist/cli/pm2-start-transaction.d.ts +55 -0
  83. package/dist/cli/pm2-start-transaction.d.ts.map +1 -0
  84. package/dist/cli/pm2-start-transaction.js +220 -0
  85. package/dist/cli/pm2-start-transaction.js.map +1 -0
  86. package/dist/cli/send-dispatch.d.ts +12 -0
  87. package/dist/cli/send-dispatch.d.ts.map +1 -1
  88. package/dist/cli/send-dispatch.js +31 -4
  89. package/dist/cli/send-dispatch.js.map +1 -1
  90. package/dist/cli/session-list-liveness.d.ts +1 -0
  91. package/dist/cli/session-list-liveness.d.ts.map +1 -1
  92. package/dist/cli/session-list-liveness.js +6 -0
  93. package/dist/cli/session-list-liveness.js.map +1 -1
  94. package/dist/cli/session-picker-layout.d.ts +26 -0
  95. package/dist/cli/session-picker-layout.d.ts.map +1 -0
  96. package/dist/cli/session-picker-layout.js +123 -0
  97. package/dist/cli/session-picker-layout.js.map +1 -0
  98. package/dist/cli/session-picker-viewport.d.ts +49 -0
  99. package/dist/cli/session-picker-viewport.d.ts.map +1 -0
  100. package/dist/cli/session-picker-viewport.js +46 -0
  101. package/dist/cli/session-picker-viewport.js.map +1 -0
  102. package/dist/cli/supervisor-shutdown-client.d.ts +31 -0
  103. package/dist/cli/supervisor-shutdown-client.d.ts.map +1 -0
  104. package/dist/cli/supervisor-shutdown-client.js +146 -0
  105. package/dist/cli/supervisor-shutdown-client.js.map +1 -0
  106. package/dist/cli/terminal-width.d.ts +48 -0
  107. package/dist/cli/terminal-width.d.ts.map +1 -0
  108. package/dist/cli/terminal-width.js +119 -0
  109. package/dist/cli/terminal-width.js.map +1 -0
  110. package/dist/cli/vc-agent.d.ts.map +1 -1
  111. package/dist/cli/vc-agent.js +1 -1
  112. package/dist/cli/vc-agent.js.map +1 -1
  113. package/dist/cli.d.ts.map +1 -1
  114. package/dist/cli.js +2269 -716
  115. package/dist/cli.js.map +1 -1
  116. package/dist/codex-app-runner.js +1630 -125
  117. package/dist/codex-app-runner.js.map +1 -1
  118. package/dist/core/ask-api.d.ts +8 -1
  119. package/dist/core/ask-api.d.ts.map +1 -1
  120. package/dist/core/ask-api.js +18 -0
  121. package/dist/core/ask-api.js.map +1 -1
  122. package/dist/core/ask-broker.d.ts +20 -0
  123. package/dist/core/ask-broker.d.ts.map +1 -1
  124. package/dist/core/ask-broker.js +467 -47
  125. package/dist/core/ask-broker.js.map +1 -1
  126. package/dist/core/ask-persist-store.d.ts +126 -0
  127. package/dist/core/ask-persist-store.d.ts.map +1 -0
  128. package/dist/core/ask-persist-store.js +188 -0
  129. package/dist/core/ask-persist-store.js.map +1 -0
  130. package/dist/core/ask-types.d.ts +80 -0
  131. package/dist/core/ask-types.d.ts.map +1 -1
  132. package/dist/core/ask-types.js +62 -0
  133. package/dist/core/ask-types.js.map +1 -1
  134. package/dist/core/cli-session-id-publisher.d.ts +20 -0
  135. package/dist/core/cli-session-id-publisher.d.ts.map +1 -0
  136. package/dist/core/cli-session-id-publisher.js +21 -0
  137. package/dist/core/cli-session-id-publisher.js.map +1 -0
  138. package/dist/core/command-handler.d.ts.map +1 -1
  139. package/dist/core/command-handler.js +427 -255
  140. package/dist/core/command-handler.js.map +1 -1
  141. package/dist/core/cost-calculator.d.ts +13 -0
  142. package/dist/core/cost-calculator.d.ts.map +1 -1
  143. package/dist/core/cost-calculator.js +385 -26
  144. package/dist/core/cost-calculator.js.map +1 -1
  145. package/dist/core/dashboard-ipc-server.d.ts +9 -0
  146. package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
  147. package/dist/core/dashboard-ipc-server.js +842 -288
  148. package/dist/core/dashboard-ipc-server.js.map +1 -1
  149. package/dist/core/explicit-session-backing-cleanup.d.ts +49 -0
  150. package/dist/core/explicit-session-backing-cleanup.d.ts.map +1 -0
  151. package/dist/core/explicit-session-backing-cleanup.js +76 -0
  152. package/dist/core/explicit-session-backing-cleanup.js.map +1 -0
  153. package/dist/core/idle-worker-sweeper.d.ts +20 -0
  154. package/dist/core/idle-worker-sweeper.d.ts.map +1 -1
  155. package/dist/core/idle-worker-sweeper.js +18 -0
  156. package/dist/core/idle-worker-sweeper.js.map +1 -1
  157. package/dist/core/inflight-input-tracker.d.ts +10 -0
  158. package/dist/core/inflight-input-tracker.d.ts.map +1 -1
  159. package/dist/core/inflight-input-tracker.js +7 -0
  160. package/dist/core/inflight-input-tracker.js.map +1 -1
  161. package/dist/core/managed-origin-attestation.d.ts +51 -0
  162. package/dist/core/managed-origin-attestation.d.ts.map +1 -0
  163. package/dist/core/managed-origin-attestation.js +208 -0
  164. package/dist/core/managed-origin-attestation.js.map +1 -0
  165. package/dist/core/managed-origin-capability.d.ts +62 -3
  166. package/dist/core/managed-origin-capability.d.ts.map +1 -1
  167. package/dist/core/managed-origin-capability.js +419 -9
  168. package/dist/core/managed-origin-capability.js.map +1 -1
  169. package/dist/core/pending-repo-journal.d.ts +6 -0
  170. package/dist/core/pending-repo-journal.d.ts.map +1 -0
  171. package/dist/core/pending-repo-journal.js +85 -0
  172. package/dist/core/pending-repo-journal.js.map +1 -0
  173. package/dist/core/persistent-backend.d.ts +6 -1
  174. package/dist/core/persistent-backend.d.ts.map +1 -1
  175. package/dist/core/persistent-backend.js +12 -6
  176. package/dist/core/persistent-backend.js.map +1 -1
  177. package/dist/core/process-start-identity.d.ts +3 -0
  178. package/dist/core/process-start-identity.d.ts.map +1 -0
  179. package/dist/core/process-start-identity.js +62 -0
  180. package/dist/core/process-start-identity.js.map +1 -0
  181. package/dist/core/raw-command-writer.d.ts +34 -0
  182. package/dist/core/raw-command-writer.d.ts.map +1 -0
  183. package/dist/core/raw-command-writer.js +48 -0
  184. package/dist/core/raw-command-writer.js.map +1 -0
  185. package/dist/core/reply-target.d.ts +85 -22
  186. package/dist/core/reply-target.d.ts.map +1 -1
  187. package/dist/core/reply-target.js +267 -32
  188. package/dist/core/reply-target.js.map +1 -1
  189. package/dist/core/resource-monitor/runtime.d.ts.map +1 -1
  190. package/dist/core/resource-monitor/runtime.js +4 -1
  191. package/dist/core/resource-monitor/runtime.js.map +1 -1
  192. package/dist/core/restart-report.d.ts +6 -1
  193. package/dist/core/restart-report.d.ts.map +1 -1
  194. package/dist/core/restart-report.js +22 -4
  195. package/dist/core/restart-report.js.map +1 -1
  196. package/dist/core/riff-shutdown-detach.d.ts +164 -0
  197. package/dist/core/riff-shutdown-detach.d.ts.map +1 -0
  198. package/dist/core/riff-shutdown-detach.js +787 -0
  199. package/dist/core/riff-shutdown-detach.js.map +1 -0
  200. package/dist/core/riff-worker-shutdown-readiness.d.ts +17 -0
  201. package/dist/core/riff-worker-shutdown-readiness.d.ts.map +1 -0
  202. package/dist/core/riff-worker-shutdown-readiness.js +21 -0
  203. package/dist/core/riff-worker-shutdown-readiness.js.map +1 -0
  204. package/dist/core/session-manager.d.ts +6 -6
  205. package/dist/core/session-manager.d.ts.map +1 -1
  206. package/dist/core/session-manager.js +1227 -594
  207. package/dist/core/session-manager.js.map +1 -1
  208. package/dist/core/session-marker.d.ts +1 -1
  209. package/dist/core/session-marker.d.ts.map +1 -1
  210. package/dist/core/session-marker.js +2 -2
  211. package/dist/core/session-marker.js.map +1 -1
  212. package/dist/core/session-mutation-guard.d.ts +17 -0
  213. package/dist/core/session-mutation-guard.d.ts.map +1 -0
  214. package/dist/core/session-mutation-guard.js +33 -0
  215. package/dist/core/session-mutation-guard.js.map +1 -0
  216. package/dist/core/shutdown-budgets.d.ts +27 -0
  217. package/dist/core/shutdown-budgets.d.ts.map +1 -0
  218. package/dist/core/shutdown-budgets.js +47 -0
  219. package/dist/core/shutdown-budgets.js.map +1 -0
  220. package/dist/core/supervisor-shutdown-ipc.d.ts +10 -0
  221. package/dist/core/supervisor-shutdown-ipc.d.ts.map +1 -0
  222. package/dist/core/supervisor-shutdown-ipc.js +10 -0
  223. package/dist/core/supervisor-shutdown-ipc.js.map +1 -0
  224. package/dist/core/supervisor-shutdown-protocol.d.ts +16 -0
  225. package/dist/core/supervisor-shutdown-protocol.d.ts.map +1 -0
  226. package/dist/core/supervisor-shutdown-protocol.js +16 -0
  227. package/dist/core/supervisor-shutdown-protocol.js.map +1 -0
  228. package/dist/core/trigger-final-suppression.d.ts +4 -0
  229. package/dist/core/trigger-final-suppression.d.ts.map +1 -1
  230. package/dist/core/trigger-final-suppression.js +6 -11
  231. package/dist/core/trigger-final-suppression.js.map +1 -1
  232. package/dist/core/trigger-session.d.ts +70 -0
  233. package/dist/core/trigger-session.d.ts.map +1 -1
  234. package/dist/core/trigger-session.js +923 -145
  235. package/dist/core/trigger-session.js.map +1 -1
  236. package/dist/core/types.d.ts +94 -1
  237. package/dist/core/types.d.ts.map +1 -1
  238. package/dist/core/types.js +9 -0
  239. package/dist/core/types.js.map +1 -1
  240. package/dist/core/worker-pool.d.ts +194 -13
  241. package/dist/core/worker-pool.d.ts.map +1 -1
  242. package/dist/core/worker-pool.js +2597 -547
  243. package/dist/core/worker-pool.js.map +1 -1
  244. package/dist/daemon.d.ts +76 -2
  245. package/dist/daemon.d.ts.map +1 -1
  246. package/dist/daemon.js +2255 -773
  247. package/dist/daemon.js.map +1 -1
  248. package/dist/dashboard/bot-payload.d.ts +20 -0
  249. package/dist/dashboard/bot-payload.d.ts.map +1 -1
  250. package/dist/dashboard/bot-payload.js +24 -0
  251. package/dist/dashboard/bot-payload.js.map +1 -1
  252. package/dist/dashboard/feed-groups.d.ts +17 -0
  253. package/dist/dashboard/feed-groups.d.ts.map +1 -0
  254. package/dist/dashboard/feed-groups.js +75 -0
  255. package/dist/dashboard/feed-groups.js.map +1 -0
  256. package/dist/dashboard/session-card-model.d.ts +1 -1
  257. package/dist/dashboard/session-card-model.d.ts.map +1 -1
  258. package/dist/dashboard/session-card-model.js +8 -5
  259. package/dist/dashboard/session-card-model.js.map +1 -1
  260. package/dist/dashboard/web/bot-defaults-page.d.ts +4 -0
  261. package/dist/dashboard/web/bot-defaults-page.d.ts.map +1 -1
  262. package/dist/dashboard/web/bot-defaults-page.js +139 -46
  263. package/dist/dashboard/web/bot-defaults-page.js.map +1 -1
  264. package/dist/dashboard/web/bot-defaults.d.ts +4 -0
  265. package/dist/dashboard/web/bot-defaults.d.ts.map +1 -1
  266. package/dist/dashboard/web/bot-defaults.js.map +1 -1
  267. package/dist/dashboard/web/connectors-page.d.ts.map +1 -1
  268. package/dist/dashboard/web/connectors-page.js +40 -3
  269. package/dist/dashboard/web/connectors-page.js.map +1 -1
  270. package/dist/dashboard/web/groups-page.d.ts.map +1 -1
  271. package/dist/dashboard/web/groups-page.js +95 -2
  272. package/dist/dashboard/web/groups-page.js.map +1 -1
  273. package/dist/dashboard/web/i18n.d.ts.map +1 -1
  274. package/dist/dashboard/web/i18n.js +86 -40
  275. package/dist/dashboard/web/i18n.js.map +1 -1
  276. package/dist/dashboard/web/kanban-model.js +1 -1
  277. package/dist/dashboard/web/kanban-model.js.map +1 -1
  278. package/dist/dashboard/web/overview-page.d.ts.map +1 -1
  279. package/dist/dashboard/web/overview-page.js +3 -2
  280. package/dist/dashboard/web/overview-page.js.map +1 -1
  281. package/dist/dashboard/web/overview.d.ts +3 -0
  282. package/dist/dashboard/web/overview.d.ts.map +1 -1
  283. package/dist/dashboard/web/overview.js +2 -0
  284. package/dist/dashboard/web/overview.js.map +1 -1
  285. package/dist/dashboard/web/sessions-kanban.d.ts.map +1 -1
  286. package/dist/dashboard/web/sessions-kanban.js +2 -0
  287. package/dist/dashboard/web/sessions-kanban.js.map +1 -1
  288. package/dist/dashboard/web/sessions-page.d.ts.map +1 -1
  289. package/dist/dashboard/web/sessions-page.js +103 -2
  290. package/dist/dashboard/web/sessions-page.js.map +1 -1
  291. package/dist/dashboard/web/sessions.d.ts.map +1 -1
  292. package/dist/dashboard/web/sessions.js +3 -2
  293. package/dist/dashboard/web/sessions.js.map +1 -1
  294. package/dist/dashboard/web/ui.d.ts +8 -0
  295. package/dist/dashboard/web/ui.d.ts.map +1 -1
  296. package/dist/dashboard/web/ui.js +15 -0
  297. package/dist/dashboard/web/ui.js.map +1 -1
  298. package/dist/dashboard-web/app.js +1 -1
  299. package/dist/dashboard-web/chunks/bot-defaults-page-GED4FEMS.js +10 -0
  300. package/dist/dashboard-web/chunks/chunk-6J5LS5AU.js +51 -0
  301. package/dist/dashboard-web/chunks/{chunk-ZU3UUKAR.js → chunk-HK7NIBJG.js} +1 -1
  302. package/dist/dashboard-web/chunks/{chunk-3UE7S77S.js → chunk-KRHWZEXU.js} +1 -1
  303. package/dist/dashboard-web/chunks/chunk-VBXJOJFH.js +1 -0
  304. package/dist/dashboard-web/chunks/connectors-page-EELM66G3.js +1 -0
  305. package/dist/dashboard-web/chunks/groups-page-WKUV6E42.js +8 -0
  306. package/dist/dashboard-web/chunks/{insights-page-T2ZX2RWL.js → insights-page-54UBPPOC.js} +1 -1
  307. package/dist/dashboard-web/chunks/{monitor-room-YNVBAGR6.js → monitor-room-PORHVKRH.js} +1 -1
  308. package/dist/dashboard-web/chunks/{monitoring-page-LHM55YWN.js → monitoring-page-XGA7AXNL.js} +1 -1
  309. package/dist/dashboard-web/chunks/{office-page-ATXVP7PW.js → office-page-AO3AFG45.js} +1 -1
  310. package/dist/dashboard-web/chunks/overview-page-F5BUTYR6.js +1 -0
  311. package/dist/dashboard-web/chunks/{roles-page-56VWM6CD.js → roles-page-M5GIASJU.js} +1 -1
  312. package/dist/dashboard-web/chunks/{schedules-page-S5K6U4EO.js → schedules-page-O232WQRR.js} +1 -1
  313. package/dist/dashboard-web/chunks/sessions-page-YFRPSTIL.js +6 -0
  314. package/dist/dashboard-web/chunks/{settings-page-QUZDQARR.js → settings-page-OJAZLZQT.js} +1 -1
  315. package/dist/dashboard-web/chunks/{skills-page-IFY7AEND.js → skills-page-EFZQPWV4.js} +1 -1
  316. package/dist/dashboard-web/chunks/{team-federation-page-C7FJQPFZ.js → team-federation-page-ZJVAP7HW.js} +1 -1
  317. package/dist/dashboard-web/chunks/{v3-page-2LMF3WWR.js → v3-page-GYWTRGO2.js} +1 -1
  318. package/dist/dashboard-web/chunks/{whiteboards-page-3XC6QRMY.js → whiteboards-page-MSDAG6P7.js} +1 -1
  319. package/dist/dashboard-web/style.css +255 -0
  320. package/dist/dashboard.js +172 -7
  321. package/dist/dashboard.js.map +1 -1
  322. package/dist/desktop/renderer/app.js +21 -0
  323. package/dist/desktop/renderer/app.js.map +1 -1
  324. package/dist/i18n/en.d.ts.map +1 -1
  325. package/dist/i18n/en.js +35 -9
  326. package/dist/i18n/en.js.map +1 -1
  327. package/dist/i18n/zh.d.ts.map +1 -1
  328. package/dist/i18n/zh.js +35 -9
  329. package/dist/i18n/zh.js.map +1 -1
  330. package/dist/im/lark/ask-card.d.ts +23 -0
  331. package/dist/im/lark/ask-card.d.ts.map +1 -1
  332. package/dist/im/lark/ask-card.js +94 -4
  333. package/dist/im/lark/ask-card.js.map +1 -1
  334. package/dist/im/lark/card-builder.d.ts +6 -1
  335. package/dist/im/lark/card-builder.d.ts.map +1 -1
  336. package/dist/im/lark/card-builder.js +112 -15
  337. package/dist/im/lark/card-builder.js.map +1 -1
  338. package/dist/im/lark/card-handler.d.ts +1 -1
  339. package/dist/im/lark/card-handler.d.ts.map +1 -1
  340. package/dist/im/lark/card-handler.js +496 -310
  341. package/dist/im/lark/card-handler.js.map +1 -1
  342. package/dist/im/lark/client.d.ts +7 -0
  343. package/dist/im/lark/client.d.ts.map +1 -1
  344. package/dist/im/lark/client.js +39 -26
  345. package/dist/im/lark/client.js.map +1 -1
  346. package/dist/im/lark/doc-comment.d.ts +7 -4
  347. package/dist/im/lark/doc-comment.d.ts.map +1 -1
  348. package/dist/im/lark/doc-comment.js +19 -6
  349. package/dist/im/lark/doc-comment.js.map +1 -1
  350. package/dist/im/lark/event-dispatcher.d.ts +16 -0
  351. package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
  352. package/dist/im/lark/event-dispatcher.js +88 -23
  353. package/dist/im/lark/event-dispatcher.js.map +1 -1
  354. package/dist/im/lark/forward-followup-content.d.ts.map +1 -1
  355. package/dist/im/lark/forward-followup-content.js +9 -1
  356. package/dist/im/lark/forward-followup-content.js.map +1 -1
  357. package/dist/im/lark/grant-command.d.ts.map +1 -1
  358. package/dist/im/lark/grant-command.js +7 -4
  359. package/dist/im/lark/grant-command.js.map +1 -1
  360. package/dist/im/lark/md-card.d.ts +11 -0
  361. package/dist/im/lark/md-card.d.ts.map +1 -1
  362. package/dist/im/lark/md-card.js +46 -0
  363. package/dist/im/lark/md-card.js.map +1 -1
  364. package/dist/im/lark/message-parser.d.ts +23 -2
  365. package/dist/im/lark/message-parser.d.ts.map +1 -1
  366. package/dist/im/lark/message-parser.js +58 -3
  367. package/dist/im/lark/message-parser.js.map +1 -1
  368. package/dist/im/lark/overview-card.d.ts.map +1 -1
  369. package/dist/im/lark/overview-card.js +2 -1
  370. package/dist/im/lark/overview-card.js.map +1 -1
  371. package/dist/services/async-trigger-state.d.ts +6 -1
  372. package/dist/services/async-trigger-state.d.ts.map +1 -1
  373. package/dist/services/async-trigger-state.js +21 -0
  374. package/dist/services/async-trigger-state.js.map +1 -1
  375. package/dist/services/async-trigger-store.d.ts +23 -1
  376. package/dist/services/async-trigger-store.d.ts.map +1 -1
  377. package/dist/services/async-trigger-store.js +96 -13
  378. package/dist/services/async-trigger-store.js.map +1 -1
  379. package/dist/services/bridge-fallback-gate.d.ts +40 -0
  380. package/dist/services/bridge-fallback-gate.d.ts.map +1 -1
  381. package/dist/services/bridge-fallback-gate.js +124 -24
  382. package/dist/services/bridge-fallback-gate.js.map +1 -1
  383. package/dist/services/codex-app-runner-protocol.d.ts +8 -0
  384. package/dist/services/codex-app-runner-protocol.d.ts.map +1 -1
  385. package/dist/services/codex-app-runner-protocol.js +9 -2
  386. package/dist/services/codex-app-runner-protocol.js.map +1 -1
  387. package/dist/services/codex-bridge-queue.d.ts +1 -0
  388. package/dist/services/codex-bridge-queue.d.ts.map +1 -1
  389. package/dist/services/codex-bridge-queue.js +1 -0
  390. package/dist/services/codex-bridge-queue.js.map +1 -1
  391. package/dist/services/codex-service-tier.d.ts +2 -0
  392. package/dist/services/codex-service-tier.d.ts.map +1 -1
  393. package/dist/services/codex-service-tier.js +1 -0
  394. package/dist/services/codex-service-tier.js.map +1 -1
  395. package/dist/services/codex-transcript.d.ts +27 -0
  396. package/dist/services/codex-transcript.d.ts.map +1 -1
  397. package/dist/services/codex-transcript.js +340 -2
  398. package/dist/services/codex-transcript.js.map +1 -1
  399. package/dist/services/grant-policy.d.ts +3 -0
  400. package/dist/services/grant-policy.d.ts.map +1 -1
  401. package/dist/services/grant-policy.js +5 -0
  402. package/dist/services/grant-policy.js.map +1 -1
  403. package/dist/services/grant-prefs-store.d.ts +6 -3
  404. package/dist/services/grant-prefs-store.d.ts.map +1 -1
  405. package/dist/services/grant-prefs-store.js +42 -12
  406. package/dist/services/grant-prefs-store.js.map +1 -1
  407. package/dist/services/hook-runner.d.ts +20 -1
  408. package/dist/services/hook-runner.d.ts.map +1 -1
  409. package/dist/services/hook-runner.js +17 -13
  410. package/dist/services/hook-runner.js.map +1 -1
  411. package/dist/services/idempotency-store.d.ts +134 -0
  412. package/dist/services/idempotency-store.d.ts.map +1 -0
  413. package/dist/services/idempotency-store.js +299 -0
  414. package/dist/services/idempotency-store.js.map +1 -0
  415. package/dist/services/jsonl-cursor.d.ts +7 -3
  416. package/dist/services/jsonl-cursor.d.ts.map +1 -1
  417. package/dist/services/jsonl-cursor.js +55 -31
  418. package/dist/services/jsonl-cursor.js.map +1 -1
  419. package/dist/services/open-platform-rename.d.ts.map +1 -1
  420. package/dist/services/open-platform-rename.js +1 -108
  421. package/dist/services/open-platform-rename.js.map +1 -1
  422. package/dist/services/restart-intent-store.d.ts +22 -2
  423. package/dist/services/restart-intent-store.d.ts.map +1 -1
  424. package/dist/services/restart-intent-store.js +160 -18
  425. package/dist/services/restart-intent-store.js.map +1 -1
  426. package/dist/services/sandbox-store.d.ts +22 -0
  427. package/dist/services/sandbox-store.d.ts.map +1 -1
  428. package/dist/services/sandbox-store.js +37 -8
  429. package/dist/services/sandbox-store.js.map +1 -1
  430. package/dist/services/send-policy.d.ts +41 -33
  431. package/dist/services/send-policy.d.ts.map +1 -1
  432. package/dist/services/send-policy.js +39 -40
  433. package/dist/services/send-policy.js.map +1 -1
  434. package/dist/services/session-store.d.ts +66 -0
  435. package/dist/services/session-store.d.ts.map +1 -1
  436. package/dist/services/session-store.js +403 -67
  437. package/dist/services/session-store.js.map +1 -1
  438. package/dist/services/submit-notification.d.ts +3 -0
  439. package/dist/services/submit-notification.d.ts.map +1 -0
  440. package/dist/services/submit-notification.js +15 -0
  441. package/dist/services/submit-notification.js.map +1 -0
  442. package/dist/services/traex-transcript.d.ts +25 -2
  443. package/dist/services/traex-transcript.d.ts.map +1 -1
  444. package/dist/services/traex-transcript.js +133 -1
  445. package/dist/services/traex-transcript.js.map +1 -1
  446. package/dist/services/trigger-types.d.ts +13 -1
  447. package/dist/services/trigger-types.d.ts.map +1 -1
  448. package/dist/services/trigger-types.js +39 -0
  449. package/dist/services/trigger-types.js.map +1 -1
  450. package/dist/services/voice/index.d.ts +3 -2
  451. package/dist/services/voice/index.d.ts.map +1 -1
  452. package/dist/services/voice/index.js +5 -5
  453. package/dist/services/voice/index.js.map +1 -1
  454. package/dist/services/voice/openai.d.ts +2 -1
  455. package/dist/services/voice/openai.d.ts.map +1 -1
  456. package/dist/services/voice/openai.js +2 -1
  457. package/dist/services/voice/openai.js.map +1 -1
  458. package/dist/services/voice/sami.d.ts +5 -2
  459. package/dist/services/voice/sami.d.ts.map +1 -1
  460. package/dist/services/voice/sami.js +19 -4
  461. package/dist/services/voice/sami.js.map +1 -1
  462. package/dist/setup/bots-store.d.ts.map +1 -1
  463. package/dist/setup/bots-store.js +10 -4
  464. package/dist/setup/bots-store.js.map +1 -1
  465. package/dist/setup/lark-scopes.json +2 -0
  466. package/dist/setup/open-platform-automation.d.ts +9 -1
  467. package/dist/setup/open-platform-automation.d.ts.map +1 -1
  468. package/dist/setup/open-platform-automation.js +44 -15
  469. package/dist/setup/open-platform-automation.js.map +1 -1
  470. package/dist/setup/open-platform-visibility.d.ts +42 -0
  471. package/dist/setup/open-platform-visibility.d.ts.map +1 -0
  472. package/dist/setup/open-platform-visibility.js +133 -0
  473. package/dist/setup/open-platform-visibility.js.map +1 -0
  474. package/dist/setup/verify-permissions.d.ts.map +1 -1
  475. package/dist/setup/verify-permissions.js +6 -0
  476. package/dist/setup/verify-permissions.js.map +1 -1
  477. package/dist/skills/definitions.js +2 -2
  478. package/dist/types.d.ts +290 -13
  479. package/dist/types.d.ts.map +1 -1
  480. package/dist/utils/bot-routing.d.ts +1 -0
  481. package/dist/utils/bot-routing.d.ts.map +1 -1
  482. package/dist/utils/bot-routing.js +1 -1
  483. package/dist/utils/bot-routing.js.map +1 -1
  484. package/dist/utils/child-env.d.ts +1 -1
  485. package/dist/utils/child-env.d.ts.map +1 -1
  486. package/dist/utils/child-env.js +9 -0
  487. package/dist/utils/child-env.js.map +1 -1
  488. package/dist/utils/codex-app-control.d.ts +438 -0
  489. package/dist/utils/codex-app-control.d.ts.map +1 -0
  490. package/dist/utils/codex-app-control.js +2336 -0
  491. package/dist/utils/codex-app-control.js.map +1 -0
  492. package/dist/utils/codex-app-dispatch-ledger.d.ts +78 -0
  493. package/dist/utils/codex-app-dispatch-ledger.d.ts.map +1 -0
  494. package/dist/utils/codex-app-dispatch-ledger.js +149 -0
  495. package/dist/utils/codex-app-dispatch-ledger.js.map +1 -0
  496. package/dist/utils/codex-app-turn-dispatch.d.ts +77 -0
  497. package/dist/utils/codex-app-turn-dispatch.d.ts.map +1 -0
  498. package/dist/utils/codex-app-turn-dispatch.js +141 -0
  499. package/dist/utils/codex-app-turn-dispatch.js.map +1 -0
  500. package/dist/utils/codex-app-turn-liveness.d.ts +125 -0
  501. package/dist/utils/codex-app-turn-liveness.d.ts.map +1 -0
  502. package/dist/utils/codex-app-turn-liveness.js +301 -0
  503. package/dist/utils/codex-app-turn-liveness.js.map +1 -0
  504. package/dist/utils/idle-detector.d.ts +12 -0
  505. package/dist/utils/idle-detector.d.ts.map +1 -1
  506. package/dist/utils/idle-detector.js +19 -0
  507. package/dist/utils/idle-detector.js.map +1 -1
  508. package/dist/utils/input-gate.d.ts +87 -0
  509. package/dist/utils/input-gate.d.ts.map +1 -1
  510. package/dist/utils/input-gate.js +86 -0
  511. package/dist/utils/input-gate.js.map +1 -1
  512. package/dist/utils/lark-upload.d.ts.map +1 -1
  513. package/dist/utils/lark-upload.js +52 -1
  514. package/dist/utils/lark-upload.js.map +1 -1
  515. package/dist/utils/pending-input-queue.d.ts +15 -0
  516. package/dist/utils/pending-input-queue.d.ts.map +1 -1
  517. package/dist/utils/pending-input-queue.js +5 -1
  518. package/dist/utils/pending-input-queue.js.map +1 -1
  519. package/dist/utils/user-token.d.ts.map +1 -1
  520. package/dist/utils/user-token.js +53 -2
  521. package/dist/utils/user-token.js.map +1 -1
  522. package/dist/worker-ipc-preload.d.ts +12 -0
  523. package/dist/worker-ipc-preload.d.ts.map +1 -0
  524. package/dist/worker-ipc-preload.js +44 -0
  525. package/dist/worker-ipc-preload.js.map +1 -0
  526. package/dist/worker.js +2604 -325
  527. package/dist/worker.js.map +1 -1
  528. package/dist/workflows/v3/session-relay-client.d.ts +1 -0
  529. package/dist/workflows/v3/session-relay-client.d.ts.map +1 -1
  530. package/dist/workflows/v3/session-relay-client.js +12 -3
  531. package/dist/workflows/v3/session-relay-client.js.map +1 -1
  532. package/package.json +1 -1
  533. package/dist/dashboard-web/chunks/bot-defaults-page-LTVOUDIS.js +0 -10
  534. package/dist/dashboard-web/chunks/chunk-DCS35UMD.js +0 -1
  535. package/dist/dashboard-web/chunks/chunk-MFQPCVHY.js +0 -51
  536. package/dist/dashboard-web/chunks/connectors-page-5KWDIMKC.js +0 -1
  537. package/dist/dashboard-web/chunks/groups-page-FHOKYXMW.js +0 -8
  538. package/dist/dashboard-web/chunks/overview-page-QYI3KBDD.js +0 -1
  539. package/dist/dashboard-web/chunks/sessions-page-WBP4N7D2.js +0 -6
@@ -7,6 +7,44 @@ export declare const BRIDGE_NOTHING_TO_SEND_SENTINEL = "BOTMUX_NOTHING_TO_SEND";
7
7
  * instruction surface moved to the new name. */
8
8
  export declare const BRIDGE_NO_REPLY_SENTINEL_LEGACY = "BOTMUX_NO_REPLY";
9
9
  export declare function isBridgeNothingToSendFinal(finalText: string | undefined): boolean;
10
+ /** Remove the trailing RUN of standalone sentinel lines (current or legacy
11
+ * token, mixable) plus interleaved blank lines from `finalText`, returning the
12
+ * text that should actually reach Lark.
13
+ *
14
+ * Stripping the whole trailing run — not just one line — is required to keep the
15
+ * "literal token never reaches Lark" guarantee: a model can emit the sentinel
16
+ * more than once (`prose\nTOKEN\nTOKEN`, or a bare `TOKEN\nTOKEN`). A one-line
17
+ * strip would leave a surviving token to leak, and a bare multi-token final
18
+ * would be misjudged as "not silence" and post a literal token — a regression
19
+ * vs the old whole-turn suppression. We peel blank + sentinel lines off the end
20
+ * until the last remaining line is real prose (or nothing is left).
21
+ *
22
+ * - `BOTMUX_NOTHING_TO_SEND` → "" (silence)
23
+ * - `TOKEN\nTOKEN` / `TOKEN\n\nTOKEN` → "" (silence — all tokens peeled)
24
+ * - `<prose>\n\nBOTMUX_NOTHING_TO_SEND` → `<prose>` (the real answer)
25
+ * - `<prose>\nTOKEN\nTOKEN` → `<prose>` (both tokens peeled)
26
+ * - `<prose ending mid-sentence …TOKEN>` → unchanged (token inline)
27
+ * - `TOKEN\n\n<more prose>` → unchanged (token not trailing)
28
+ * When the last non-empty line is NOT a sentinel, the input is returned as-is;
29
+ * leading content is untouched. Mixed current/legacy tokens in the run all peel. */
30
+ export declare function stripTrailingBridgeSentinelLine(finalText: string): string;
31
+ /** The text a transcript-drain emit path should actually post for `finalText`.
32
+ *
33
+ * NON-ADOPT: strip a trailing sentinel line so the literal token never reaches
34
+ * Lark (prose+sentinel = the "did work, forgot to send" shape → post the prose).
35
+ *
36
+ * ADOPT: return the text VERBATIM. The adopted CLI is botmux-unaware, transcript
37
+ * drain is its only channel to Lark, and it may legitimately output the literal
38
+ * sentinel string as content. shouldSuppressBridgeEmit(adoptMode) already
39
+ * refuses to interpret the sentinel; stripping here would break that contract
40
+ * (a real answer ending in the token would be truncated, and a verbatim token
41
+ * reply would be dropped by the caller's empty-guard). Callers must gate their
42
+ * own "skip if empty after post" check on !adoptMode to match.
43
+ *
44
+ * Shared by emitReadyTurns and emitReadyCodexTurns so the per-mode rule lives in
45
+ * one place and is unit-tested directly. codex-app does not use adopt and drives
46
+ * its own strip on the deliverable content path. */
47
+ export declare function bridgePostText(finalText: string, adoptMode: boolean): string;
10
48
  export interface BridgeSendMarker {
11
49
  sentAtMs: number;
12
50
  messageId?: string;
@@ -69,4 +107,6 @@ export declare function shouldSuppressBridgeEmit(turn: BridgeGateInput, nextBoun
69
107
  * user-facing string (i18n `worker.empty_final_completed`) is worded to account
70
108
  * for that case rather than asserting no send happened. */
71
109
  export declare function shouldEmitEmptyCompletedBridgeFallback(turn: BridgeGateInput, nextBoundaryMs: number | undefined, markers: readonly BridgeSendMarker[], adoptMode: boolean): boolean;
110
+ /** 结构化失败回合补发可见错误;部分回答不能替代失败原因。 */
111
+ export declare function shouldEmitFailedBridgeFallback(turn: BridgeGateInput, nextBoundaryMs: number | undefined, markers: readonly BridgeSendMarker[], adoptMode: boolean): boolean;
72
112
  //# sourceMappingURL=bridge-fallback-gate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bridge-fallback-gate.d.ts","sourceRoot":"","sources":["../../src/services/bridge-fallback-gate.ts"],"names":[],"mappings":"AA8CA,eAAO,MAAM,+BAA+B,2BAA2B,CAAC;AACxE;;;;;iDAKiD;AACjD,eAAO,MAAM,+BAA+B,oBAAoB,CAAC;AAOjE,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAuBjF;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;2DACuD;IACvD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B;;yCAEqC;IACrC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B;qDACiD;IACjD,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B;mFAC+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;gEAC4D;IAC5D,cAAc,CAAC,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;CACvD;AAID;;;;;;oFAMoF;AACpF,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAW9E;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,GACd,IAAI,CAAC,gBAAgB,EAAE,eAAe,GAAG,aAAa,CAAC,GAAG,SAAS,CAUrE;AA8BD,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,eAAe,EACrB,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,OAAO,EAAE,SAAS,gBAAgB,EAAE,EACpC,SAAS,EAAE,OAAO,GACjB,OAAO,CAST;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;2DA2B2D;AAC3D,wBAAgB,sCAAsC,CACpD,IAAI,EAAE,eAAe,EACrB,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,OAAO,EAAE,SAAS,gBAAgB,EAAE,EACpC,SAAS,EAAE,OAAO,GACjB,OAAO,CAMT"}
1
+ {"version":3,"file":"bridge-fallback-gate.d.ts","sourceRoot":"","sources":["../../src/services/bridge-fallback-gate.ts"],"names":[],"mappings":"AAoDA,eAAO,MAAM,+BAA+B,2BAA2B,CAAC;AACxE;;;;;iDAKiD;AACjD,eAAO,MAAM,+BAA+B,oBAAoB,CAAC;AAOjE,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAmBjF;AAgBD;;;;;;;;;;;;;;;;;;;qFAmBqF;AACrF,wBAAgB,+BAA+B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAsBzE;AAED;;;;;;;;;;;;;;;qDAeqD;AACrD,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,MAAM,CAE5E;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;2DACuD;IACvD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B;;yCAEqC;IACrC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B;qDACiD;IACjD,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B;mFAC+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;gEAC4D;IAC5D,cAAc,CAAC,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;CACvD;AAID;;;;;;oFAMoF;AACpF,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAW9E;AAED,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,GACd,IAAI,CAAC,gBAAgB,EAAE,eAAe,GAAG,aAAa,CAAC,GAAG,SAAS,CAUrE;AA8BD,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,eAAe,EACrB,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,OAAO,EAAE,SAAS,gBAAgB,EAAE,EACpC,SAAS,EAAE,OAAO,GACjB,OAAO,CAiBT;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;2DA2B2D;AAC3D,wBAAgB,sCAAsC,CACpD,IAAI,EAAE,eAAe,EACrB,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,OAAO,EAAE,SAAS,gBAAgB,EAAE,EACpC,SAAS,EAAE,OAAO,GACjB,OAAO,CAMT;AAED,kCAAkC;AAClC,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,eAAe,EACrB,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,OAAO,EAAE,SAAS,gBAAgB,EAAE,EACpC,SAAS,EAAE,OAAO,GACjB,OAAO,CAKT"}
@@ -8,15 +8,21 @@
8
8
  * disk and threads them through here.
9
9
  *
10
10
  * Rules:
11
- * - Non-adopt + nothing-to-send sentinel terminator: suppress the whole turn.
12
- * Botmux-aware models use this explicit protocol when a turn has nothing
13
- * left to send (already sent, or genuinely no reply needed). The signal is
14
- * the LAST non-empty line of the final being exactly `BOTMUX_NOTHING_TO_SEND`
15
- * (or the legacy `BOTMUX_NO_REPLY`) models almost always explain the
16
- * silence first and then append the token on its own line, so a full-string
17
- * exact match leaked the literal token into Lark. A token that only appears
18
- * inline (mid-sentence, or with prose after it) is still a normal answer and
19
- * is NOT guessed away. See isBridgeNothingToSendFinal.
11
+ * - Non-adopt + sentinel terminator: the model ended its final with a
12
+ * standalone `BOTMUX_NOTHING_TO_SEND` (or the legacy `BOTMUX_NO_REPLY`)
13
+ * line. Two sub-cases, split by what remains after the sentinel line is
14
+ * stripped (stripTrailingBridgeSentinelLine):
15
+ * · NOTHING remains → genuine silence (#554): the model was triggered but
16
+ * deliberately produced no answer (ambient group chatter, or a message
17
+ * addressed to another bot). Suppress the whole turn. isBridgeNothingToSendFinal.
18
+ * · PROSE remains the model DID produce an answer and merely appended
19
+ * the sentinel. This is the "did work, forgot to `botmux send`, ended
20
+ * with the sentinel" ghosting shape. Do NOT drop it: callers strip the
21
+ * sentinel line and forward the prose through the normal send-marker
22
+ * gate (so a turn that already sent is still suppressed, but an un-sent
23
+ * answer is delivered instead of lost).
24
+ * A token that only appears inline (mid-sentence, or with prose after it) is
25
+ * a normal answer and is left untouched.
20
26
  * - Adopt mode never suppresses: in /adopt the model in the adopted
21
27
  * session is unaware of botmux, so transcript drain is the ONLY
22
28
  * channel from model to Lark. There's no `botmux send` to compete
@@ -57,20 +63,29 @@ const BRIDGE_SENTINEL_TOKENS = [
57
63
  export function isBridgeNothingToSendFinal(finalText) {
58
64
  if (finalText === undefined)
59
65
  return false;
60
- // Suppress the whole turn when the model's final ENDS WITH a standalone
61
- // nothing-to-send sentinel line. We look at the LAST non-empty line only:
62
- // - pure `BOTMUX_NOTHING_TO_SEND` → suppress
63
- // - `<prose>\n\nBOTMUX_NOTHING_TO_SEND` → suppress the whole turn
64
- // - a final whose last non-empty line is prose → NOT a sentinel signal
65
- // (the token inline in a sentence, or followed by more prose, still posts)
66
- // Full-string exact match was too brittle: botmux-aware models almost always
67
- // explain the silence first ("...no reply needed.") and then append the token
68
- // on its own line, which exact match let leak the literal token into Lark.
69
- // Trade-off (accepted): a genuine answer that happens to end with a bare
70
- // sentinel line is dropped WHOLE — the product wants a fully silent turn
71
- // over the safer strip-and-forward. The last-non-empty-line rule (not a
72
- // substring / endsWith test) keeps that risk to finals the model deliberately
73
- // terminated with the sentinel. Both the current and legacy tokens match.
66
+ // "Genuine silence" signal: the final, after stripping a trailing sentinel
67
+ // line, has NOTHING left. This is the #554 case the sentinel exists for — the
68
+ // model was triggered (e.g. ambient group chatter, or a message addressed to
69
+ // another bot) and deliberately produced no answer, terminating with only the
70
+ // sentinel. Suppress the whole turn so no noise reaches Lark.
71
+ //
72
+ // NOTE (behavior change vs the old drop-whole-turn rule): a final that is
73
+ // PROSE followed by a trailing sentinel line is NO LONGER treated as silence.
74
+ // Earlier the whole turn was dropped, which ghosted users who did real work,
75
+ // forgot to `botmux send`, and ended with the sentinel. Now the prose is the
76
+ // real answer: stripTrailingBridgeSentinelLine removes the sentinel line and
77
+ // callers forward the remainder through the normal send-marker gate (so a turn
78
+ // that already `botmux send`-ed is still suppressed, but an un-sent answer is
79
+ // delivered instead of lost). Only a final that is EMPTY once the sentinel is
80
+ // stripped counts as silence here.
81
+ return stripTrailingBridgeSentinelLine(finalText).trim().length === 0
82
+ && hasTrailingBridgeSentinelLine(finalText);
83
+ }
84
+ /** True when the LAST non-empty line of `finalText` is exactly a sentinel token
85
+ * (current or legacy). Used to tell "model deliberately terminated with the
86
+ * sentinel" apart from a normal answer that merely mentions the token inline
87
+ * or has prose after it. */
88
+ function hasTrailingBridgeSentinelLine(finalText) {
74
89
  const lines = finalText.split('\n');
75
90
  for (let i = lines.length - 1; i >= 0; i--) {
76
91
  const line = lines[i].trim();
@@ -80,6 +95,73 @@ export function isBridgeNothingToSendFinal(finalText) {
80
95
  }
81
96
  return false;
82
97
  }
98
+ /** Remove the trailing RUN of standalone sentinel lines (current or legacy
99
+ * token, mixable) plus interleaved blank lines from `finalText`, returning the
100
+ * text that should actually reach Lark.
101
+ *
102
+ * Stripping the whole trailing run — not just one line — is required to keep the
103
+ * "literal token never reaches Lark" guarantee: a model can emit the sentinel
104
+ * more than once (`prose\nTOKEN\nTOKEN`, or a bare `TOKEN\nTOKEN`). A one-line
105
+ * strip would leave a surviving token to leak, and a bare multi-token final
106
+ * would be misjudged as "not silence" and post a literal token — a regression
107
+ * vs the old whole-turn suppression. We peel blank + sentinel lines off the end
108
+ * until the last remaining line is real prose (or nothing is left).
109
+ *
110
+ * - `BOTMUX_NOTHING_TO_SEND` → "" (silence)
111
+ * - `TOKEN\nTOKEN` / `TOKEN\n\nTOKEN` → "" (silence — all tokens peeled)
112
+ * - `<prose>\n\nBOTMUX_NOTHING_TO_SEND` → `<prose>` (the real answer)
113
+ * - `<prose>\nTOKEN\nTOKEN` → `<prose>` (both tokens peeled)
114
+ * - `<prose ending mid-sentence …TOKEN>` → unchanged (token inline)
115
+ * - `TOKEN\n\n<more prose>` → unchanged (token not trailing)
116
+ * When the last non-empty line is NOT a sentinel, the input is returned as-is;
117
+ * leading content is untouched. Mixed current/legacy tokens in the run all peel. */
118
+ export function stripTrailingBridgeSentinelLine(finalText) {
119
+ const lines = finalText.split('\n');
120
+ // Walk back from the end, skipping blank lines and standalone sentinel lines.
121
+ // Stop at the first line that is real prose (or run off the top).
122
+ let end = lines.length - 1;
123
+ let strippedASentinel = false;
124
+ while (end >= 0) {
125
+ const trimmed = lines[end].trim();
126
+ if (trimmed.length === 0) {
127
+ end--;
128
+ continue;
129
+ } // blank — peel
130
+ if (BRIDGE_SENTINEL_TOKENS.includes(trimmed)) { // standalone token — peel
131
+ strippedASentinel = true;
132
+ end--;
133
+ continue;
134
+ }
135
+ break; // real prose — stop
136
+ }
137
+ // If the tail had no standalone sentinel at all, return verbatim (don't trim
138
+ // trailing blanks of an ordinary answer — matches prior behavior).
139
+ if (!strippedASentinel)
140
+ return finalText;
141
+ // Drop any blank lines now orphaned before the first surviving prose line.
142
+ while (end >= 0 && lines[end].trim().length === 0)
143
+ end--;
144
+ return lines.slice(0, end + 1).join('\n');
145
+ }
146
+ /** The text a transcript-drain emit path should actually post for `finalText`.
147
+ *
148
+ * NON-ADOPT: strip a trailing sentinel line so the literal token never reaches
149
+ * Lark (prose+sentinel = the "did work, forgot to send" shape → post the prose).
150
+ *
151
+ * ADOPT: return the text VERBATIM. The adopted CLI is botmux-unaware, transcript
152
+ * drain is its only channel to Lark, and it may legitimately output the literal
153
+ * sentinel string as content. shouldSuppressBridgeEmit(adoptMode) already
154
+ * refuses to interpret the sentinel; stripping here would break that contract
155
+ * (a real answer ending in the token would be truncated, and a verbatim token
156
+ * reply would be dropped by the caller's empty-guard). Callers must gate their
157
+ * own "skip if empty after post" check on !adoptMode to match.
158
+ *
159
+ * Shared by emitReadyTurns and emitReadyCodexTurns so the per-mode rule lives in
160
+ * one place and is unit-tested directly. codex-app does not use adopt and drives
161
+ * its own strip on the deliverable content path. */
162
+ export function bridgePostText(finalText, adoptMode) {
163
+ return adoptMode ? finalText : stripTrailingBridgeSentinelLine(finalText);
164
+ }
83
165
  const BRIDGE_SEND_PREVIEW_MAX_CHARS = 4_000;
84
166
  /** Bounded, newline-preserving copy of a `botmux send` body for dashboard
85
167
  * previews. Unlike the fingerprint normaliser (which collapses ALL whitespace
@@ -146,7 +228,15 @@ export function shouldSuppressBridgeEmit(turn, nextBoundaryMs, markers, adoptMod
146
228
  const lower = turn.markTimeMs;
147
229
  const upper = nextBoundaryMs ?? Number.POSITIVE_INFINITY;
148
230
  const markersInWindow = markers.filter(m => m.sentAtMs >= lower && m.sentAtMs < upper);
149
- return markerSetCoversFinal(markersInWindow, turn.finalText);
231
+ // Compare the SENTINEL-STRIPPED final against send markers: a prose+sentinel
232
+ // final is delivered as the stripped prose (callers strip before send), so the
233
+ // length used for the material-longer check must match what actually posts —
234
+ // otherwise the trailing sentinel line inflates the final past a same-content
235
+ // `botmux send` and defeats dedup.
236
+ const gatedFinal = turn.finalText === undefined
237
+ ? undefined
238
+ : stripTrailingBridgeSentinelLine(turn.finalText);
239
+ return markerSetCoversFinal(markersInWindow, gatedFinal);
150
240
  }
151
241
  /** Some structured CLIs can report a durable completed turn while their
152
242
  * terminal event carries no final text. If there was no explicit `botmux send`
@@ -187,4 +277,14 @@ export function shouldEmitEmptyCompletedBridgeFallback(turn, nextBoundaryMs, mar
187
277
  return false;
188
278
  return !shouldSuppressBridgeEmit(turn, nextBoundaryMs, markers, adoptMode);
189
279
  }
280
+ /** 结构化失败回合补发可见错误;部分回答不能替代失败原因。 */
281
+ export function shouldEmitFailedBridgeFallback(turn, nextBoundaryMs, markers, adoptMode) {
282
+ if (adoptMode)
283
+ return false;
284
+ if (turn.isLocal)
285
+ return false;
286
+ if (turn.terminalStatus !== 'failed')
287
+ return false;
288
+ return !shouldSuppressBridgeEmit(turn, nextBoundaryMs, markers, adoptMode);
289
+ }
190
290
  //# sourceMappingURL=bridge-fallback-gate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bridge-fallback-gate.js","sourceRoot":"","sources":["../../src/services/bridge-fallback-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,MAAM,2BAA2B,GAAG,CAAC,CAAC;AACtC,MAAM,8BAA8B,GAAG,GAAG,CAAC;AAE3C,MAAM,CAAC,MAAM,+BAA+B,GAAG,wBAAwB,CAAC;AACxE;;;;;iDAKiD;AACjD,MAAM,CAAC,MAAM,+BAA+B,GAAG,iBAAiB,CAAC;AAEjE,MAAM,sBAAsB,GAAsB;IAChD,+BAA+B;IAC/B,+BAA+B;CAChC,CAAC;AAEF,MAAM,UAAU,0BAA0B,CAAC,SAA6B;IACtE,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAC1C,wEAAwE;IACxE,0EAA0E;IAC1E,8DAA8D;IAC9D,6EAA6E;IAC7E,2EAA2E;IAC3E,+EAA+E;IAC/E,6EAA6E;IAC7E,8EAA8E;IAC9E,2EAA2E;IAC3E,yEAAyE;IACzE,yEAAyE;IACzE,wEAAwE;IACxE,8EAA8E;IAC9E,0EAA0E;IAC1E,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpC,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAChC,OAAO,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AA2BD,MAAM,6BAA6B,GAAG,KAAK,CAAC;AAE5C;;;;;;oFAMoF;AACpF,MAAM,UAAU,0BAA0B,CAAC,OAAe;IACxD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;SAC/B,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC;SACvB,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC;SAC5B,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC;SAC1B,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;SACnB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACvB,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,OAAO,IAAI,CAAC,MAAM,GAAG,6BAA6B;QAChD,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,6BAA6B,GAAG,CAAC,CAAC,GAAG;QACxD,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,OAAe;IAEf,MAAM,UAAU,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACpD,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAClC,OAAO;QACL,6EAA6E;QAC7E,2EAA2E;QAC3E,aAAa,EAAE,UAAU,CAAC,MAAM;QAChC,0EAA0E;QAC1E,WAAW,EAAE,0BAA0B,CAAC,OAAO,CAAC;KACjD,CAAC;AACJ,CAAC;AAMD,SAAS,0BAA0B,CAAC,MAAwB;IAC1D,OAAO,OAAO,MAAM,CAAC,aAAa,KAAK,QAAQ,CAAC;AAClD,CAAC;AAED,SAAS,gCAAgC,CAAC,WAAmB,EAAE,OAA8C;IAC3G,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9F,OAAO,WAAW,IAAI,aAAa,GAAG,2BAA2B;WAC5D,WAAW,GAAG,aAAa,IAAI,8BAA8B,CAAC;AACrE,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAoC,EAAE,SAA6B;IAC/F,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAEvC,2EAA2E;IAC3E,yEAAyE;IACzE,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAEnE,MAAM,eAAe,GAAG,uBAAuB,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IACjE,IAAI,CAAC,eAAe;QAAE,OAAO,IAAI,CAAC;IAElC,MAAM,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC;IACrE,OAAO,CAAC,gCAAgC,CAAC,eAAe,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;AACtF,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,IAAqB,EACrB,cAAkC,EAClC,OAAoC,EACpC,SAAkB;IAElB,IAAI,SAAS;QAAE,OAAO,KAAK,CAAC;IAC5B,IAAI,0BAA0B,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5D,IAAI,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC9B,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAChD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;IAC9B,MAAM,KAAK,GAAG,cAAc,IAAI,MAAM,CAAC,iBAAiB,CAAC;IACzD,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,KAAK,IAAI,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC;IACvF,OAAO,oBAAoB,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;2DA2B2D;AAC3D,MAAM,UAAU,sCAAsC,CACpD,IAAqB,EACrB,cAAkC,EAClC,OAAoC,EACpC,SAAkB;IAElB,IAAI,SAAS;QAAE,OAAO,KAAK,CAAC;IAC5B,IAAI,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IAC/B,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,IAAI,IAAI,CAAC,cAAc,KAAK,WAAW;QAAE,OAAO,KAAK,CAAC;IAC3F,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3D,OAAO,CAAC,wBAAwB,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;AAC7E,CAAC"}
1
+ {"version":3,"file":"bridge-fallback-gate.js","sourceRoot":"","sources":["../../src/services/bridge-fallback-gate.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,10 @@ export interface CodexAppRunnerInput {
6
6
  codexAppInput?: CodexAppTurnInput;
7
7
  /** Immutable botmux/Lark message id used only for reply routing. */
8
8
  replyTurnId?: string;
9
+ /** Explicit positive: this plain-human-interactive turn may `turn/steer` into
10
+ * an already-active Codex App turn. Missing/false ⇒ forced serial (start its
11
+ * own turn only when the runner is idle). */
12
+ codexAppSteerable?: true;
9
13
  }
10
14
  export interface CodexAppFinalMarker {
11
15
  content: string;
@@ -64,6 +68,10 @@ export interface AppRunnerFinalIds {
64
68
  }
65
69
  export declare function decodeCodexAppRunnerInput(line: string): CodexAppRunnerInput | undefined;
66
70
  export declare function normalizeAppRunnerFinalMarker(payload: unknown): CodexAppFinalMarker | undefined;
71
+ /** Accept the four-bucket usage only when every field is a non-negative integer
72
+ * (a token count), else drop it (daemon omits usage rather than persisting a
73
+ * negative/fractional/partial value that a compromised or buggy runner sent). */
74
+ export declare function normalizeFinalUsage(raw: unknown): CodexAppFinalMarker['usage'] | undefined;
67
75
  export declare function normalizeCodexAppLifecycleEvent(payload: unknown): CodexAppLifecycleEvent | undefined;
68
76
  export declare function projectAppRunnerFinalIds(marker: CodexAppFinalMarker, fallbackTurnId: string | undefined, generatedFallbackId: string): AppRunnerFinalIds;
69
77
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"codex-app-runner-protocol.d.ts","sourceRoot":"","sources":["../../src/services/codex-app-runner-protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex-app-runner-protocol.d.ts","sourceRoot":"","sources":["../../src/services/codex-app-runner-protocol.ts"],"names":[],"mappings":"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"}
@@ -33,12 +33,18 @@ export function decodeCodexAppRunnerInput(line) {
33
33
  if (!isRecord(value) || value.type !== 'message' || typeof value.content !== 'string') {
34
34
  return undefined;
35
35
  }
36
- const allowedKeys = new Set(['type', 'content', 'codexAppInput', 'replyTurnId']);
36
+ const allowedKeys = new Set(['type', 'content', 'codexAppInput', 'replyTurnId', 'codexAppSteerable']);
37
37
  if (Object.keys(value).some(key => !allowedKeys.has(key)))
38
38
  return undefined;
39
39
  if (value.replyTurnId !== undefined && optionalLifecycleId(value.replyTurnId) === undefined) {
40
40
  return undefined;
41
41
  }
42
+ // Explicit positive only: the wire carries `true` or omits the field. Any
43
+ // other value is a malformed control line and rejects the whole input rather
44
+ // than silently downgrading a steer authorization.
45
+ if (value.codexAppSteerable !== undefined && value.codexAppSteerable !== true) {
46
+ return undefined;
47
+ }
42
48
  if (value.codexAppInput !== undefined && !isCodexAppTurnInput(value.codexAppInput)) {
43
49
  return undefined;
44
50
  }
@@ -53,6 +59,7 @@ export function decodeCodexAppRunnerInput(line) {
53
59
  content: value.content,
54
60
  ...(codexAppInput ? { codexAppInput } : {}),
55
61
  ...(replyTurnId ? { replyTurnId } : {}),
62
+ ...(value.codexAppSteerable === true ? { codexAppSteerable: true } : {}),
56
63
  };
57
64
  }
58
65
  export function normalizeAppRunnerFinalMarker(payload) {
@@ -71,7 +78,7 @@ export function normalizeAppRunnerFinalMarker(payload) {
71
78
  /** Accept the four-bucket usage only when every field is a non-negative integer
72
79
  * (a token count), else drop it (daemon omits usage rather than persisting a
73
80
  * negative/fractional/partial value that a compromised or buggy runner sent). */
74
- function normalizeFinalUsage(raw) {
81
+ export function normalizeFinalUsage(raw) {
75
82
  if (!isRecord(raw))
76
83
  return undefined;
77
84
  const keys = ['inputTokens', 'outputTokens', 'cacheReadTokens', 'cacheCreateTokens'];
@@ -1 +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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"}
1
+ {"version":3,"file":"codex-app-runner-protocol.js","sourceRoot":"","sources":["../../src/services/codex-app-runner-protocol.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ export interface CodexPendingTurn {
14
14
  * assistant-final => completed behaviour. */
15
15
  terminalStatus?: 'completed' | 'failed' | 'ambiguous';
16
16
  terminalErrorCode?: string;
17
+ terminalErrorSummary?: string;
17
18
  /** Set when this turn was synthesised from a user_message that didn't
18
19
  * match any pending Lark fingerprint. Adopt-only. The worker emit path
19
20
  * formats these with both userText and finalText under a "终端本地对话"
@@ -1 +1 @@
1
- {"version":3,"file":"codex-bridge-queue.d.ts","sourceRoot":"","sources":["../../src/services/codex-bridge-queue.ts"],"names":[],"mappings":"AAyCA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAK9D,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;kEAE8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;kDAC8C;IAC9C,cAAc,CAAC,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IACtD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;2EAGuE;IACvE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;8EAC0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,UAAU,CAAiC;IACnD,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,iBAAiB,CAA0B;IACnD,OAAO,CAAC,8BAA8B,CAAqB;IAC3D;;8EAE0E;IAC1E,OAAO,CAAC,iBAAiB,CAAK;IAE9B;;6CAEyC;IACzC,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI;IAIxC;;uEAEmE;IACnE,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,GAAE,MAAmB,GAAG,IAAI;IAMxE;;;;+DAI2D;IAC3D,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,GAAE,MAAmB,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI;IAWtG;qDACiD;IACjD,YAAY,IAAI,gBAAgB,EAAE;IAQlC;;;iFAG6E;IAC7E,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAUlF;2DACuD;IACvD,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI;IAQxC,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,SAAS;IA8GjB;wDACoD;IACpD,cAAc,IAAI,gBAAgB,EAAE;IAYpC,IAAI,IAAI,MAAM;IAId,qDAAqD;IACrD,IAAI,IAAI,SAAS,gBAAgB,EAAE;CAGpC"}
1
+ {"version":3,"file":"codex-bridge-queue.d.ts","sourceRoot":"","sources":["../../src/services/codex-bridge-queue.ts"],"names":[],"mappings":"AAyCA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAK9D,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;kEAE8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;kDAC8C;IAC9C,cAAc,CAAC,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IACtD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;;2EAGuE;IACvE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;8EAC0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,UAAU,CAAiC;IACnD,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,iBAAiB,CAA0B;IACnD,OAAO,CAAC,8BAA8B,CAAqB;IAC3D;;8EAE0E;IAC1E,OAAO,CAAC,iBAAiB,CAAK;IAE9B;;6CAEyC;IACzC,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI;IAIxC;;uEAEmE;IACnE,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,GAAE,MAAmB,GAAG,IAAI;IAMxE;;;;+DAI2D;IAC3D,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,GAAE,MAAmB,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI;IAWtG;qDACiD;IACjD,YAAY,IAAI,gBAAgB,EAAE;IAQlC;;;iFAG6E;IAC7E,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI;IAUlF;2DACuD;IACvD,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI;IAQxC,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,SAAS;IA+GjB;wDACoD;IACpD,cAAc,IAAI,gBAAgB,EAAE;IAYpC,IAAI,IAAI,MAAM;IAId,qDAAqD;IACrD,IAAI,IAAI,SAAS,gBAAgB,EAAE;CAGpC"}
@@ -239,6 +239,7 @@ export class CodexBridgeQueue {
239
239
  this.collecting.finalText = ev.text;
240
240
  this.collecting.terminalStatus = ev.terminalStatus;
241
241
  this.collecting.terminalErrorCode = ev.terminalErrorCode;
242
+ this.collecting.terminalErrorSummary = ev.terminalErrorSummary;
242
243
  this.lastClosedAssistantFinalTimeMs = ev.timestampMs;
243
244
  this.collecting = null;
244
245
  }
@@ -1 +1 @@
1
- {"version":3,"file":"codex-bridge-queue.js","sourceRoot":"","sources":["../../src/services/codex-bridge-queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex-bridge-queue.js","sourceRoot":"","sources":["../../src/services/codex-bridge-queue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAGlF,MAAM,0BAA0B,GAAG,KAAK,CAAC;AACzC,MAAM,6BAA6B,GAAG,EAAE,CAAC;AA6BzC,MAAM,OAAO,gBAAgB;IACnB,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IACzB,KAAK,GAAuB,EAAE,CAAC;IAC/B,UAAU,GAA4B,IAAI,CAAC;IAC3C,iBAAiB,GAAG,KAAK,CAAC;IAC1B,iBAAiB,GAAuB,EAAE,CAAC;IAC3C,8BAA8B,CAAqB;IAC3D;;8EAE0E;IAClE,iBAAiB,GAAG,CAAC,CAAC;IAE9B;;6CAEyC;IACzC,MAAM,CAAC,MAA0B;QAC/B,KAAK,MAAM,EAAE,IAAI,MAAM;YAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IAED;;uEAEmE;IACnE,aAAa,CAAC,OAAgB,EAAE,eAAuB,IAAI,CAAC,GAAG,EAAE;QAC/D,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC;QACjC,IAAI,CAAC,iBAAiB,GAAG,YAAY,CAAC;QACtC,IAAI,OAAO;YAAE,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;IAC3C,CAAC;IAED;;;;+DAI2D;IAC3D,IAAI,CAAC,MAAc,EAAE,OAAe,EAAE,aAAqB,IAAI,CAAC,GAAG,EAAE,EAAE,eAAwB;QAC7F,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YACd,MAAM;YACN,eAAe;YACf,OAAO,EAAE,KAAK;YACd,kBAAkB,EAAE,eAAe,CAAC,OAAO,CAAC;YAC5C,UAAU;SACX,CAAC,CAAC;QACH,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IAED;qDACiD;IACjD,YAAY;QACV,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACrC,IAAI,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;YAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACjF,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,8BAA8B,GAAG,SAAS,CAAC;QAChD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;iFAG6E;IAC7E,eAAe,CAAC,MAAc,EAAE,eAAwB;QACtD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CACtC,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,eAAe,KAAK,eAAe,CACnE,CAAC;QACF,IAAI,GAAG,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QACzB,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO;YAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACxD,OAAO,OAAO,IAAI,IAAI,CAAC;IACzB,CAAC;IAED;2DACuD;IACvD,MAAM,CAAC,MAA0B;QAC/B,KAAK,MAAM,EAAE,IAAI,MAAM,EAAE,CAAC;YACxB,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC;gBAAE,SAAS;YACjD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YACvB,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAEO,uBAAuB,CAAC,UAAkB;QAChD,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAChD,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,IAAI,UAAU,GAAG,0BAA0B,CAAC,CAAC;QAC9G,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;QAC5B,KAAK,MAAM,EAAE,IAAI,MAAM;YAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAEO,iBAAiB,CAAC,EAAoB;QAC5C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,6BAA6B,EAAE,CAAC;YAClE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,6BAA6B,CAAC,CAAC;QAClG,CAAC;IACH,CAAC;IAEO,SAAS,CAAC,EAAoB,EAAE,eAAwB;QAC9D,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACvB,uEAAuE;YACvE,uEAAuE;YACvE,sEAAsE;YACtE,8CAA8C;YAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC9C,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,EAAE,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,GAAG,0BAA0B,CAAC;YACxH,IAAI,aAAa,GAAG,IAAI,CAAC;YACzB,IAAI,IAAI,EAAE,kBAAkB,EAAE,CAAC;gBAC7B,aAAa,GAAG,uBAAuB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACrF,CAAC;YACD,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,aAAa,CAAC;YACzD,MAAM,cAAc,GAAG,CAAC,aAAa,IAAI,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,WAAW,IAAI,IAAI,CAAC,iBAAiB,GAAG,0BAA0B,CAAC;YAEzI,oEAAoE;YACpE,yEAAyE;YACzE,sEAAsE;YACtE,uEAAuE;YACvE,uEAAuE;YACvE,kEAAkE;YAClE,uEAAuE;YACvE,yEAAyE;YACzE,wEAAwE;YACxE,uEAAuE;YACvE,wEAAwE;YACxE,sEAAsE;YACtE,yEAAyE;YACzE,sEAAsE;YACtE,IAAI,CAAC,aAAa,IAAI,cAAc,CAAC,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACpG,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAChD,IAAI,GAAG,IAAI,CAAC;oBAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBACxC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACzB,CAAC;YAED,IAAI,aAAa,EAAE,CAAC;gBAClB,IAAK,CAAC,OAAO,GAAG,IAAI,CAAC;gBACrB,IAAK,CAAC,eAAe,GAAG,EAAE,CAAC,eAAe,CAAC;gBAC3C,iEAAiE;gBACjE,2DAA2D;gBAC3D,iEAAiE;gBACjE,gEAAgE;gBAChE,4DAA4D;gBAC5D,kEAAkE;gBAClE,iEAAiE;gBACjE,8DAA8D;gBAC9D,kEAAkE;gBAClE,iEAAiE;gBACjE,8DAA8D;gBAC9D,gEAAgE;gBAChE,mEAAmE;gBACnE,6DAA6D;gBAC7D,yDAAyD;gBACzD,EAAE;gBACF,gEAAgE;gBAChE,sEAAsE;gBACtE,kEAAkE;gBAClE,kEAAkE;gBAClE,kEAAkE;gBAClE,qEAAqE;gBACrE,0CAA0C;gBAC1C,IAAI,IAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBACnC,IAAK,CAAC,UAAU,GAAG,EAAE,CAAC,kBAAkB,KAAK,IAAI,IAAI,IAAI,CAAC,8BAA8B,KAAK,SAAS;wBACpG,CAAC,CAAC,IAAI,CAAC,8BAA8B;wBACrC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC;gBACrB,CAAC;qBAAM,IAAI,EAAE,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;oBAC1C,IAAI,IAAI,CAAC,8BAA8B,KAAK,SAAS,EAAE,CAAC;wBACtD,IAAK,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,IAAK,CAAC,UAAU,EAAE,IAAI,CAAC,8BAA8B,CAAC,CAAC;oBACrF,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAK,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,IAAK,CAAC,UAAU,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC;gBAChE,CAAC;gBACD,IAAI,CAAC,UAAU,GAAG,IAAK,CAAC;YAC1B,CAAC;iBAAM,IAAI,cAAc,EAAE,CAAC;gBAC1B,uDAAuD;gBACvD,8DAA8D;gBAC9D,+DAA+D;gBAC/D,gEAAgE;gBAChE,MAAM,SAAS,GAAqB;oBAClC,MAAM,EAAE,eAAe,EAAE,CAAC,IAAI,EAAE;oBAChC,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,IAAI;oBACb,QAAQ,EAAE,EAAE,CAAC,IAAI;oBACjB,UAAU,EAAE,EAAE,CAAC,WAAW;oBAC1B,eAAe,EAAE,EAAE,CAAC,eAAe;iBACpC,CAAC;gBACF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBACvD,IAAI,QAAQ,KAAK,CAAC,CAAC;oBAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;;oBAC3C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;gBAC/C,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;YAC9B,CAAC;iBAAM,IAAI,eAAe,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACtD,qEAAqE;gBACrE,qEAAqE;gBACrE,gEAAgE;gBAChE,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;aAAM,IAAI,EAAE,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,IAAI,EAAE,CAAC,eAAe,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,KAAK,EAAE,CAAC,eAAe;oBAAE,OAAO;gBAC5H,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,EAAE,CAAC,IAAI,CAAC;gBACpC,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,EAAE,CAAC,cAAc,CAAC;gBACnD,IAAI,CAAC,UAAU,CAAC,iBAAiB,GAAG,EAAE,CAAC,iBAAiB,CAAC;gBACzD,IAAI,CAAC,UAAU,CAAC,oBAAoB,GAAG,EAAE,CAAC,oBAAoB,CAAC;gBAC/D,IAAI,CAAC,8BAA8B,GAAG,EAAE,CAAC,WAAW,CAAC;gBACrD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACzB,CAAC;iBAAM,IAAI,eAAe,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACtD,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;IAED;wDACoD;IACpD,cAAc;QACZ,MAAM,GAAG,GAAuB,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;gBAAE,MAAM;YACzD,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACnB,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI;gBAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACrD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;IAC3B,CAAC;IAED,qDAAqD;IACrD,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF"}
@@ -2,6 +2,8 @@ import type { CliId } from '../adapters/cli/types.js';
2
2
  /** Executor-confirmed settings copied from Codex's rollout. */
3
3
  export interface CodexThreadSettings {
4
4
  model?: string;
5
+ /** Executor-confirmed reasoning effort; follows in-session `/effort`. */
6
+ reasoningEffort?: string;
5
7
  serviceTier: string;
6
8
  }
7
9
  /** Card-facing snapshot. `nonDefault` is true when the executor is running on a
@@ -1 +1 @@
1
- {"version":3,"file":"codex-service-tier.d.ts","sourceRoot":"","sources":["../../src/services/codex-service-tier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,+DAA+D;AAC/D,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;wDAQwD;AACxD,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IACnE,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,mBAAmB,GAC5B,wBAAwB,CAG1B;AAED;;;uDAGuD;AACvD,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,wBAAwB,GAAG,SAAS,GAC7C,MAAM,GAAG,SAAS,CAGpB;AAWD;;;;GAIG;AACH,qBAAa,uBAAuB;IAKhC,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAL1B,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,QAAQ,CAAuC;gBAGpC,OAAO,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,wBAAwB,EACpE,OAAO,EAAE,CAAC,QAAQ,EAAE,wBAAwB,GAAG,IAAI,KAAK,IAAI;IAG/E,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,IAAI;IASvD,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,SAAS,GAAG,IAAI;IAQtE,MAAM,IAAI,IAAI;CAMf"}
1
+ {"version":3,"file":"codex-service-tier.d.ts","sourceRoot":"","sources":["../../src/services/codex-service-tier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,+DAA+D;AAC/D,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yEAAyE;IACzE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;wDAQwD;AACxD,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IACnE,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,mBAAmB,GAC5B,wBAAwB,CAG1B;AAED;;;uDAGuD;AACvD,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,wBAAwB,GAAG,SAAS,GAC7C,MAAM,GAAG,SAAS,CAGpB;AAYD;;;;GAIG;AACH,qBAAa,uBAAuB;IAKhC,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAL1B,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,QAAQ,CAAuC;gBAGpC,OAAO,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,wBAAwB,EACpE,OAAO,EAAE,CAAC,QAAQ,EAAE,wBAAwB,GAAG,IAAI,KAAK,IAAI;IAG/E,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,IAAI;IASvD,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,GAAG,SAAS,GAAG,IAAI;IAQtE,MAAM,IAAI,IAAI;CAMf"}
@@ -17,6 +17,7 @@ export function codexServiceTierBadge(cliId, snapshot) {
17
17
  }
18
18
  function snapshotsEqual(left, right) {
19
19
  return left?.model === right.model
20
+ && left?.reasoningEffort === right.reasoningEffort
20
21
  && left?.serviceTier === right.serviceTier
21
22
  && left?.nonDefault === right.nonDefault;
22
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"codex-service-tier.js","sourceRoot":"","sources":["../../src/services/codex-service-tier.ts"],"names":[],"mappings":"AAqBA;;;GAGG;AACH,MAAM,UAAU,+BAA+B,CAC7C,QAA6B;IAE7B,MAAM,UAAU,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW,KAAK,SAAS,CAAC;IAChF,OAAO,EAAE,GAAG,QAAQ,EAAE,UAAU,EAAE,CAAC;AACrC,CAAC;AAED;;;uDAGuD;AACvD,MAAM,UAAU,qBAAqB,CACnC,KAAY,EACZ,QAA8C;IAE9C,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,QAAQ,EAAE,UAAU;QAAE,OAAO,SAAS,CAAC;IACjE,OAAO,KAAK,QAAQ,CAAC,WAAW,EAAE,CAAC;AACrC,CAAC;AAED,SAAS,cAAc,CACrB,IAA0C,EAC1C,KAA+B;IAE/B,OAAO,IAAI,EAAE,KAAK,KAAK,KAAK,CAAC,KAAK;WAC7B,IAAI,EAAE,WAAW,KAAK,KAAK,CAAC,WAAW;WACvC,IAAI,EAAE,UAAU,KAAK,KAAK,CAAC,UAAU,CAAC;AAC7C,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,uBAAuB;IAKf;IACA;IALX,WAAW,CAAqB;IAChC,QAAQ,CAAuC;IAEvD,YACmB,OAAoE,EACpE,OAA4D;QAD5D,YAAO,GAAP,OAAO,CAA6D;QACpE,YAAO,GAAP,OAAO,CAAqD;IAC5E,CAAC;IAEJ,IAAI,CAAC,IAAY,EAAE,OAA6B;QAC9C,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YAC9B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,OAAO;YAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,CAAC,IAAY,EAAE,QAAyC;QAC7D,IAAI,CAAC,QAAQ,IAAI,IAAI,KAAK,IAAI,CAAC,WAAW;YAAE,OAAO;QACnD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpC,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC;YAAE,OAAO;QAChD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO;QAChD,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;CACF"}
1
+ {"version":3,"file":"codex-service-tier.js","sourceRoot":"","sources":["../../src/services/codex-service-tier.ts"],"names":[],"mappings":"AAuBA;;;GAGG;AACH,MAAM,UAAU,+BAA+B,CAC7C,QAA6B;IAE7B,MAAM,UAAU,GAAG,CAAC,CAAC,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,WAAW,KAAK,SAAS,CAAC;IAChF,OAAO,EAAE,GAAG,QAAQ,EAAE,UAAU,EAAE,CAAC;AACrC,CAAC;AAED;;;uDAGuD;AACvD,MAAM,UAAU,qBAAqB,CACnC,KAAY,EACZ,QAA8C;IAE9C,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,QAAQ,EAAE,UAAU;QAAE,OAAO,SAAS,CAAC;IACjE,OAAO,KAAK,QAAQ,CAAC,WAAW,EAAE,CAAC;AACrC,CAAC;AAED,SAAS,cAAc,CACrB,IAA0C,EAC1C,KAA+B;IAE/B,OAAO,IAAI,EAAE,KAAK,KAAK,KAAK,CAAC,KAAK;WAC7B,IAAI,EAAE,eAAe,KAAK,KAAK,CAAC,eAAe;WAC/C,IAAI,EAAE,WAAW,KAAK,KAAK,CAAC,WAAW;WACvC,IAAI,EAAE,UAAU,KAAK,KAAK,CAAC,UAAU,CAAC;AAC7C,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,uBAAuB;IAKf;IACA;IALX,WAAW,CAAqB;IAChC,QAAQ,CAAuC;IAEvD,YACmB,OAAoE,EACpE,OAA4D;QAD5D,YAAO,GAAP,OAAO,CAA6D;QACpE,YAAO,GAAP,OAAO,CAAqD;IAC5E,CAAC;IAEJ,IAAI,CAAC,IAAY,EAAE,OAA6B;QAC9C,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YAC9B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,OAAO;YAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,CAAC,IAAY,EAAE,QAAyC;QAC7D,IAAI,CAAC,QAAQ,IAAI,IAAI,KAAK,IAAI,CAAC,WAAW;YAAE,OAAO;QACnD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpC,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC;YAAE,OAAO;QAChD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAO;QAChD,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;CACF"}
@@ -60,12 +60,21 @@ export interface CodexBridgeEvent {
60
60
  * default. */
61
61
  terminalStatus?: 'completed' | 'failed' | 'ambiguous';
62
62
  terminalErrorCode?: string;
63
+ /** Safe, bounded user-facing detail extracted from a structured failure.
64
+ * Raw provider payloads stay in the rollout/Web terminal. */
65
+ terminalErrorSummary?: string;
63
66
  sourceSessionId?: string;
64
67
  /** Keep the pending turn's original markTimeMs instead of moving it to the
65
68
  * transcript user timestamp. Used by bridges whose committed user
66
69
  * timestamp can lag behind in-turn delivery markers. */
67
70
  preserveMarkTimeMs?: boolean;
68
71
  }
72
+ export declare const CODEX_RATE_LIMIT_ERROR_CODE = "codex_rate_limited";
73
+ export declare const CODEX_AUTH_ERROR_CODE = "codex_auth_failed";
74
+ export declare const CODEX_INVALID_REQUEST_ERROR_CODE = "codex_invalid_request";
75
+ export declare const CODEX_CONNECTION_ERROR_CODE = "codex_connection_failed";
76
+ export declare const CODEX_TASK_FAILED_ERROR_CODE = "codex_task_failed";
77
+ export declare function isCodexRateLimitEvent(event: CodexBridgeEvent): boolean;
69
78
  /** Extract the last completed user/assistant turn from a Codex / CoCo bridge
70
79
  * event sequence. Used by /adopt to surface the previous turn as a
71
80
  * preamble card in the Lark thread — gives the user context to continue
@@ -105,6 +114,12 @@ export interface CodexDrainResult {
105
114
  pendingTail: string;
106
115
  /** Latest complete settings record in this byte range, if any. */
107
116
  latestThreadSettings?: CodexThreadSettings;
117
+ /** Newest executor model observed in this byte range (from `turn_context`),
118
+ * latest-wins. Undefined when no `turn_context` appeared in the range. */
119
+ latestModel?: string;
120
+ /** Newest executor reasoning effort observed in this byte range (from
121
+ * `turn_context`), latest-wins. Undefined when none appeared. */
122
+ latestReasoningEffort?: string;
108
123
  }
109
124
  /** Locate the rollout file for a given Codex sessionId. Codex names files
110
125
  * `rollout-<ts>-<sid>.jsonl`, so a suffix match is unambiguous. The
@@ -136,5 +151,17 @@ export declare function drainCodexRollout(path: string, fromOffset: number): Cod
136
151
  export declare function scanCodexThreadSettings(path: string, opts?: {
137
152
  chunkBytes?: number;
138
153
  }): CodexThreadSettings | undefined;
154
+ /** One-shot bootstrap of the current Codex runtime (model / reasoning effort)
155
+ * from `turn_context` records, for attach/restore paths that cursor straight
156
+ * to the tail without draining history. Scans BACKWARD in fixed-size chunks
157
+ * and stops once both fields resolve — the newest `turn_context` sits near the
158
+ * tail. A hard byte cap bounds the pathological missing-field case. A
159
+ * non-newline-terminated trailing partial is excluded via baselineJsonlCursor
160
+ * so a crash mid-write cannot surface a half-written record. Mirrors
161
+ * traex-transcript's readLatestTraexRuntime. */
162
+ export declare function readLatestCodexRuntime(path: string): {
163
+ model?: string;
164
+ reasoningEffort?: string;
165
+ };
139
166
  export {};
140
167
  //# sourceMappingURL=codex-transcript.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codex-transcript.d.ts","sourceRoot":"","sources":["../../src/services/codex-transcript.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex-transcript.d.ts","sourceRoot":"","sources":["../../src/services/codex-transcript.ts"],"names":[],"mappings":"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"}