wednesdayai 0.4.12-dev.715 → 0.4.12-dev.716

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 (353) hide show
  1. package/dist/{agent-turn-enqueue-Dwz_R_DW.js → agent-turn-enqueue-Cqo34Swm.js} +4 -4
  2. package/dist/{agent-turn-enqueue-Da7B-J9y.js → agent-turn-enqueue-N-q0v3mc.js} +4 -4
  3. package/dist/{agent-turn-execute-DvP2nf2J.js → agent-turn-execute-Bw9hhkAP.js} +69 -24
  4. package/dist/{agent-turn-recovery-adapter-SdyNUgzD.js → agent-turn-recovery-adapter-BkIal4FW.js} +1 -1
  5. package/dist/{agent-turn-recovery-adapter-DF3vdyE5.js → agent-turn-recovery-adapter-CLY2Dn04.js} +1 -1
  6. package/dist/{agent-turn-runner-D20dK54z.js → agent-turn-runner-Bvj00mHU.js} +3 -3
  7. package/dist/{agent-turn-runner-CzcuyJfX.js → agent-turn-runner-CImqp_RN.js} +1 -1
  8. package/dist/{agent-turn-runner-PbFFnq5P.js → agent-turn-runner-CUCOdxhH.js} +1 -1
  9. package/dist/{agent-turn-runner-DFZxbjaC.js → agent-turn-runner-Vd3aTCni.js} +1 -1
  10. package/dist/{agents-D7wjsCEZ.js → agents-BBoIqOw6.js} +4 -4
  11. package/dist/{agents.config-iUjxdoPw.js → agents.config-C8RJrfbr.js} +1 -1
  12. package/dist/{agents.config-C-pTu-0T.js → agents.config-Ctnm8o8d.js} +1 -1
  13. package/dist/{audio-preflight-nrbQcAOS.js → audio-preflight-BKQpd1eU.js} +6 -6
  14. package/dist/{audio-preflight-BZFphz4E.js → audio-preflight-bEi-KkBn.js} +6 -6
  15. package/dist/{audio-preflight-ifCgpG3c.js → audio-preflight-yuM9Q3qh.js} +5 -5
  16. package/dist/{audio-transcription-runner-C2Q9mEhB.js → audio-transcription-runner-BD7UgbNj.js} +1 -1
  17. package/dist/{audio-transcription-runner-D-d42kdt.js → audio-transcription-runner-CGTNNwbm.js} +1 -1
  18. package/dist/{audio-transcription-runner-ipSQoPp8.js → audio-transcription-runner-CgPA8_eG.js} +1 -1
  19. package/dist/{audit-BlUclRcb.js → audit-BM8WZyx6.js} +3 -3
  20. package/dist/{audit-C_g-UVNn.js → audit-CcNEpaG6.js} +3 -3
  21. package/dist/{auth-choice-ZsDU-57A.js → auth-choice-DTg-b2da.js} +1 -1
  22. package/dist/{auth-choice-D9ydQCkO.js → auth-choice-VnJYar-i.js} +1 -1
  23. package/dist/{banner-U4ziIXHD.js → banner-_g-nCJoZ.js} +1 -1
  24. package/dist/build-info.json +3 -3
  25. package/dist/bundled/boot-md/handler.js +12 -12
  26. package/dist/bundled/session-journal/handler.js +12 -12
  27. package/dist/bundled/session-memory/handler.js +12 -12
  28. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  29. package/dist/{channel-options-IkZTBShY.js → channel-options-BX8MFfPW.js} +1 -1
  30. package/dist/{channel-options-CdXOmeJN.js → channel-options-Dod3uWTl.js} +1 -1
  31. package/dist/{channels-cli-CUTJf_vC.js → channels-cli-DyfFtAZa.js} +23 -23
  32. package/dist/{channels-cli-CBBGSlVe.js → channels-cli-MbAArXF1.js} +23 -23
  33. package/dist/{chrome-DTJprCGv.js → chrome-BkJgMZjT.js} +8 -8
  34. package/dist/{cli-DCyFadMx.js → cli-CdrO5h4P.js} +17 -17
  35. package/dist/{cli-BtY_juql.js → cli-DF91S8Cf.js} +17 -17
  36. package/dist/{command-queue-B1RxJ6bM.js → command-queue-DmXWCoY0.js} +1 -1
  37. package/dist/{command-queue-BTAxEdto.js → command-queue-DucYxKKF.js} +1 -1
  38. package/dist/{command-queue-6Jucg1io.js → command-queue-URs9pYSC.js} +1 -1
  39. package/dist/{command-registry-BMq2CUSD.js → command-registry-NOHWjbDr.js} +9 -9
  40. package/dist/{completion-cli-Dbszfn8D.js → completion-cli-BQ5pz74O.js} +1 -1
  41. package/dist/{completion-cli-CATJLvVa.js → completion-cli-BfKoz1jW.js} +2 -2
  42. package/dist/{config-cli-3a-9iNyI.js → config-cli-BGFZu6JD.js} +1 -1
  43. package/dist/{config-cli-O9P0EpgL.js → config-cli-cFzUpYdg.js} +1 -1
  44. package/dist/{configure-DAA_ncD3.js → configure-DYAZJ3GF.js} +3 -3
  45. package/dist/{configure-Dld8IaT8.js → configure-DrrwPxlu.js} +3 -3
  46. package/dist/{deliver-Bhlx9VG9.js → deliver-8xg5ISEI.js} +1 -1
  47. package/dist/{deliver-DT4v-Go0.js → deliver-C5SDo7TP.js} +1 -1
  48. package/dist/{deliver-CVWbwPkb.js → deliver-fwGuXC0n.js} +1 -1
  49. package/dist/{diagnostic-DI-K8155.js → diagnostic-BB6k_yiT.js} +1 -1
  50. package/dist/{diagnostic-BTSirPP0.js → diagnostic-D7DvV7NT.js} +1 -1
  51. package/dist/{diagnostic-DRvqMPW7.js → diagnostic-Dv8UWiI0.js} +1 -1
  52. package/dist/{dm-policy-shared-BE04dZam.js → dm-policy-shared-BLJbsZzf.js} +1 -1
  53. package/dist/{doctor-completion-Ca_SREXp.js → doctor-completion-B94pFOFt.js} +1 -1
  54. package/dist/{doctor-completion-BJpzpRx6.js → doctor-completion-CtR8yetH.js} +1 -1
  55. package/dist/entry.js +2 -2
  56. package/dist/extensionAPI.js +2 -2
  57. package/dist/{gateway-cli-BYqWX_fq.js → gateway-cli-C_veSlCx.js} +113 -76
  58. package/dist/{gateway-cli-BTuK5wC4.js → gateway-cli-DI7_gxH-.js} +113 -76
  59. package/dist/{health-fB9rLTPD.js → health-Cooqit6V.js} +2 -2
  60. package/dist/{health-DFWpyp9O.js → health-DFat5vO5.js} +2 -2
  61. package/dist/{hooks-cli-DKZeKlmX.js → hooks-cli-CB-96Su8.js} +19 -19
  62. package/dist/{hooks-cli-CriP6g_q.js → hooks-cli-yNAgxRQS.js} +19 -19
  63. package/dist/index.js +21 -21
  64. package/dist/{installs-CBHXvqKf.js → installs-CdLdL1gD.js} +1 -1
  65. package/dist/{installs-CnAcm0ba.js → installs-CpnJwZZ_.js} +1 -1
  66. package/dist/llm-slug-generator.js +12 -12
  67. package/dist/{models-DXRXVywP.js → models-Dlat36jl.js} +1 -1
  68. package/dist/{models-cli-C7bSvLGL.js → models-cli-DMjHkAqq.js} +17 -17
  69. package/dist/{models-cli-h6ejcNF7.js → models-cli-vjFaOcNS.js} +18 -18
  70. package/dist/{node-cli-CS8E71Vc.js → node-cli-m0j_YD0V.js} +3 -3
  71. package/dist/{node-cli-CPo0jR3t.js → node-cli-yC-cX-mJ.js} +3 -3
  72. package/dist/{npm-pack-install-CFiN84Qw.js → npm-pack-install-B7wQANiM.js} +1 -1
  73. package/dist/{npm-pack-install-bdyXL1bZ.js → npm-pack-install-DcBobJp3.js} +1 -1
  74. package/dist/{npm-resolution-CaEc_FBL.js → npm-resolution-B0rqOBgy.js} +2 -2
  75. package/dist/{npm-resolution-B7regLLc.js → npm-resolution-SdoNL0ud.js} +2 -2
  76. package/dist/{onboard-B_6H9HpS.js → onboard-B9-DxI_m.js} +2 -2
  77. package/dist/{onboard-B1WwaAdf.js → onboard-D8MZoOum.js} +2 -2
  78. package/dist/{onboard-channels-BWrbGzK9.js → onboard-channels-28JqVvAv.js} +2 -2
  79. package/dist/{onboard-channels-CxiuviBR.js → onboard-channels-P7F-dNwm.js} +2 -2
  80. package/dist/{onboarding-DemzhSFH.js → onboarding-0WSY8o8f.js} +3 -3
  81. package/dist/{onboarding-D9VO9_5U.js → onboarding-BfpXrIw7.js} +3 -3
  82. package/dist/{onboarding.finalize-DeJ35Prz.js → onboarding.finalize-BnIw1M2b.js} +22 -22
  83. package/dist/{onboarding.finalize-C8Pqseaq.js → onboarding.finalize-QITC8MsS.js} +23 -23
  84. package/dist/{operator-commands-Dwtv8SyF.js → operator-commands-CIz47IKl.js} +2 -2
  85. package/dist/{operator-commands-BRKxpjt9.js → operator-commands-CtYCnspr.js} +2 -2
  86. package/dist/{pi-embedded-BcRvgwKi.js → pi-embedded-BBId5n_k.js} +49 -28
  87. package/dist/{pi-embedded-helpers-D19zTumt.js → pi-embedded-helpers-BU47jdPO.js} +1 -1
  88. package/dist/{pi-embedded-helpers-5JApWu7A.js → pi-embedded-helpers-DVvJRC5S.js} +3 -3
  89. package/dist/{pi-embedded-helpers-DEHXX7Dr.js → pi-embedded-helpers-i0-tPaxH.js} +1 -1
  90. package/dist/{pi-embedded-recovery-adapter-MaU4SQ3X.js → pi-embedded-recovery-adapter-1Lgt8q1h.js} +2 -2
  91. package/dist/{pi-embedded-recovery-adapter-licel-RD.js → pi-embedded-recovery-adapter-B2AFWrYt.js} +2 -2
  92. package/dist/{pi-embedded-recovery-adapter-ZV9u5snz.js → pi-embedded-recovery-adapter-CNdSU-s7.js} +8 -8
  93. package/dist/{pi-embedded-recovery-adapter-DB4blfKA.js → pi-embedded-recovery-adapter-DL78oCTf.js} +8 -8
  94. package/dist/{pi-embedded-utils-oIHgFob3.js → pi-embedded-utils-8OzPnJMh.js} +1 -1
  95. package/dist/{pi-embedded-utils-kHMmP2Xh.js → pi-embedded-utils-BoaQCwP7.js} +1 -1
  96. package/dist/{pi-embedded-utils-BhOMYPQU.js → pi-embedded-utils-BtOzugyp.js} +1 -1
  97. package/dist/{pi-embedded-DsDG-ETP.js → pi-embedded-wjGM_bNN.js} +22 -1
  98. package/dist/{pi-tools.policy-4GqIom7_.js → pi-tools.policy-DPm2eos4.js} +1 -1
  99. package/dist/{plugin-registry-CxDNClOG.js → plugin-registry-CC8YsXPr.js} +1 -1
  100. package/dist/{plugin-registry-alYBvHFE.js → plugin-registry-CPS5bO_-.js} +1 -1
  101. package/dist/plugin-sdk/{agent-scope-BLF4nZUv.js → agent-scope-BYp_CjdU.js} +2 -2
  102. package/dist/plugin-sdk/agent-turn-execute-BCE3FS2s.js +61 -0
  103. package/dist/plugin-sdk/{agent-turn-execute-Cjl_kBtQ.js → agent-turn-execute-Dd5AJiKY.js} +2 -2
  104. package/dist/plugin-sdk/{agent-turn-runner-YBWX_qXk.js → agent-turn-runner-B9_FKVSu.js} +6 -6
  105. package/dist/plugin-sdk/{agent-turn-runner-CDA8JPSH.js → agent-turn-runner-DL5jOnXC.js} +1 -1
  106. package/dist/plugin-sdk/agent-turn-runner-gf0ARmuP.js +11 -0
  107. package/dist/plugin-sdk/{api-key-rotation-XDUKz2gd.js → api-key-rotation-CDNf_4cI.js} +2 -2
  108. package/dist/plugin-sdk/{artifacts-HAYpGlG1.js → artifacts-BMLMg3MG.js} +1 -1
  109. package/dist/plugin-sdk/{audio-preflight-BS29OWk3.js → audio-preflight-BmKL6FNP.js} +2 -2
  110. package/dist/plugin-sdk/audio-preflight-DlGohKMs.js +28 -0
  111. package/dist/plugin-sdk/{audio-transcription-runner-BNafitZj.js → audio-transcription-runner-TBjJv_mZ.js} +10 -10
  112. package/dist/plugin-sdk/{auth-profiles-CCJQoedi.js → auth-profiles-DHZjW8Vk.js} +5 -5
  113. package/dist/plugin-sdk/{channel-activity-BKwRzYJb.js → channel-activity-Dr4PYej7.js} +3 -3
  114. package/dist/plugin-sdk/{chrome-D0eLSqkP.js → chrome-BDy1zYAr.js} +4 -4
  115. package/dist/plugin-sdk/{chunk-DI-5pBck.js → chunk-BTSnO1wn.js} +6 -6
  116. package/dist/plugin-sdk/{chunk-CDvvv9SU.js → chunk-DGQdf0JN.js} +3 -3
  117. package/dist/plugin-sdk/{command-detection-B3xgM_Na.js → command-detection-DdTnFMU3.js} +106 -85
  118. package/dist/plugin-sdk/{command-queue-BnJsJc_w.js → command-queue-CeaLVs8O.js} +8 -8
  119. package/dist/plugin-sdk/{command-queue-CHiQj9Ji.js → command-queue-DFSOdqCK.js} +1 -1
  120. package/dist/plugin-sdk/{commands-registry-Do_g2It_.js → commands-registry-8sy0wsK_.js} +6 -6
  121. package/dist/plugin-sdk/{commands-registry-DpLk11E7.js → commands-registry-N6f_lsxF.js} +2 -2
  122. package/dist/plugin-sdk/{config-CQNfmIC8.js → config-Biusjzx-.js} +7 -7
  123. package/dist/plugin-sdk/{deliver-L6eu6zyG.js → deliver-BgHA8c9F.js} +11 -11
  124. package/dist/plugin-sdk/deliver-DBCz1GqU.js +32 -0
  125. package/dist/plugin-sdk/{diagnostic-DfxuMWHd.js → diagnostic-Bni_8VyY.js} +7 -7
  126. package/dist/plugin-sdk/{diagnostic-C7lPoqyv.js → diagnostic-D6hSjxiv.js} +5 -5
  127. package/dist/plugin-sdk/{fetch-guard-CZT8FU1i.js → fetch-guard-C1a1KfEb.js} +3 -3
  128. package/dist/plugin-sdk/{fs-safe-B0JgGdXa.js → fs-safe-CbZ6uRVv.js} +3 -3
  129. package/dist/plugin-sdk/{hook-runner-global-WRI53ibi.js → hook-runner-global-BvxlnAyu.js} +3 -3
  130. package/dist/plugin-sdk/{image-ops-kuILYHZv.js → image-ops-DY_SZfXk.js} +1 -1
  131. package/dist/plugin-sdk/index.js +54 -54
  132. package/dist/plugin-sdk/{ir-Bm7oqkwT.js → ir-BNohi6ZW.js} +5 -5
  133. package/dist/plugin-sdk/{local-roots-D-CHzVr1.js → local-roots-Bm7nDW20.js} +7 -7
  134. package/dist/plugin-sdk/{logger-BSK-0Yjx.js → logger-D6KsqbNW.js} +1 -1
  135. package/dist/plugin-sdk/{manager-D2jffdjH.js → manager-B_vK9MbM.js} +8 -8
  136. package/dist/plugin-sdk/manager-ByaW_O4Y.js +16 -0
  137. package/dist/plugin-sdk/{markdown-tables-DIWQQ2W1.js → markdown-tables-G4vK24xc.js} +2 -2
  138. package/dist/plugin-sdk/markdown-tables-J4hZ7eWU.js +10 -0
  139. package/dist/plugin-sdk/{outbound-attachment-CtKKNyms.js → outbound-attachment-Cw7T2Mrt.js} +2 -2
  140. package/dist/plugin-sdk/{path-alias-guards-CHfCMaeX.js → path-alias-guards-CVybi_GQ.js} +1 -1
  141. package/dist/plugin-sdk/{pi-embedded-helpers-BRymkO_1.js → pi-embedded-helpers-B_jgacW8.js} +11 -11
  142. package/dist/plugin-sdk/{pi-embedded-utils-BHmc3RVS.js → pi-embedded-utils-DOXEm_H8.js} +3 -3
  143. package/dist/plugin-sdk/{pi-model-discovery-6BBajZds.js → pi-model-discovery-DWUrLRLg.js} +1 -1
  144. package/dist/plugin-sdk/{pi-model-discovery-4X7_2_nP.js → pi-model-discovery-DWw1ReX-.js} +6 -6
  145. package/dist/plugin-sdk/provider-dispatcher-Byy-KtUn.js +61 -0
  146. package/dist/plugin-sdk/{provider-dispatcher-D7HHFW68.js → provider-dispatcher-C4-urx2x.js} +2 -2
  147. package/dist/plugin-sdk/provider-image-B_dJDOl5.js +22 -0
  148. package/dist/plugin-sdk/{provider-image-DBye3Ln5.js → provider-image-CEQrHWYz.js} +5 -5
  149. package/dist/plugin-sdk/provider-media-understanding.js +7 -7
  150. package/dist/plugin-sdk/{proxy-DJ2nskkh.js → proxy-BWc9guJs.js} +1 -1
  151. package/dist/plugin-sdk/proxy-DwbYzxBy.js +7 -0
  152. package/dist/plugin-sdk/{proxy-fetch-CuQpjpkI.js → proxy-fetch-BYkGxQnh.js} +1 -1
  153. package/dist/plugin-sdk/{pw-ai-BJrhPMHJ.js → pw-ai-DQv6Xhce.js} +10 -10
  154. package/dist/plugin-sdk/{qmd-manager-DhW_frb3.js → qmd-manager-CpV0SFnY.js} +8 -8
  155. package/dist/plugin-sdk/{query-expansion-NpBeKA8F.js → query-expansion-CwmHvvV_.js} +3 -3
  156. package/dist/plugin-sdk/{recorder-DdbAQ2HO.js → recorder-BXZMRSjO.js} +4 -4
  157. package/dist/plugin-sdk/{redact-CUjmZn2Y.js → redact-C88Ryyfs.js} +1 -1
  158. package/dist/plugin-sdk/replies-B9uDLFOE.js +25 -0
  159. package/dist/plugin-sdk/{replies-Dw3jvqpR.js → replies-l2hZAzbt.js} +4 -4
  160. package/dist/plugin-sdk/{reply-directives-BS8Ge06Z.js → reply-directives-BwxzQXmX.js} +2 -2
  161. package/dist/plugin-sdk/reply-prefix-BQMEQam1.js +7 -0
  162. package/dist/plugin-sdk/{reply-prefix-Dt1hESHJ.js → reply-prefix-qLQRxqrf.js} +1 -1
  163. package/dist/plugin-sdk/{resolve-route-BpLuk-wC.js → resolve-route-50KoArP9.js} +4 -4
  164. package/dist/plugin-sdk/{resolve-route-DiQTL1qI.js → resolve-route-6v1HVvWk.js} +6 -6
  165. package/dist/plugin-sdk/runs-BQhYekhr.js +25 -0
  166. package/dist/plugin-sdk/{runs-D6fAvItC.js → runs-CiohhBb8.js} +7 -7
  167. package/dist/plugin-sdk/{send-CpXGZgrS.js → send-BMSqETcU.js} +6 -6
  168. package/dist/plugin-sdk/send-CeWqZTK0.js +23 -0
  169. package/dist/plugin-sdk/{send-BDwTyH6I.js → send-Cv2CGnsK.js} +8 -8
  170. package/dist/plugin-sdk/{send-Ce2XBaKF.js → send-Cx6gHjnA.js} +6 -6
  171. package/dist/plugin-sdk/send-CzcKgBBf.js +25 -0
  172. package/dist/plugin-sdk/{send-R0HB1-l-.js → send-DG4MQPPm.js} +13 -13
  173. package/dist/plugin-sdk/{send-CE_6VOiQ.js → send-DM6RpDCL.js} +7 -7
  174. package/dist/plugin-sdk/{send-GMYUhBtJ.js → send-DO0C4Uva.js} +19 -19
  175. package/dist/plugin-sdk/send-Dvna5ey-.js +27 -0
  176. package/dist/plugin-sdk/send-xPV0QIjh.js +24 -0
  177. package/dist/plugin-sdk/{session-meta-BU2WXD0N.js → session-meta-CiqJP0pO.js} +2 -2
  178. package/dist/plugin-sdk/session-meta-n4SCcAbJ.js +10 -0
  179. package/dist/plugin-sdk/skill-commands-BOV3NIbU.js +14 -0
  180. package/dist/plugin-sdk/{skill-commands-BYfWIPfV.js → skill-commands-CE_SkRQk.js} +5 -5
  181. package/dist/plugin-sdk/{skills-BuJjEYto.js → skills-CjW6uGTa.js} +6 -6
  182. package/dist/plugin-sdk/src/config/sessions/run-pending-writes.d.ts +22 -0
  183. package/dist/plugin-sdk/{ssrf-DiAz1Z_z.js → ssrf-BUCEDxp5.js} +2 -2
  184. package/dist/plugin-sdk/{store-Bl3Yjf_w.js → store-yBNTHg3N.js} +2 -2
  185. package/dist/plugin-sdk/{subagent-registry-DxZN7H_j.js → subagent-registry-B0gD-Lof.js} +2 -2
  186. package/dist/plugin-sdk/subagent-registry-CZBK6615.js +61 -0
  187. package/dist/plugin-sdk/{subsystem-B2x33s9h.js → subsystem-CUUKL6Fr.js} +4 -4
  188. package/dist/plugin-sdk/{tables-CTmQQyfU.js → tables-DKYi6grj.js} +1 -1
  189. package/dist/plugin-sdk/testing.js +2 -2
  190. package/dist/plugin-sdk/{tokens-DxJSOoJn.js → tokens-ysZUkYZZ.js} +1 -1
  191. package/dist/plugin-sdk/{tool-loop-detection-Buouaxew.js → tool-loop-detection-LsvZ1dIY.js} +1 -1
  192. package/dist/plugin-sdk/{tools-CmHC6oYK.js → tools-PVG4MyCb.js} +26 -5
  193. package/dist/plugin-sdk/{user-run-recording-juCW_uQ-.js → user-run-recording-BMaK7jNR.js} +2 -2
  194. package/dist/plugin-sdk/user-run-recording-DiKcNdjn.js +11 -0
  195. package/dist/{plugins-cli-DRuMDJWf.js → plugins-cli-Cpq4XXoA.js} +22 -22
  196. package/dist/{plugins-cli-DnMc_Sn3.js → plugins-cli-yjyVyPjc.js} +22 -22
  197. package/dist/{program-Gb3aULCK.js → program-CLZlTcBu.js} +23 -23
  198. package/dist/{program-context-CJuzphrY.js → program-context-DN3ucEgK.js} +22 -22
  199. package/dist/{prompt-select-styled-Db6swA6j.js → prompt-select-styled-BNUoeaMg.js} +6 -6
  200. package/dist/{prompt-select-styled-C-FwsHQX.js → prompt-select-styled-CtLCU2VG.js} +6 -6
  201. package/dist/{provider-image-Cb4z6zUu.js → provider-image-Bi2L9LWh.js} +1 -1
  202. package/dist/{provider-image-RxbXQIow.js → provider-image-CZlpEJVI.js} +1 -1
  203. package/dist/{provider-image-XyDuLsir.js → provider-image-UXLX6qTH.js} +1 -1
  204. package/dist/{push-apns-BGOaVxug.js → push-apns-DYlVj3Sd.js} +2 -2
  205. package/dist/{push-apns-Mp5OOpUH.js → push-apns-uBiZYT2e.js} +2 -2
  206. package/dist/{pw-ai-DmE1ofBV.js → pw-ai-2o8dgziH.js} +1 -1
  207. package/dist/{pw-ai-QjFlAu_X.js → pw-ai-CZJk6UyG.js} +1 -1
  208. package/dist/{pw-ai-DziGw6Jy.js → pw-ai-pYtWxKPR.js} +1 -1
  209. package/dist/{reconcile-bundled-jiPnEB1a.js → reconcile-bundled-Dx64x8xr.js} +1 -1
  210. package/dist/{reconcile-bundled-BMWDZl32.js → reconcile-bundled-oQwTCU_A.js} +1 -1
  211. package/dist/{recovery-adapter-BMqm3Nm4.js → recovery-adapter-BT7EyQzh.js} +8 -8
  212. package/dist/{recovery-adapter-NtvPZ47M.js → recovery-adapter-BcPtMfaC.js} +1 -1
  213. package/dist/{recovery-adapter-DvFGPqmC.js → recovery-adapter-BvRiQZIb.js} +8 -8
  214. package/dist/{recovery-adapter-B_wvSNpI.js → recovery-adapter-CTqGLqLj.js} +1 -1
  215. package/dist/{register.agent-B5_L0CjL.js → register.agent-DpYKNZhv.js} +22 -22
  216. package/dist/{register.agent-kUHQvJ5-.js → register.agent-DxsC-Szl.js} +23 -23
  217. package/dist/{register.configure-CgSKgJn_.js → register.configure-Ceru0oh0.js} +23 -23
  218. package/dist/{register.configure-BbDac1C1.js → register.configure-CiYkPB_K.js} +23 -23
  219. package/dist/{register.maintenance-Co2DeyQ1.js → register.maintenance-BCSq69vI.js} +23 -23
  220. package/dist/{register.maintenance-YmHWu7iX.js → register.maintenance-D-kzdtog.js} +24 -24
  221. package/dist/{register.message-8tfreZAx.js → register.message-B3NWvxgd.js} +18 -18
  222. package/dist/{register.message-BWeca9Pc.js → register.message-D-e6_UXf.js} +18 -18
  223. package/dist/{register.onboard-4mSx6LtC.js → register.onboard-BHBpxcRv.js} +2 -2
  224. package/dist/{register.onboard-Cs4xO4E5.js → register.onboard-BPko9BHz.js} +2 -2
  225. package/dist/{register.setup-DCRrXbdT.js → register.setup-BE-sR-Dc.js} +2 -2
  226. package/dist/{register.setup-BkZyVbO-.js → register.setup-Bjx48C4T.js} +2 -2
  227. package/dist/{register.status-health-sessions-CgAKAaPq.js → register.status-health-sessions-BczZXjHB.js} +20 -20
  228. package/dist/{register.status-health-sessions-DK12_BeX.js → register.status-health-sessions-CQQWiYcu.js} +20 -20
  229. package/dist/{register.subclis-CKq7CiVv.js → register.subclis-Bn9Re4fV.js} +14 -14
  230. package/dist/{reply-BIZ2zaUq.js → reply-BzUdF5qW.js} +69 -24
  231. package/dist/{run-main-Bjfr1wYn.js → run-main-Cfccgza4.js} +30 -30
  232. package/dist/{runs-ucQd8Fc-.js → runs-BauIdJqy.js} +3 -3
  233. package/dist/{runs-Yajg-SST.js → runs-DVNBpgv0.js} +3 -3
  234. package/dist/{runs-CUs5xDZ_.js → runs-i5IuTzQX.js} +3 -3
  235. package/dist/{sandbox-DfzTmaAX.js → sandbox-QsMPF2u6.js} +1 -1
  236. package/dist/{sandbox-Ft7cM-PQ.js → sandbox-bbN1dfIo.js} +1 -1
  237. package/dist/{sandbox-cli-DvMqiG0-.js → sandbox-cli-CuG1HCrw.js} +2 -2
  238. package/dist/{sandbox-cli-DyRvKmR5.js → sandbox-cli-nx3ctiYX.js} +2 -2
  239. package/dist/{security-cli-p_5UwabW.js → security-cli-BfZEQFxV.js} +4 -4
  240. package/dist/{security-cli-Brok3WFE.js → security-cli-BmfAwh-0.js} +4 -4
  241. package/dist/{send-DzSRMjOr.js → send-BKkvuHI9.js} +1 -1
  242. package/dist/{send-Cy2xiH02.js → send-CvkM5xAx.js} +1 -1
  243. package/dist/{send-TscXeVY8.js → send-Dd2SE0h0.js} +1 -1
  244. package/dist/{server-l9oy68N_.js → server-BMSgu_SV.js} +4 -4
  245. package/dist/{server-CywvGQHz.js → server-DRVR_pkr.js} +4 -4
  246. package/dist/{server-context-Dezs5R_M.js → server-context-Bbi-nqKD.js} +2 -2
  247. package/dist/{server-context-97Vej0yV.js → server-context-CTilcbO4.js} +2 -2
  248. package/dist/{server-lifecycle-CHhQugi7.js → server-lifecycle-BIOS9ErD.js} +1 -1
  249. package/dist/{server-lifecycle-DcVZS1ln.js → server-lifecycle-DrAGY_SC.js} +1 -1
  250. package/dist/{server-node-events-BG6KvV6u.js → server-node-events-B3c2ctcO.js} +18 -18
  251. package/dist/{server-node-events-BaFY8QcO.js → server-node-events-lwnuZDvV.js} +18 -18
  252. package/dist/{sessions-BQYQBpX0.js → sessions-Cy_VVMEN.js} +4 -4
  253. package/dist/{sessions-CuDbhYmU.js → sessions-DCXadUdD.js} +4 -4
  254. package/dist/{status-BYesh62t.js → status-Dh0qVJb_.js} +4 -4
  255. package/dist/{status-DlD1uBWJ.js → status-PwhjcAYw.js} +4 -4
  256. package/dist/{task-pipeline-boot-D9T_Earg.js → task-pipeline-boot-CcSZVGUe.js} +17 -17
  257. package/dist/{task-pipeline-boot-CaVeITev.js → task-pipeline-boot-UcskPjY2.js} +17 -17
  258. package/dist/{tui-naozJ5Qh.js → tui-WSQKUD4o.js} +1 -1
  259. package/dist/{tui-cli-hVvCHoLU.js → tui-cli-C3Sopj4_.js} +4 -4
  260. package/dist/{tui-cli-Dn_Is1pu.js → tui-cli-CpRsjtOO.js} +4 -4
  261. package/dist/{tui-Bo4LZvgz.js → tui-dccCFhet.js} +1 -1
  262. package/dist/{update-CXf5cJ0D.js → update-D86-cS_v.js} +1 -1
  263. package/dist/{update-CAXQiGSa.js → update-DJaR3w6x.js} +1 -1
  264. package/dist/{update-cli-BYDYDEO5.js → update-cli-BSxfgTyN.js} +27 -27
  265. package/dist/{update-cli-BB7ybH-w.js → update-cli-f5iTpbNn.js} +26 -26
  266. package/dist/{update-runner-BYv_ec3N.js → update-runner-DqE_9Axt.js} +1 -1
  267. package/dist/{update-runner-JoI-EXBr.js → update-runner-DwM4xj8C.js} +1 -1
  268. package/dist/{validation-cli-ZFUB2tzh.js → validation-cli-C8XHeLjI.js} +18 -18
  269. package/dist/{validation-cli-CGimO4ZJ.js → validation-cli-jSmCMkkm.js} +18 -18
  270. package/dist/{with-timeout-Cl_OttOS.js → with-timeout-BvxLQUTs.js} +2 -2
  271. package/dist/{with-timeout-NhJMC1fC.js → with-timeout-CII3PkDO.js} +2 -2
  272. package/extensions/acpx/package.json +1 -1
  273. package/extensions/anthropic/package.json +1 -1
  274. package/extensions/bifrost/package.json +1 -1
  275. package/extensions/bluebubbles/package.json +1 -1
  276. package/extensions/copilot-proxy/package.json +1 -1
  277. package/extensions/deepgram/package.json +1 -1
  278. package/extensions/deepinfra/package.json +1 -1
  279. package/extensions/diagnostics-otel/package.json +1 -1
  280. package/extensions/diffs/package.json +1 -1
  281. package/extensions/discord/package.json +1 -1
  282. package/extensions/dream-cycle/package.json +1 -1
  283. package/extensions/elevenlabs/package.json +1 -1
  284. package/extensions/feishu/package.json +1 -1
  285. package/extensions/gemini-search/package.json +1 -1
  286. package/extensions/google/package.json +1 -1
  287. package/extensions/google-gemini-cli-auth/package.json +1 -1
  288. package/extensions/googlechat/package.json +1 -1
  289. package/extensions/grok-search/package.json +1 -1
  290. package/extensions/groq/package.json +1 -1
  291. package/extensions/imessage/package.json +1 -1
  292. package/extensions/irc/package.json +1 -1
  293. package/extensions/kimi-search/package.json +1 -1
  294. package/extensions/learning-core/package.json +1 -1
  295. package/extensions/line/package.json +1 -1
  296. package/extensions/llm-task/package.json +1 -1
  297. package/extensions/lobster/package.json +1 -1
  298. package/extensions/matrix/CHANGELOG.md +1 -1
  299. package/extensions/matrix/package.json +1 -1
  300. package/extensions/mattermost/package.json +1 -1
  301. package/extensions/memory-core/package.json +1 -1
  302. package/extensions/memory-lancedb/package.json +1 -1
  303. package/extensions/minimax/package.json +1 -1
  304. package/extensions/minimax-portal-auth/package.json +1 -1
  305. package/extensions/mistral/package.json +1 -1
  306. package/extensions/moonshot/package.json +1 -1
  307. package/extensions/msteams/CHANGELOG.md +1 -1
  308. package/extensions/msteams/package.json +1 -1
  309. package/extensions/nextcloud-talk/package.json +1 -1
  310. package/extensions/nostr/CHANGELOG.md +1 -1
  311. package/extensions/nostr/package.json +1 -1
  312. package/extensions/open-prose/package.json +1 -1
  313. package/extensions/openai/package.json +1 -1
  314. package/extensions/openai-realtime/package.json +1 -1
  315. package/extensions/openrouter/package.json +1 -1
  316. package/extensions/perplexity-search/package.json +1 -1
  317. package/extensions/searxng-search/package.json +1 -1
  318. package/extensions/signal/package.json +1 -1
  319. package/extensions/slack/package.json +1 -1
  320. package/extensions/synology-chat/package.json +1 -1
  321. package/extensions/telegram/package.json +1 -1
  322. package/extensions/tlon/package.json +1 -1
  323. package/extensions/twitch/CHANGELOG.md +1 -1
  324. package/extensions/twitch/package.json +1 -1
  325. package/extensions/voice-call/CHANGELOG.md +1 -1
  326. package/extensions/voice-call/package.json +1 -1
  327. package/extensions/whatsapp/package.json +1 -1
  328. package/extensions/zai/package.json +1 -1
  329. package/extensions/zalo/CHANGELOG.md +1 -1
  330. package/extensions/zalo/package.json +1 -1
  331. package/extensions/zalouser/CHANGELOG.md +1 -1
  332. package/extensions/zalouser/package.json +1 -1
  333. package/package.json +1 -1
  334. package/dist/plugin-sdk/agent-turn-execute-C4MQxaT2.js +0 -61
  335. package/dist/plugin-sdk/agent-turn-runner-e_lJzDgA.js +0 -11
  336. package/dist/plugin-sdk/audio-preflight-DE04bi4M.js +0 -28
  337. package/dist/plugin-sdk/deliver-D4fWK65M.js +0 -32
  338. package/dist/plugin-sdk/manager-BlYRVNJI.js +0 -16
  339. package/dist/plugin-sdk/markdown-tables-cZSKCBuW.js +0 -10
  340. package/dist/plugin-sdk/provider-dispatcher-D7bchiJq.js +0 -61
  341. package/dist/plugin-sdk/provider-image-CNlYbRab.js +0 -22
  342. package/dist/plugin-sdk/proxy-D2uiu68M.js +0 -7
  343. package/dist/plugin-sdk/replies-XUkqz_7S.js +0 -25
  344. package/dist/plugin-sdk/reply-prefix-MU3uY52y.js +0 -7
  345. package/dist/plugin-sdk/runs-R28wdt7j.js +0 -25
  346. package/dist/plugin-sdk/send-Cg2VXcO0.js +0 -27
  347. package/dist/plugin-sdk/send-DAs6FmWB.js +0 -23
  348. package/dist/plugin-sdk/send-UIQH_kN6.js +0 -25
  349. package/dist/plugin-sdk/send-tASIQF-Q.js +0 -24
  350. package/dist/plugin-sdk/session-meta-Dd1ZONel.js +0 -10
  351. package/dist/plugin-sdk/skill-commands-C7ZE3rKj.js +0 -14
  352. package/dist/plugin-sdk/subagent-registry-2P8D5Trx.js +0 -61
  353. package/dist/plugin-sdk/user-run-recording-BMikDBXR.js +0 -11
@@ -2,7 +2,7 @@ import { g as resolveStateDir, i as isNixMode, l as resolveGatewayLockDir, o as
2
2
  import { $ as readLoggingConfig, A as setVerbose, At as resolvePreferredOpenClawTmpDir, C as truncateUtf16Safe, F as isRich, I as theme, K as resolveFileLogProfile, L as getChildLogger, P as colorize, R as getLogger, W as appendFileLog, _t as isNotFoundPathError, c as ensureDir, dt as openVerifiedFileSync, ft as sameFileIdentity, g as resolveUserPath, lt as openBoundaryFile, t as CONFIG_DIR, ut as openBoundaryFileSync, vt as isPathInside, y as shortenHomePath, z as getResolvedLoggerSettings } from "./utils-CMEUUHmM.js";
3
3
  import { t as isPlainObject } from "./plain-object-DHRdTVMa.js";
4
4
  import { d as supportsXHighThinking, l as normalizeVerboseLevel, s as normalizeThinkLevel } from "./thinking-DDYFn78t.js";
5
- import { $ as deferGatewayRestartUntilIdle, $n as OPENAI_TTS_MODELS, $t as createOutboundSendDeps$1, A as resolveCronSession, An as resolveHeartbeatDeliveryTarget, At as requestNudge, B as readLatestAssistantReply, Bn as resolveUserTimezone, Bt as handleSlackHttpRequest, C as startHeartbeatRunner, Cn as dispatchInboundMessage, Cr as DEFAULT_INPUT_TIMEOUT_MS, Ct as resolvePluginTools, D as onHeartbeatEvent, Dr as resolveInputFileLimits, Dt as loadOpenClawPlugins, E as getLastHeartbeatEvent, En as getTotalPendingReplies, Er as normalizeMimeList, Et as getLoadedAnalysisConcurrency, F as resolveExecConfig, Fn as resetDirectoryCache, Gn as resolveTtsApiKey, Gt as agentCommandFromIngress, H as canonicalizeSpawnedByForAgent, Hn as getTtsProvider, Ht as requestBodyErrorToText, I as applyToolPolicyPipeline, In as isAbortRequestText, J as pruneLegacyStoreKeys, Jn as resolveTtsPrefsPath, Jt as resolveAgentOutboundTarget, K as loadCombinedSessionStoreForGateway, Kn as resolveTtsAutoMode, L as buildDefaultToolPolicyPipelineSteps, M as runEmbeddedPiAgent, Mn as resolveSessionDeliveryTarget, N as prepareSessionManagerForRun, Nn as resolveOutboundChannelPlugin, Nt as loadProviderUsageSummary, O as redactSensitiveHeartbeatEvent, On as ensureOutboundSessionEntry, Or as resolveAgentTimeoutMs, Ot as takePendingActivationMigration, Q as consumeGatewaySigusr1RestartAuthorization, Qn as textToSpeech, Qt as createDefaultDeps, Rn as setTaskPipelineStatus, Rt as resolveAgentOutboundIdentity, S as setHeartbeatsEnabled, Sr as DEFAULT_INPUT_MAX_REDIRECTS, St as getPluginToolMeta, T as resolveHeartbeatVisibility, Tn as createReplyDispatcher, Tr as extractImageContentFromSource, Tt as clearPluginRegistryCaches, Un as isTtsEnabled, V as resolveAnnounceTargetFromKey, Vt as readJsonBodyWithLimit, W as listAgentsForGateway, Wn as isTtsProviderConfigured, X as resolveSessionModelRef, Xn as setTtsEnabled, Y as resolveGatewaySessionStoreTarget, Yn as resolveTtsProviderOrder, Yt as createOutboundSendDeps, Zn as setTtsProvider, _ as runMainAgentTurn, _n as detectSuspiciousPatterns, _r as resolveAgentSessionDirs, _t as buildDeliveryFromLegacyPayload, ar as stripHeartbeatToken, at as setPreRestartDeferralCheck, b as runHeartbeatOnce, br as DEFAULT_INPUT_IMAGE_MAX_BYTES, bt as applyBrowserProxyPaths, cr as isSystemEventContextChanged, ct as formatDoctorNonInteractiveHint, d as countActiveDescendantRuns, dn as resolveSessionAuthProfileOverride, dt as summarizeRestartSentinel, en as runWithModelFallback, er as OPENAI_TTS_VOICES, et as emitGatewayRestart, f as initSubagentRegistry, fn as resolveAgentAvatar, fr as requestHeartbeatNow, gn as buildSafeExternalPrompt, gr as getAcpSessionManager, gt as migrateLegacyCronPayload, h as runSubagentAnnounceFlow, hr as ACP_SESSION_IDENTITY_RENDERER_VERSION, ht as normalizeCronJobPatch, ir as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, it as setGatewaySigusr1RestartPolicy, j as resolveCronStyleNow, jn as resolveOutboundTarget, k as isCronSystemEvent, kn as resolveOutboundSessionRoute, kt as createPluginRuntime, ln as computeBackoff, lt as formatRestartSentinelMessage, mt as normalizeCronJobCreate, nn as setCliSessionId, nr as getExistingFollowupQueue, nt as markGatewaySigusr1RestartHandled, o as resolveChannelAccountEnabled, or as ToolInputError, ot as triggerOpenClawRestart, p as listDescendantRunsForRequester, pt as writeRestartSentinel, q as loadSessionEntry, qn as resolveTtsConfig, qt as resolveAgentDeliveryPlan, rn as runCliAgent, rr as removeQueuedFollowupRun, rt as scheduleGatewaySigusr1Restart, s as BARE_SESSION_RESET_PROMPT, sn as lookupContextTokens, sr as enqueueSystemEvent, st as consumeRestartSentinel, tn as getCliSessionId, tr as clearSessionQueues, tt as isGatewaySigusr1RestartExternallyAllowed, un as sleepWithAbort, v as resolveHeartbeatConfig, vn as getHookType, vt as hasLegacyDeliveryHints, w as runWakeGate, wn as setDispatchInboundAdmissionRejectionFor, wr as extractFileContentFromSource, xn as buildHistoryContextFromEntries, xr as DEFAULT_INPUT_IMAGE_MIMES, xt as persistBrowserProxyFiles, y as resolveHeartbeatSummaryForAgent, yn as isExternalHookSession, yr as resolveSendPolicy, yt as stripLegacyDeliveryFields, z as createOpenClawTools, zn as DEFAULT_MAX_PARALLEL } from "./reply-BIZ2zaUq.js";
5
+ import { $n as setTtsProvider, A as resolveCronSession, An as ensureOutboundSessionEntry, Ar as resolveAgentTimeoutMs, At as takePendingActivationMigration, Bn as setTaskPipelineStatus, Bt as resolveAgentOutboundIdentity, C as startHeartbeatRunner, Cn as buildHistoryContextFromEntries, Cr as DEFAULT_INPUT_IMAGE_MIMES, Ct as persistBrowserProxyFiles, D as onHeartbeatEvent, Dn as createReplyDispatcher, Dr as extractImageContentFromSource, Dt as clearPluginRegistryCaches, E as getLastHeartbeatEvent, En as setDispatchInboundAdmissionRejectionFor, Er as extractFileContentFromSource, F as waitForPendingWrites, Fn as resolveOutboundChannelPlugin, Ft as loadProviderUsageSummary, Gn as isTtsEnabled, H as readLatestAssistantReply, Hn as resolveUserTimezone, Ht as handleSlackHttpRequest, J as loadCombinedSessionStoreForGateway, Jn as resolveTtsAutoMode, K as listAgentsForGateway, Kn as isTtsProviderConfigured, L as resolveExecConfig, Ln as resetDirectoryCache, M as runEmbeddedPiAgent, Mn as resolveHeartbeatDeliveryTarget, Mt as requestNudge, N as prepareSessionManagerForRun, Nn as resolveOutboundTarget, O as redactSensitiveHeartbeatEvent, On as getTotalPendingReplies, Or as normalizeMimeList, Ot as getLoadedAnalysisConcurrency, P as snapshotRunPendingWrites, Pn as resolveSessionDeliveryTarget, Q as resolveSessionModelRef, Qn as setTtsEnabled, R as applyToolPolicyPipeline, Rn as isAbortRequestText, S as setHeartbeatsEnabled, Sr as DEFAULT_INPUT_IMAGE_MAX_BYTES, St as applyBrowserProxyPaths, T as resolveHeartbeatVisibility, Tn as dispatchInboundMessage, Tr as DEFAULT_INPUT_TIMEOUT_MS, Tt as resolvePluginTools, U as resolveAnnounceTargetFromKey, Ut as readJsonBodyWithLimit, V as createOpenClawTools, Vn as DEFAULT_MAX_PARALLEL, W as canonicalizeSpawnedByForAgent, Wn as getTtsProvider, Wt as requestBodyErrorToText, X as pruneLegacyStoreKeys, Xn as resolveTtsPrefsPath, Xt as resolveAgentOutboundTarget, Y as loadSessionEntry, Yn as resolveTtsConfig, Yt as resolveAgentDeliveryPlan, Z as resolveGatewaySessionStoreTarget, Zn as resolveTtsProviderOrder, Zt as createOutboundSendDeps, _ as runMainAgentTurn, _r as ACP_SESSION_IDENTITY_RENDERER_VERSION, _t as normalizeCronJobPatch, an as runCliAgent, ar as removeQueuedFollowupRun, at as scheduleGatewaySigusr1Restart, b as runHeartbeatOnce, bn as getHookType, bt as hasLegacyDeliveryHints, cr as ToolInputError, ct as triggerOpenClawRestart, d as countActiveDescendantRuns, dn as computeBackoff, dt as formatRestartSentinelMessage, en as createDefaultDeps, er as textToSpeech, et as consumeGatewaySigusr1RestartAuthorization, f as initSubagentRegistry, fn as sleepWithAbort, gt as normalizeCronJobCreate, h as runSubagentAnnounceFlow, ht as writeRestartSentinel, in as setCliSessionId, ir as getExistingFollowupQueue, it as markGatewaySigusr1RestartHandled, j as resolveCronStyleNow, jn as resolveOutboundSessionRoute, jt as createPluginRuntime, k as isCronSystemEvent, kr as resolveInputFileLimits, kt as loadOpenClawPlugins, ln as lookupContextTokens, lr as enqueueSystemEvent, lt as consumeRestartSentinel, mn as resolveAgentAvatar, mr as requestHeartbeatNow, nn as runWithModelFallback, nr as OPENAI_TTS_VOICES, nt as emitGatewayRestart, o as resolveChannelAccountEnabled, or as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, ot as setGatewaySigusr1RestartPolicy, p as listDescendantRunsForRequester, pn as resolveSessionAuthProfileOverride, pt as summarizeRestartSentinel, qn as resolveTtsApiKey, qt as agentCommandFromIngress, rn as getCliSessionId, rr as clearSessionQueues, rt as isGatewaySigusr1RestartExternallyAllowed, s as BARE_SESSION_RESET_PROMPT, sr as stripHeartbeatToken, st as setPreRestartDeferralCheck, tn as createOutboundSendDeps$1, tr as OPENAI_TTS_MODELS, tt as deferGatewayRestartUntilIdle, ur as isSystemEventContextChanged, ut as formatDoctorNonInteractiveHint, v as resolveHeartbeatConfig, vn as buildSafeExternalPrompt, vr as getAcpSessionManager, vt as migrateLegacyCronPayload, w as runWakeGate, wr as DEFAULT_INPUT_MAX_REDIRECTS, wt as getPluginToolMeta, xn as isExternalHookSession, xr as resolveSendPolicy, xt as stripLegacyDeliveryFields, y as resolveHeartbeatSummaryForAgent, yn as detectSuspiciousPatterns, yr as resolveAgentSessionDirs, yt as buildDeliveryFromLegacyPayload, z as buildDefaultToolPolicyPipelineSteps } from "./reply-BzUdF5qW.js";
6
6
  import { A as resolveDefaultAgentWorkspaceDir, C as DEFAULT_SOUL_FILENAME, E as ensureAgentWorkspace, M as matchesSkillFilter, O as isWorkspaceOnboardingCompleted, S as DEFAULT_MEMORY_FILENAME, T as DEFAULT_USER_FILENAME, a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, c as resolveAgentModelFallbacksOverride, d as resolveDefaultAgentId, g as DEFAULT_AGENTS_FILENAME, i as resolveAgentConfig, j as resolveWorkspaceTemplateDir, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, n as listAgentEntries, r as listAgentIds, u as resolveAgentWorkspaceDir, v as DEFAULT_BOOTSTRAP_FILENAME, w as DEFAULT_TOOLS_FILENAME, x as DEFAULT_MEMORY_ALT_FILENAME, y as DEFAULT_HEARTBEAT_FILENAME } from "./agent-scope-CWTkr4pS.js";
7
7
  import { m as defaultRuntime, n as runtimeForLogger, o as setConsoleSubsystemFilter, s as setConsoleTimestampPrefix, t as createSubsystemLogger } from "./subsystem-DDZBycwS.js";
8
8
  import { A as isCronRunSessionKey, M as isSubagentSessionKey, N as parseAgentSessionKey, S as normalizeAccountId$1, a as classifySessionKeyShape, b as toAgentStoreSessionKey, d as normalizeAgentId, f as normalizeMainKey, g as resolveLinkedPeerIdForChannel, h as resolveConfiguredCanonicalIdentity, p as resolveAgentIdFromSessionKey, r as buildAgentMainSessionKey, t as DEFAULT_AGENT_ID, x as DEFAULT_ACCOUNT_ID, y as toAgentRequestSessionKey } from "./session-key-B1wN38jV.js";
@@ -24,12 +24,12 @@ import { c as isDiagnosticsEnabled, l as onDiagnosticEvent, s as emitDiagnosticE
24
24
  import { n as USER_CLIENT_ID, o as buildUserClientRuntimeConfig, s as handleUserClientHttpRequest } from "./static-server-C-iTMRyz.js";
25
25
  import { n as assertNoPathAliasEscape } from "./path-alias-guards-BSmwo1rT.js";
26
26
  import { i as openFileWithinRoot, l as writeFileWithinRoot, s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-DD7KXuvI.js";
27
- import { D as normalizeMediaProviderId, E as listAutoDetectableProviders, T as getProviderDeclaredEnvVars, c as transcribeBufferedPcmWithMediaUnderstanding, g as registerUnhandledRejectionHandler, n as buildProviderRegistry, x as resolveModelEntries, y as resolveCapabilityConfig } from "./audio-transcription-runner-D-d42kdt.js";
27
+ import { D as normalizeMediaProviderId, E as listAutoDetectableProviders, T as getProviderDeclaredEnvVars, c as transcribeBufferedPcmWithMediaUnderstanding, g as registerUnhandledRejectionHandler, n as buildProviderRegistry, x as resolveModelEntries, y as resolveCapabilityConfig } from "./audio-transcription-runner-CGTNNwbm.js";
28
28
  import { t as fetchWithSsrFGuard } from "./fetch-guard-CjyGDRXN.js";
29
29
  import { t as SsrFBlockedError } from "./ssrf-B85AIIOO.js";
30
30
  import "./proxy-fetch-Czv8kxaL.js";
31
31
  import { t as resolveNetworkSsrFPolicy } from "./ssrf-config-BXebcnwh.js";
32
- import "./pi-embedded-helpers-DEHXX7Dr.js";
32
+ import "./pi-embedded-helpers-i0-tPaxH.js";
33
33
  import "./local-roots-_qt4-Ma5.js";
34
34
  import { c as detectMime } from "./image-ops-DcqCZEUY.js";
35
35
  import { a as testRegexWithBoundedInput, i as compileSafeRegex } from "./redact-CQtYLB4a.js";
@@ -37,10 +37,10 @@ import { i as formatErrorMessage, o as hasErrnoCode, s as isErrno } from "./erro
37
37
  import "./models-config-Burwt3mB.js";
38
38
  import { n as loadModelCatalog } from "./model-catalog-C7itJJDM.js";
39
39
  import "./api-key-rotation-BEt1ZchD.js";
40
- import "./provider-image-RxbXQIow.js";
40
+ import "./provider-image-CZlpEJVI.js";
41
41
  import "./pi-model-discovery-CfUi22Es.js";
42
- import { h as extractTextFromChatContent } from "./pi-embedded-utils-BhOMYPQU.js";
43
- import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-Ft7cM-PQ.js";
42
+ import { h as extractTextFromChatContent } from "./pi-embedded-utils-BtOzugyp.js";
43
+ import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-bbN1dfIo.js";
44
44
  import { i as listCoreToolSections, n as PROFILE_OPTIONS, o as resolveCoreToolProfiles } from "./tool-catalog-B6wH7-iE.js";
45
45
  import { i as resolveRelayAuthTokenForPort, n as resolveGatewayRelayToken } from "./extension-relay-auth-C-1c9CZk.js";
46
46
  import { i as enableTailscaleServe, n as disableTailscaleServe, o as getTailnetHostname, r as enableTailscaleFunnel, t as disableTailscaleFunnel } from "./tailscale-DbsrfsUT.js";
@@ -48,7 +48,7 @@ import { t as safeEqualSecret } from "./secret-equal-DyYamV7h.js";
48
48
  import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-G5phL2pY.js";
49
49
  import { c as normalizeHostHeader, d as resolveGatewayBindHost, f as resolveGatewayListenHosts, i as isLoopbackHost, l as pickPrimaryLanIPv4, n as isLocalishHost, o as isTrustedProxyAddress, r as isLoopbackAddress, s as isValidIPv4, t as rawDataToString, u as resolveClientIp } from "./ws-BuVK_u9S.js";
50
50
  import { a as isDirectLoopbackProvenance, c as AUTH_RATE_LIMIT_SCOPE_BROWSER_EXTENSION, d as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, f as createAuthRateLimiter, i as captureTransportProvenance, l as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, n as authorizeHttpGatewayConnect, o as isLocalDirectRequest, p as normalizeRateLimitClientIp, r as authorizeWsControlUiGatewayConnect, s as resolveGatewayAuth, t as assertGatewayAuthConfigured, u as AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH } from "./auth-DeLQvx-N.js";
51
- import { o as ensureGatewayStartupAuth, s as mergeGatewayTailscaleConfig } from "./server-context-Dezs5R_M.js";
51
+ import { o as ensureGatewayStartupAuth, s as mergeGatewayTailscaleConfig } from "./server-context-Bbi-nqKD.js";
52
52
  import { d as hasBinary } from "./frontmatter-B8Zb_8go.js";
53
53
  import { i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-Buc1RWDY.js";
54
54
  import "./store-DoqX9VsZ.js";
@@ -63,7 +63,7 @@ import { r as isRestartEnabled } from "./commands-tFdLuF5k.js";
63
63
  import "./commands-registry-BMswme6t.js";
64
64
  import { t as redactIdentifier } from "./redact-identifier-CSPL9LuH.js";
65
65
  import "./registry-D9ygkK-J.js";
66
- import { a as cancelDelayedAgentTurnWaiters, c as enqueueAgentTurn, i as agentTurnIdempotencyKey, l as isClaimableAgentTurnWorkId, r as AGENT_TURN_TOPIC, s as createRecoveryAgentTurnStager } from "./agent-turn-enqueue-Dwz_R_DW.js";
66
+ import { a as cancelDelayedAgentTurnWaiters, c as enqueueAgentTurn, i as agentTurnIdempotencyKey, l as isClaimableAgentTurnWorkId, r as AGENT_TURN_TOPIC, s as createRecoveryAgentTurnStager } from "./agent-turn-enqueue-Cqo34Swm.js";
67
67
  import { $ as validateNodeListParams, $t as validateTalkSessionCreateParams, A as validateCronRunParams, B as validateExecApprovalRequestParams, Bn as verifyDeviceToken, Bt as validateTalkConfigParams, C as validateConfigPatchParams, Cn as normalizeDeviceMetadataForAuth, D as validateCronAddParams, Dn as consumeDeviceBootstrapToken, E as validateConnectParams, En as approveDevicePairing, F as validateDevicePairListParams, Fn as revokeDeviceToken, Ft as validateSkillsBinsParams, G as validateExecApprovalsSetParams, Gt as validateTalkRealtimeSessionParams, H as validateExecApprovalsGetParams, Ht as validateTalkRealtimeAudioParams, I as validateDevicePairRejectParams, In as rotateDeviceToken, It as validateSkillsInstallParams, J as validateModelsListParams, Jt as validateTalkRealtimeToolResultParams, K as validateLogsTailParams, Kt as validateTalkRealtimeStatusParams, L as validateDevicePairRemoveParams, Ln as summarizeDeviceTokens, Lt as validateSkillsStatusParams, M as validateCronStatusParams, Mn as rejectDevicePairing, N as validateCronUpdateParams, Nn as removePairedDevice, Nt as validateSessionsTitlePrepareParams, O as validateCronListParams, On as ensureDeviceToken, P as validateDevicePairApproveParams, Pn as requestDevicePairing, Pt as validateSessionsUsageParams, Q as validateNodeInvokeResultParams, Qt as validateTalkSessionCloseParams, R as validateDeviceTokenRevokeParams, Rn as updatePairedDeviceMetadata, Rt as validateSkillsUpdateParams, S as validateConfigGetParams, Sn as buildDeviceAuthPayloadV3, T as validateConfigSetParams, Tn as approveBootstrapDevicePairing, U as validateExecApprovalsNodeGetParams, Un as operatorScopeSatisfied, Ut as validateTalkRealtimeBargeInParams, V as validateExecApprovalResolveParams, Vt as validateTalkModeParams, W as validateExecApprovalsNodeSetParams, Wn as roleScopesAllow, Wt as validateTalkRealtimeMarkParams, X as validateNodeEventParams, Xn as verifyDeviceSignature, Xt as validateTalkSessionBargeInParams, Y as validateNodeDescribeParams, Yn as normalizeDevicePublicKeyBase64Url, Yt as validateTalkSessionAppendAudioParams, Z as validateNodeInvokeParams, Zt as validateTalkSessionCancelTurnParams, _ as validateChatAbortParams, _n as ErrorCodes, a as validateAgentNudgeParams, an as validateToolsCatalogParams, at as validateNodeRenameParams, b as validateChatSendParams, c as validateAgentsCreateParams, cn as validateWebLoginStartParams, ct as validateRequestFrame, d as validateAgentsFilesListParams, dn as validateWizardNextParams, dt as validateSendParams, en as validateTalkSessionMarkParams, et as validateNodePairApproveParams, f as validateAgentsFilesSetParams, fn as validateWizardStartParams, ft as validateSessionsAbortParams, g as validateChannelsStatusParams, h as validateChannelsLogoutParams, hn as RUNS_INVALIDATED_EVENT, i as validateAgentIdentityParams, in as validateTasksRunsListParams, it as validateNodePairVerifyParams, j as validateCronRunsParams, jn as listDevicePairing, jt as validateSessionsSteerParams, k as validateCronRemoveParams, kn as getPairedDevice, l as validateAgentsDeleteParams, ln as validateWebLoginWaitParams, lt as validateSecretsResolveParams, m as validateAgentsUpdateParams, mn as PROTOCOL_VERSION, nn as validateTasksRunsEventsParams, nt as validateNodePairRejectParams, o as validateAgentParams, on as validateUpdateRunParams, ot as validatePollParams, p as validateAgentsListParams, pn as validateWizardStatusParams, q as validateModelsAuthStatusParams, qn as deriveDeviceIdFromPublicKey, qt as validateTalkRealtimeStopParams, r as formatValidationErrors, rn as validateTasksRunsGetParams, rt as validateNodePairRequestParams, s as validateAgentWaitParams, sn as validateWakeParams, st as validatePushTestParams, tn as validateTasksRunEventsParams, tt as validateNodePairListParams, u as validateAgentsFilesGetParams, un as validateWizardCancelParams, ut as validateSecretsResolveResult, v as validateChatHistoryParams, vn as errorShape, w as validateConfigSchemaParams, x as validateConfigApplyParams, xn as buildDeviceAuthPayload, y as validateChatInjectParams, z as validateDeviceTokenRotateParams, zn as verifyDeviceBootstrapToken, zt as validateTalkCatalogParams } from "./client-BbpMX08n.js";
68
68
  import { _ as hasNarrowSessionScope, d as APPROVALS_SCOPE, f as PAIRING_SCOPE, g as authorizeOperatorScopesForMethod, h as WRITE_SCOPE, m as SESSION_READ_SCOPE, n as callGateway, p as READ_SCOPE, u as ADMIN_SCOPE$1, v as isHealthProbeAllowedForScopes, x as loadGatewayTlsRuntime$1, y as isNodeRoleMethod } from "./call-Cl6Q0T5z.js";
69
69
  import "./pairing-token-A_0lRJCJ.js";
@@ -75,14 +75,14 @@ import "./exec-safe-bin-runtime-policy-KSPaR73B.js";
75
75
  import { _ as matchSystemRunApprovalBinding, g as buildSystemRunApprovalBinding, h as resolveSystemRunApprovalRuntimeContext, m as resolveSystemRunApprovalRequestContext, v as missingSystemRunApprovalBinding, y as toSystemRunApprovalMismatchError } from "./nodes-screen-BRZLdw3g.js";
76
76
  import { r as resolveSystemRunCommand, t as canonicalizeLegacySystemRunParams } from "./system-run-command-AF8TLlEl.js";
77
77
  import { u as snapshotActiveRuns } from "./diagnostic-session-state-C6JXU3l4.js";
78
- import { A as setActiveRunProbe, M as stopDiagnosticHeartbeat, j as startDiagnosticHeartbeat, k as resolveStuckSessionWarnMs, t as clearActiveRunProbe } from "./diagnostic-BTSirPP0.js";
78
+ import { A as setActiveRunProbe, M as stopDiagnosticHeartbeat, j as startDiagnosticHeartbeat, k as resolveStuckSessionWarnMs, t as clearActiveRunProbe } from "./diagnostic-D7DvV7NT.js";
79
79
  import { t as CommandLane } from "./lanes-DA0g5tPR.js";
80
- import { D as onAgentEvent, E as getAgentRunContext, O as registerAgentRunContext, T as emitAgentEvent, a as getActiveEmbeddedRunCount, c as isEmbeddedPiRunInFlight, d as isInFlightVoiceAttempt, f as peekActiveEmbeddedRun, g as waitForEmbeddedPiRunEnd, l as isEmbeddedPiRunSteerable, o as getActiveEmbeddedRunOwner, r as clearActiveEmbeddedRun, s as isEmbeddedPiRunActive, t as abortEmbeddedPiRun, w as clearAgentRunContext } from "./runs-Yajg-SST.js";
81
- import { a as getActiveTaskCount, c as getTotalQueueSize, d as setCommandLaneConcurrency, f as setGatewayDrainState, l as markGatewayDraining, p as waitForActiveTasks, u as resetAllLanes } from "./command-queue-B1RxJ6bM.js";
80
+ import { D as onAgentEvent, E as getAgentRunContext, O as registerAgentRunContext, T as emitAgentEvent, a as getActiveEmbeddedRunCount, c as isEmbeddedPiRunInFlight, d as isInFlightVoiceAttempt, f as peekActiveEmbeddedRun, g as waitForEmbeddedPiRunEnd, l as isEmbeddedPiRunSteerable, o as getActiveEmbeddedRunOwner, r as clearActiveEmbeddedRun, s as isEmbeddedPiRunActive, t as abortEmbeddedPiRun, w as clearAgentRunContext } from "./runs-DVNBpgv0.js";
81
+ import { a as getActiveTaskCount, c as getTotalQueueSize, d as setCommandLaneConcurrency, f as setGatewayDrainState, l as markGatewayDraining, p as waitForActiveTasks, u as resetAllLanes } from "./command-queue-DmXWCoY0.js";
82
82
  import { a as resolveAgentIdentity, t as createReplyPrefixOptions } from "./reply-prefix-D0xrt6Z-.js";
83
- import { o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-Bhlx9VG9.js";
84
- import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-NhJMC1fC.js";
85
- import { T as collectTelegramDuplicatePollerDiagnostics, d as loadCronStore, f as resolveCronStorePath, p as saveCronStore } from "./send-Cy2xiH02.js";
83
+ import { o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-8xg5ISEI.js";
84
+ import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-CII3PkDO.js";
85
+ import { T as collectTelegramDuplicatePollerDiagnostics, d as loadCronStore, f as resolveCronStorePath, p as saveCronStore } from "./send-CvkM5xAx.js";
86
86
  import { n as resolveModel } from "./model-BI6n6kVo.js";
87
87
  import "./session-consumer-agents-DWh7Mygv.js";
88
88
  import { n as formatTokenCount, r as formatUsd } from "./usage-format-F-4FwfCE.js";
@@ -99,7 +99,7 @@ import "./outbound-attachment-Bg7WvYcG.js";
99
99
  import "./delivery-queue-DhBE3s1K.js";
100
100
  import "./send-26KAC8EW.js";
101
101
  import "./resolve-route-DnhX9nWr.js";
102
- import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-4GqIom7_.js";
102
+ import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-DPm2eos4.js";
103
103
  import "./tables-CzW-cMQN.js";
104
104
  import "./proxy-Df2WAHRA.js";
105
105
  import "./replies-DoejQAqN.js";
@@ -113,7 +113,7 @@ import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as han
113
113
  import "./prompt-style-D0wRuIYC.js";
114
114
  import "./pairing-labels-CGUWaZ3f.js";
115
115
  import "./session-meta-DzjDKcgW.js";
116
- import { A as registerBeforeCreate, C as artifactTokenFor, D as markRemoved, E as markClientRemovedAcknowledged, M as buildVerificationEnvelope, N as redactVerificationProjection, O as markRetained, P as verificationEnvelopeFingerprint, S as accountSessionArtifactsAtTerminalSweep, T as listSessionArtifacts, _ as requireProcessBootIdentityPair, a as setAgentTurnRuntime, b as installGatewayRestartRecoveryRuntime, d as isSoakError, f as readTrustedBuildInfo, g as isBootIdentityError, h as deriveBootIdentityPair, i as getAgentTurnRuntime, j as VERIFICATION_CONFIG_SCENARIO, k as redactArtifactLogId, l as buildSoakDeploymentRecord, m as armBarrier, n as createAgentTurnRuntimeFromStorage, o as tryGetAgentTurnRuntime, p as acceptSuccessorExecution, r as getActiveAgentTurnCount, u as evaluateSoak, v as clearGatewayRestartRecoveryRuntimeIf, w as isArtifactRegistrationError, x as RETAINED_ARTIFACT_KIND, y as getGatewayRestartRecoveryRuntime } from "./agent-turn-runner-DFZxbjaC.js";
116
+ import { A as registerBeforeCreate, C as artifactTokenFor, D as markRemoved, E as markClientRemovedAcknowledged, M as buildVerificationEnvelope, N as redactVerificationProjection, O as markRetained, P as verificationEnvelopeFingerprint, S as accountSessionArtifactsAtTerminalSweep, T as listSessionArtifacts, _ as requireProcessBootIdentityPair, a as setAgentTurnRuntime, b as installGatewayRestartRecoveryRuntime, d as isSoakError, f as readTrustedBuildInfo, g as isBootIdentityError, h as deriveBootIdentityPair, i as getAgentTurnRuntime, j as VERIFICATION_CONFIG_SCENARIO, k as redactArtifactLogId, l as buildSoakDeploymentRecord, m as armBarrier, n as createAgentTurnRuntimeFromStorage, o as tryGetAgentTurnRuntime, p as acceptSuccessorExecution, r as getActiveAgentTurnCount, u as evaluateSoak, v as clearGatewayRestartRecoveryRuntimeIf, w as isArtifactRegistrationError, x as RETAINED_ARTIFACT_KIND, y as getGatewayRestartRecoveryRuntime } from "./agent-turn-runner-Vd3aTCni.js";
117
117
  import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-DZyEfnsr.js";
118
118
  import { r as resolveMemorySearchConfig } from "./manager-DehDxi2A.js";
119
119
  import "./query-expansion-BD3CL_NZ.js";
@@ -121,7 +121,7 @@ import { t as formatDocsLink } from "./links-BhLGjTwm.js";
121
121
  import { n as runCommandWithRuntime } from "./cli-utils-DWSfnwCw.js";
122
122
  import { t as formatHelpExamples } from "./help-format-DqpZruAs.js";
123
123
  import { n as withProgress } from "./progress-DRMfDm7h.js";
124
- import "./server-lifecycle-DcVZS1ln.js";
124
+ import "./server-lifecycle-DrAGY_SC.js";
125
125
  import { i as parseAbsoluteTimeMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-BIZMWR_z.js";
126
126
  import { a as normalizeHttpWebhookUrl, l as normalizeOptionalText, o as inferLegacyName } from "./heartbeat-tick-CsyeD75h.js";
127
127
  import { a as buildBaseHints, i as applySensitiveHints, n as redactConfigSnapshot, o as mapSensitivePaths, r as restoreRedactedValues, s as applyDerivedTags, t as redactConfigObject } from "./redact-snapshot-Cm6wsMRx.js";
@@ -136,12 +136,12 @@ import { n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./dangerous-tools-gv_rp-w_.
136
136
  import { n as inheritOptionFromParent } from "./command-options-6wdtBBWB.js";
137
137
  import { t as WizardCancelledError } from "./prompts-m1IJwIAx.js";
138
138
  import { t as resolveChannelDefaultAccountId } from "./helpers-CU6_xh9V.js";
139
- import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-C-pTu-0T.js";
139
+ import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-Ctnm8o8d.js";
140
140
  import { t as isWithinDir } from "./path-safety-DAKUyD-v.js";
141
141
  import "./install-safe-path-DjFYmzeb.js";
142
- import "./npm-pack-install-CFiN84Qw.js";
142
+ import "./npm-pack-install-B7wQANiM.js";
143
143
  import "./skill-scanner-BA3h34y0.js";
144
- import "./installs-CnAcm0ba.js";
144
+ import "./installs-CpnJwZZ_.js";
145
145
  import { n as formatConfigIssueLines } from "./issue-format-D0G927lb.js";
146
146
  import { t as buildChannelAccountSnapshot } from "./status-B8TZsG0t.js";
147
147
  import "./channels-status-issues-C6LrjLpF.js";
@@ -157,32 +157,32 @@ import "./diagnostics-FIcvxigK.js";
157
157
  import "./table-DoIju7rh.js";
158
158
  import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } from "./widearea-dns-DgeeMUtJ.js";
159
159
  import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-Bc-7t0_-.js";
160
- import { a as probeGateway, n as collectEnabledInsecureOrDangerousFlags } from "./audit-C_g-UVNn.js";
160
+ import { a as probeGateway, n as collectEnabledInsecureOrDangerousFlags } from "./audit-CcNEpaG6.js";
161
161
  import { t as discoverGatewayBeacons } from "./bonjour-discovery-C517Q6gA.js";
162
- import { a as noteStorageReplayResult, i as getStorageV1Snapshot, n as getStatusSummary, o as noteStorageRestartRequired, r as createStorageSupervisor, s as pickGatewaySelfPresence } from "./status-BYesh62t.js";
163
- import { c as redactOwner, d as redactSensitiveHealthSummary, f as styleHealthChannelLine, n as getHealthSnapshot, t as formatHealthChannelLines } from "./health-DFWpyp9O.js";
162
+ import { a as noteStorageReplayResult, i as getStorageV1Snapshot, n as getStatusSummary, o as noteStorageRestartRequired, r as createStorageSupervisor, s as pickGatewaySelfPresence } from "./status-Dh0qVJb_.js";
163
+ import { c as redactOwner, d as redactSensitiveHealthSummary, f as styleHealthChannelLine, n as getHealthSnapshot, t as formatHealthChannelLines } from "./health-DFat5vO5.js";
164
164
  import { a as readPostQuiesceTranscriptDelta, i as readBulkTranscriptLines, o as replaySource, r as mergeBulkTranscriptSnapshotAndDelta, t as ReplayRowConflictError } from "./replay-BHfUVVHN.js";
165
165
  import "./session-key-resolution-DDJD1XYy.js";
166
166
  import { c as waitForStopDrain, l as withTimeout, o as tasksHandlers, r as getTaskOperatorRegistry, s as retryDelayMs, t as DEFAULT_RETENTION_DAYS } from "./task-runlog-retention-BZrnJGL1.js";
167
167
  import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-DonecnKL.js";
168
168
  import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-C9otZxLF.js";
169
- import { t as reconcileBundledInstalls } from "./reconcile-bundled-BMWDZl32.js";
169
+ import { t as reconcileBundledInstalls } from "./reconcile-bundled-oQwTCU_A.js";
170
170
  import { a as resolveCommandSecretsFromActiveRuntimeSnapshot, i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-Ch9itsH4.js";
171
171
  import "./onboarding.secret-input-BCxy1JxD.js";
172
- import { t as runOnboardingWizard } from "./onboarding-D9VO9_5U.js";
172
+ import { t as runOnboardingWizard } from "./onboarding-BfpXrIw7.js";
173
173
  import { a as computeJobNextRunAtMs, c as findJobOrThrow, d as recomputeNextRuns, f as recomputeNextRunsForMaintenance, h as produceCronAgentTurn, i as applyJobPatch, l as isJobDue, m as resolveJobPayloadTextForMain, o as createJob, p as recordScheduleComputeError, r as resolveStaleClaimAdoptionMs, s as cronShapeSupportsIdentity, t as CRON_HEARTBEAT_ADAPTER_ID, u as nextWakeAtMs } from "./recovery-adapter-BF5ESanQ.js";
174
- import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-Mp5OOpUH.js";
174
+ import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-uBiZYT2e.js";
175
175
  import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-CRvbl5q3.js";
176
- import { a as readChatHistoryPage, c as unsubscribeSessionChanges, i as decodeHistoryCursor, l as assertValidParams, o as resolveDbLeafEntryId, r as InvalidHistoryCursorError, s as resolveDbMessageEntryById, t as sessionsHandlers } from "./sessions-BQYQBpX0.js";
176
+ import { a as readChatHistoryPage, c as unsubscribeSessionChanges, i as decodeHistoryCursor, l as assertValidParams, o as resolveDbLeafEntryId, r as InvalidHistoryCursorError, s as resolveDbMessageEntryById, t as sessionsHandlers } from "./sessions-Cy_VVMEN.js";
177
177
  import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-B9A0wAU6.js";
178
178
  import "./node-service-BnwLXY5x.js";
179
179
  import "./status.update-BOB92yBQ.js";
180
180
  import { i as resolveActiveLogFile, n as readLogSlice } from "./log-tail-BAg8b5Wq.js";
181
181
  import { t as installSkill } from "./skills-install-DqCRPwE1.js";
182
- import { r as runGatewayUpdate } from "./update-runner-BYv_ec3N.js";
182
+ import { r as runGatewayUpdate } from "./update-runner-DqE_9Axt.js";
183
183
  import { n as resolveWebClientPackagedRootSync, t as WEB_CLIENT_BUNDLE_MISSING_MESSAGE } from "./web-client-assets-CJyKwFRS.js";
184
184
  import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-CcKQx_l1.js";
185
- import { c as heartbeatProbeRunArtifactId, d as runIsolatedHeartbeatProbe, i as HEARTBEAT_PROBE_REASON, l as isHeartbeatProbeError, o as assertHeartbeatProbeDeliveryIsSafe, p as readValidationActivation, r as HEARTBEAT_PROBE_ALLOWED_TARGET, s as assertHeartbeatProbeParamsAreClosed, t as VALIDATION_ABORT_COMMAND, u as probeSessionKey$1 } from "./operator-commands-BRKxpjt9.js";
185
+ import { c as heartbeatProbeRunArtifactId, d as runIsolatedHeartbeatProbe, i as HEARTBEAT_PROBE_REASON, l as isHeartbeatProbeError, o as assertHeartbeatProbeDeliveryIsSafe, p as readValidationActivation, r as HEARTBEAT_PROBE_ALLOWED_TARGET, s as assertHeartbeatProbeParamsAreClosed, t as VALIDATION_ABORT_COMMAND, u as probeSessionKey$1 } from "./operator-commands-CtYCnspr.js";
186
186
  import { createRequire } from "node:module";
187
187
  import { cpuUsage, memoryUsage, resourceUsage, uptime } from "node:process";
188
188
  import { fileURLToPath, pathToFileURL } from "node:url";
@@ -1082,7 +1082,7 @@ function resolveVerificationStore(params = {}) {
1082
1082
 
1083
1083
  //#endregion
1084
1084
  //#region src/infra/exec-approval-forwarder.ts
1085
- const log$28 = createSubsystemLogger("gateway/exec-approvals");
1085
+ const log$29 = createSubsystemLogger("gateway/exec-approvals");
1086
1086
  const DEFAULT_MODE = "session";
1087
1087
  function normalizeMode(mode) {
1088
1088
  return mode ?? DEFAULT_MODE;
@@ -1220,7 +1220,7 @@ async function deliverToTargets(params) {
1220
1220
  payloads: [{ text: params.text }]
1221
1221
  });
1222
1222
  } catch (err) {
1223
- log$28.error(`exec approvals: failed to deliver to ${channel}:${target.to}: ${String(err)}`);
1223
+ log$29.error(`exec approvals: failed to deliver to ${channel}:${target.to}: ${String(err)}`);
1224
1224
  }
1225
1225
  });
1226
1226
  await Promise.allSettled(deliveries);
@@ -1309,7 +1309,7 @@ function createExecApprovalForwarder(deps = {}) {
1309
1309
  deliver,
1310
1310
  shouldSend: () => pending.get(request.id) === pendingEntry
1311
1311
  }).catch((err) => {
1312
- log$28.error(`exec approvals: failed to deliver request ${request.id}: ${String(err)}`);
1312
+ log$29.error(`exec approvals: failed to deliver request ${request.id}: ${String(err)}`);
1313
1313
  });
1314
1314
  return true;
1315
1315
  };
@@ -1681,7 +1681,7 @@ function scheduleGatewayUpdateCheck(params) {
1681
1681
 
1682
1682
  //#endregion
1683
1683
  //#region src/sessions/session-runs/restart-transitions.ts
1684
- const log$27 = createSubsystemLogger("sessions/restart-transitions");
1684
+ const log$28 = createSubsystemLogger("sessions/restart-transitions");
1685
1685
  async function transition(input, recoveryEnabled) {
1686
1686
  const store = input.store ?? getConfiguredSessionStorageRuntime()?.runtime?.runs;
1687
1687
  if (!store) return [];
@@ -1692,14 +1692,14 @@ async function transition(input, recoveryEnabled) {
1692
1692
  recoveryReason: input.reason,
1693
1693
  recoveryEnabled
1694
1694
  });
1695
- if (transitioned.length > 0) log$27.info("transitioned active runs for restart", {
1695
+ if (transitioned.length > 0) log$28.info("transitioned active runs for restart", {
1696
1696
  count: transitioned.length,
1697
1697
  recoveryEnabled,
1698
1698
  reason: input.reason
1699
1699
  });
1700
1700
  return transitioned;
1701
1701
  } catch (err) {
1702
- log$27.warn("failed to transition active runs for restart", {
1702
+ log$28.warn("failed to transition active runs for restart", {
1703
1703
  recoveryEnabled,
1704
1704
  error: String(err)
1705
1705
  });
@@ -1768,7 +1768,7 @@ function resolveChannelRestartReason(snapshot, evaluation) {
1768
1768
 
1769
1769
  //#endregion
1770
1770
  //#region src/gateway/channel-health-monitor.ts
1771
- const log$26 = createSubsystemLogger("gateway/health-monitor");
1771
+ const log$27 = createSubsystemLogger("gateway/health-monitor");
1772
1772
  const DEFAULT_CHECK_INTERVAL_MS = 5 * 6e4;
1773
1773
  const DEFAULT_MONITOR_STARTUP_GRACE_MS = 6e4;
1774
1774
  const DEFAULT_COOLDOWN_CYCLES = 2;
@@ -1828,11 +1828,11 @@ function startChannelHealthMonitor(deps) {
1828
1828
  if (now - record.lastRestartAt <= cooldownMs) continue;
1829
1829
  pruneOldRestarts(record, now);
1830
1830
  if (record.restartsThisHour.length >= maxRestartsPerHour) {
1831
- log$26.warn?.(`[${channelId}:${accountId}] health-monitor: hit ${maxRestartsPerHour} restarts/hour limit, skipping`);
1831
+ log$27.warn?.(`[${channelId}:${accountId}] health-monitor: hit ${maxRestartsPerHour} restarts/hour limit, skipping`);
1832
1832
  continue;
1833
1833
  }
1834
1834
  const reason = resolveChannelRestartReason(status, health);
1835
- log$26.info?.(`[${channelId}:${accountId}] health-monitor: restarting (reason: ${reason})`);
1835
+ log$27.info?.(`[${channelId}:${accountId}] health-monitor: restarting (reason: ${reason})`);
1836
1836
  try {
1837
1837
  if (status.running) await channelManager.stopChannel(channelId, accountId);
1838
1838
  channelManager.resetRestartAttempts(channelId, accountId);
@@ -1841,7 +1841,7 @@ function startChannelHealthMonitor(deps) {
1841
1841
  record.restartsThisHour.push({ at: now });
1842
1842
  restartRecords.set(key, record);
1843
1843
  } catch (err) {
1844
- log$26.error?.(`[${channelId}:${accountId}] health-monitor: restart failed: ${String(err)}`);
1844
+ log$27.error?.(`[${channelId}:${accountId}] health-monitor: restart failed: ${String(err)}`);
1845
1845
  }
1846
1846
  }
1847
1847
  }
@@ -1861,7 +1861,7 @@ function startChannelHealthMonitor(deps) {
1861
1861
  abortSignal?.addEventListener("abort", stop, { once: true });
1862
1862
  timer = setInterval(() => void runCheck(), checkIntervalMs);
1863
1863
  if (typeof timer === "object" && "unref" in timer) timer.unref();
1864
- log$26.info?.(`started (interval: ${Math.round(checkIntervalMs / 1e3)}s, startup-grace: ${Math.round(timing.monitorStartupGraceMs / 1e3)}s, channel-connect-grace: ${Math.round(timing.channelConnectGraceMs / 1e3)}s)`);
1864
+ log$27.info?.(`started (interval: ${Math.round(checkIntervalMs / 1e3)}s, startup-grace: ${Math.round(timing.monitorStartupGraceMs / 1e3)}s, channel-connect-grace: ${Math.round(timing.channelConnectGraceMs / 1e3)}s)`);
1865
1865
  }
1866
1866
  return { stop };
1867
1867
  }
@@ -3067,10 +3067,10 @@ async function assembleFirstPartyAdapters(cfg, wiring) {
3067
3067
  const { getConfiguredSessionStorageRuntime } = await import("./model-selection-k68XU4oS.js").then((n) => n.hi);
3068
3068
  const runtime = getConfiguredSessionStorageRuntime()?.runtime;
3069
3069
  const gatewayInstanceId = getGatewayInstanceId();
3070
- const { tryGetAgentTurnRuntime } = await import("./agent-turn-runner-DFZxbjaC.js").then((n) => n.t);
3070
+ const { tryGetAgentTurnRuntime } = await import("./agent-turn-runner-Vd3aTCni.js").then((n) => n.t);
3071
3071
  const backbone = tryGetAgentTurnRuntime()?.backbone;
3072
3072
  const { createOutboundDeliveryRecoveryAdapter } = await import("./delivery-recovery-adapter-CXwijCdD.js");
3073
- const { deliverOutboundPayloads } = await import("./deliver-Bhlx9VG9.js").then((n) => n.n);
3073
+ const { deliverOutboundPayloads } = await import("./deliver-8xg5ISEI.js").then((n) => n.n);
3074
3074
  adapters.push(createOutboundDeliveryRecoveryAdapter({
3075
3075
  cfg,
3076
3076
  deliver: deliverOutboundPayloads,
@@ -3084,7 +3084,7 @@ async function assembleFirstPartyAdapters(cfg, wiring) {
3084
3084
  sessionRuns = void 0;
3085
3085
  }
3086
3086
  if (sessionRuns && wiring?.agentTurnStager) {
3087
- const { createSessionRunRecoveryAdapter } = await import("./recovery-adapter-NtvPZ47M.js");
3087
+ const { createSessionRunRecoveryAdapter } = await import("./recovery-adapter-BcPtMfaC.js");
3088
3088
  adapters.push(createSessionRunRecoveryAdapter({
3089
3089
  store: sessionRuns,
3090
3090
  cfg,
@@ -3100,7 +3100,7 @@ async function assembleFirstPartyAdapters(cfg, wiring) {
3100
3100
  lease: wiring?.lease ? () => wiring.lease?.() ?? { isArmed: () => false } : void 0
3101
3101
  }));
3102
3102
  if (backbone && wiring?.agentTurnStager) {
3103
- const { createAgentTurnRecoveryAdapter } = await import("./agent-turn-recovery-adapter-DF3vdyE5.js");
3103
+ const { createAgentTurnRecoveryAdapter } = await import("./agent-turn-recovery-adapter-CLY2Dn04.js");
3104
3104
  adapters.push(createAgentTurnRecoveryAdapter({
3105
3105
  backbone,
3106
3106
  stager: wiring.agentTurnStager
@@ -3122,7 +3122,7 @@ async function assembleFirstPartyAdapters(cfg, wiring) {
3122
3122
  }));
3123
3123
  }
3124
3124
  if (sessionRuns) {
3125
- const { createEmbeddedPiRecoveryAdapter } = await import("./pi-embedded-recovery-adapter-ZV9u5snz.js");
3125
+ const { createEmbeddedPiRecoveryAdapter } = await import("./pi-embedded-recovery-adapter-CNdSU-s7.js");
3126
3126
  adapters.push(createEmbeddedPiRecoveryAdapter({
3127
3127
  sessionRuns,
3128
3128
  cfg,
@@ -3130,7 +3130,7 @@ async function assembleFirstPartyAdapters(cfg, wiring) {
3130
3130
  stager: wiring?.agentTurnStager,
3131
3131
  isRunActive: isEmbeddedPiRunActive
3132
3132
  }));
3133
- const { createAcpRuntimeRecoveryAdapter } = await import("./recovery-adapter-BMqm3Nm4.js");
3133
+ const { createAcpRuntimeRecoveryAdapter } = await import("./recovery-adapter-BT7EyQzh.js");
3134
3134
  adapters.push(createAcpRuntimeRecoveryAdapter({ sessionRuns }));
3135
3135
  }
3136
3136
  if (backbone) {
@@ -3771,6 +3771,8 @@ function createChannelManager(opts) {
3771
3771
 
3772
3772
  //#endregion
3773
3773
  //#region src/gateway/server-chat.ts
3774
+ const log$26 = createSubsystemLogger("gateway/chat-final");
3775
+ const CHAT_TERMINAL_DURABILITY_TIMEOUT_MS = 5e3;
3774
3776
  function resolveHeartbeatAckMaxChars$1() {
3775
3777
  try {
3776
3778
  const cfg = loadConfig();
@@ -3927,6 +3929,15 @@ function createToolEventRecipientRegistry() {
3927
3929
  };
3928
3930
  }
3929
3931
  function createAgentEventHandler({ broadcast, broadcastToConnIds, nodeSendToSession, agentRunSeq, chatRunState, resolveSessionKeyForRun, clearAgentRunContext, toolEventRecipients }) {
3932
+ const pendingTerminalBySession = /* @__PURE__ */ new Map();
3933
+ const sendInSessionOrder = (sessionKey, send) => {
3934
+ const pending = pendingTerminalBySession.get(sessionKey);
3935
+ if (!pending) {
3936
+ send();
3937
+ return;
3938
+ }
3939
+ pending.then(send).catch(() => void 0);
3940
+ };
3930
3941
  const emitChatDelta = (sessionKey, clientRunId, sourceRunId, seq, text) => {
3931
3942
  const cleaned = stripInlineDirectiveTagsForDisplay(text).text;
3932
3943
  if (!cleaned) return;
@@ -3951,10 +3962,12 @@ function createAgentEventHandler({ broadcast, broadcastToConnIds, nodeSendToSess
3951
3962
  timestamp: now
3952
3963
  }
3953
3964
  };
3954
- broadcast("chat", payload, { dropIfSlow: true });
3955
- nodeSendToSession(sessionKey, "chat", payload);
3965
+ sendInSessionOrder(sessionKey, () => {
3966
+ broadcast("chat", payload, { dropIfSlow: true });
3967
+ nodeSendToSession(sessionKey, "chat", payload);
3968
+ });
3956
3969
  };
3957
- const emitChatFinal = (sessionKey, clientRunId, sourceRunId, seq, jobState, error) => {
3970
+ const buildChatTerminalPayload = (sessionKey, clientRunId, sourceRunId, seq, jobState, error) => {
3958
3971
  const normalizedHeartbeatText = normalizeHeartbeatChatFinalText({
3959
3972
  runId: clientRunId,
3960
3973
  sourceRunId,
@@ -3964,35 +3977,59 @@ function createAgentEventHandler({ broadcast, broadcastToConnIds, nodeSendToSess
3964
3977
  const shouldSuppressSilent = normalizedHeartbeatText.suppress || isSilentReplyText(text, SILENT_REPLY_TOKEN);
3965
3978
  chatRunState.buffers.delete(clientRunId);
3966
3979
  chatRunState.deltaSentAt.delete(clientRunId);
3967
- if (jobState === "done") {
3968
- const payload = {
3969
- runId: clientRunId,
3970
- sessionKey,
3971
- seq,
3972
- state: "final",
3973
- message: text && !shouldSuppressSilent ? {
3974
- role: "assistant",
3975
- content: [{
3976
- type: "text",
3977
- text
3978
- }],
3979
- timestamp: Date.now()
3980
- } : void 0
3981
- };
3982
- broadcast("chat", payload);
3983
- nodeSendToSession(sessionKey, "chat", payload);
3984
- return;
3985
- }
3986
- const payload = {
3980
+ if (jobState === "done") return {
3981
+ runId: clientRunId,
3982
+ sessionKey,
3983
+ seq,
3984
+ state: "final",
3985
+ message: text && !shouldSuppressSilent ? {
3986
+ role: "assistant",
3987
+ content: [{
3988
+ type: "text",
3989
+ text
3990
+ }],
3991
+ timestamp: Date.now()
3992
+ } : void 0
3993
+ };
3994
+ return {
3987
3995
  runId: clientRunId,
3988
3996
  sessionKey,
3989
3997
  seq,
3990
3998
  state: "error",
3991
3999
  errorMessage: error ? formatForLog(error) : void 0
3992
4000
  };
4001
+ };
4002
+ const sendChatTerminal = (sessionKey, payload) => {
3993
4003
  broadcast("chat", payload);
3994
4004
  nodeSendToSession(sessionKey, "chat", payload);
3995
4005
  };
4006
+ const emitChatTerminal = (sessionKey, clientRunId, sourceRunId, seq, jobState, error) => {
4007
+ const payload = buildChatTerminalPayload(sessionKey, clientRunId, sourceRunId, seq, jobState, error);
4008
+ const writes = snapshotRunPendingWrites(sourceRunId);
4009
+ if (!writes) {
4010
+ sendInSessionOrder(sessionKey, () => sendChatTerminal(sessionKey, payload));
4011
+ return;
4012
+ }
4013
+ const pending = pendingTerminalBySession.get(sessionKey);
4014
+ const durability = waitForPendingWrites(writes, CHAT_TERMINAL_DURABILITY_TIMEOUT_MS);
4015
+ const gate = (pending ?? Promise.resolve()).then(() => durability).then((outcome) => {
4016
+ if (outcome === "timeout") log$26.warn("chat terminal broadcast before transcript durability (timeout)", {
4017
+ runId: sourceRunId,
4018
+ sessionKey,
4019
+ timeoutMs: CHAT_TERMINAL_DURABILITY_TIMEOUT_MS
4020
+ });
4021
+ sendChatTerminal(sessionKey, payload);
4022
+ }).catch((err) => {
4023
+ log$26.warn("chat terminal broadcast failed while waiting for transcript durability", {
4024
+ runId: sourceRunId,
4025
+ sessionKey,
4026
+ err
4027
+ });
4028
+ }).finally(() => {
4029
+ if (pendingTerminalBySession.get(sessionKey) === gate) pendingTerminalBySession.delete(sessionKey);
4030
+ });
4031
+ pendingTerminalBySession.set(sessionKey, gate);
4032
+ };
3996
4033
  const resolveToolVerboseLevel = (runId, sessionKey) => {
3997
4034
  const runVerbose = normalizeVerboseLevel(getAgentRunContext(runId)?.verboseLevel);
3998
4035
  if (runVerbose) return runVerbose;
@@ -4063,8 +4100,8 @@ function createAgentEventHandler({ broadcast, broadcastToConnIds, nodeSendToSess
4063
4100
  clearAgentRunContext(evt.runId);
4064
4101
  return;
4065
4102
  }
4066
- emitChatFinal(finished.sessionKey, finished.clientRunId, evt.runId, evt.seq, lifecyclePhase === "error" ? "error" : "done", evt.data?.error);
4067
- } else emitChatFinal(sessionKey, eventRunId, evt.runId, evt.seq, lifecyclePhase === "error" ? "error" : "done", evt.data?.error);
4103
+ emitChatTerminal(finished.sessionKey, finished.clientRunId, evt.runId, evt.seq, lifecyclePhase === "error" ? "error" : "done", evt.data?.error);
4104
+ } else emitChatTerminal(sessionKey, eventRunId, evt.runId, evt.seq, lifecyclePhase === "error" ? "error" : "done", evt.data?.error);
4068
4105
  else if (isAborted && (lifecyclePhase === "end" || lifecyclePhase === "error")) {
4069
4106
  chatRunState.abortedRuns.delete(clientRunId);
4070
4107
  chatRunState.abortedRuns.delete(evt.runId);
@@ -16257,7 +16294,7 @@ const nodeHandlers = {
16257
16294
  const p = params;
16258
16295
  const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
16259
16296
  await respondUnavailableOnThrow(respond, async () => {
16260
- const { handleNodeEvent } = await import("./server-node-events-BaFY8QcO.js");
16297
+ const { handleNodeEvent } = await import("./server-node-events-lwnuZDvV.js");
16261
16298
  const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
16262
16299
  await handleNodeEvent({
16263
16300
  deps: context.deps,
@@ -24816,7 +24853,7 @@ function normalizeAgentPayload(payload) {
24816
24853
  async function startBrowserControlServerIfEnabled() {
24817
24854
  if (isTruthyEnvValue(process.env.OPENCLAW_SKIP_BROWSER_CONTROL_SERVER)) return null;
24818
24855
  const override = process.env.OPENCLAW_BROWSER_CONTROL_MODULE?.trim();
24819
- const mod = override ? await import(override) : await import("./server-l9oy68N_.js");
24856
+ const mod = override ? await import(override) : await import("./server-BMSgu_SV.js");
24820
24857
  const start = typeof mod.startBrowserControlServiceFromConfig === "function" ? mod.startBrowserControlServiceFromConfig : mod.startBrowserControlServerFromConfig;
24821
24858
  const stop = typeof mod.stopBrowserControlService === "function" ? mod.stopBrowserControlService : mod.stopBrowserControlServer;
24822
24859
  if (!start) return null;
@@ -35540,7 +35577,7 @@ async function bootGatewayServer(port, opts) {
35540
35577
  const sweepLog = log.child("session-consumer-claim-sweep");
35541
35578
  const { createDiagnosticRingBuffer } = await import("./session-consumer-diagnostics-UbdxGCz8.js");
35542
35579
  const diagnostics = createDiagnosticRingBuffer();
35543
- const { setDiagnostics } = await import("./sessions-BQYQBpX0.js").then((n) => n.n);
35580
+ const { setDiagnostics } = await import("./sessions-Cy_VVMEN.js").then((n) => n.n);
35544
35581
  if (sessionConsumerClaimSweepCancelled) return;
35545
35582
  setDiagnostics(diagnostics);
35546
35583
  const lastKnownEnabledState = /* @__PURE__ */ new Map();
@@ -35579,7 +35616,7 @@ async function bootGatewayServer(port, opts) {
35579
35616
  lastKnownEnabledState,
35580
35617
  cfg: loadConfig()
35581
35618
  });
35582
- const { setLastSweepTimestamp } = await import("./sessions-BQYQBpX0.js").then((n) => n.n);
35619
+ const { setLastSweepTimestamp } = await import("./sessions-Cy_VVMEN.js").then((n) => n.n);
35583
35620
  setLastSweepTimestamp(Date.now());
35584
35621
  } catch (err) {
35585
35622
  sweepLog.warn(`session consumer-claim sweep failed: ${String(err)}`);
@@ -35601,7 +35638,7 @@ async function bootGatewayServer(port, opts) {
35601
35638
  prepare: () => {
35602
35639
  taskPipelineBoot = (async () => {
35603
35640
  const { getConfiguredSessionStorageRuntime } = await import("./model-selection-k68XU4oS.js").then((n) => n.hi);
35604
- const { startTaskPipeline } = await import("./task-pipeline-boot-CaVeITev.js");
35641
+ const { startTaskPipeline } = await import("./task-pipeline-boot-UcskPjY2.js");
35605
35642
  const pipeline = startTaskPipeline({
35606
35643
  getConfigured: getConfiguredSessionStorageRuntime,
35607
35644
  cfg: cfgAtStart,
@@ -6,8 +6,8 @@ import { Da as listChannelPlugins, Ea as getChannelPlugin, Nn as loadSessionStor
6
6
  import { d as normalizeAgentId } from "./session-key-D4YLCjDF.js";
7
7
  import { d as resolveDefaultAgentId } from "./agent-scope-Dt0TVWFY.js";
8
8
  import { m as resolveStorePath } from "./artifacts-C9Cr_S5Y.js";
9
- import { i as resolveHeartbeatSummaryForAgent } from "./agent-turn-execute-DvP2nf2J.js";
10
- import { y as getGatewayRestartRecoveryRuntime } from "./agent-turn-runner-PbFFnq5P.js";
9
+ import { i as resolveHeartbeatSummaryForAgent } from "./agent-turn-execute-Bw9hhkAP.js";
10
+ import { y as getGatewayRestartRecoveryRuntime } from "./agent-turn-runner-CUCOdxhH.js";
11
11
  import { i as formatErrorMessage } from "./errors-Bf0TUXNT.js";
12
12
  import { r as callGatewayCli, t as buildGatewayConnectionDetails } from "./call-BIVg1gmJ.js";
13
13
  import { t as formatDurationCompact } from "./format-duration-CsAbUoUJ.js";
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { F as isRich, I as theme, T as info } from "./utils-CMEUUHmM.js";
3
- import { y as resolveHeartbeatSummaryForAgent } from "./reply-BIZ2zaUq.js";
3
+ import { y as resolveHeartbeatSummaryForAgent } from "./reply-BzUdF5qW.js";
4
4
  import { d as resolveDefaultAgentId } from "./agent-scope-CWTkr4pS.js";
5
5
  import { t as createSubsystemLogger } from "./subsystem-DDZBycwS.js";
6
6
  import { d as normalizeAgentId } from "./session-key-B1wN38jV.js";
@@ -10,7 +10,7 @@ import { m as resolveStorePath } from "./artifacts-qv_OgPMd.js";
10
10
  import { i as formatErrorMessage } from "./errors-z_JCBnTo.js";
11
11
  import { r as callGatewayCli, t as buildGatewayConnectionDetails } from "./call-Cl6Q0T5z.js";
12
12
  import { t as formatDurationCompact } from "./format-duration-XLSvPvzN.js";
13
- import { y as getGatewayRestartRecoveryRuntime } from "./agent-turn-runner-DFZxbjaC.js";
13
+ import { y as getGatewayRestartRecoveryRuntime } from "./agent-turn-runner-Vd3aTCni.js";
14
14
  import { n as withProgress } from "./progress-DRMfDm7h.js";
15
15
  import { t as resolveChannelDefaultAccountId } from "./helpers-CU6_xh9V.js";
16
16