@qwen-code/qwen-code 0.23.5-dev.codemode-responses.20260915.f024b37689 → 0.23.5-preview.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 (377) hide show
  1. package/bundled/computer-use/SKILL.md +24 -3
  2. package/bundled/qc-helper/docs/configuration/model-providers.md +43 -0
  3. package/bundled/qc-helper/docs/configuration/settings.md +10 -9
  4. package/bundled/qc-helper/docs/extension/agent-plugins.md +1 -0
  5. package/bundled/qc-helper/docs/extension/introduction.md +49 -0
  6. package/bundled/qc-helper/docs/features/channels/dingtalk.md +39 -4
  7. package/bundled/qc-helper/docs/features/channels/overview.md +12 -0
  8. package/bundled/qc-helper/docs/features/commands.md +57 -52
  9. package/bundled/qc-helper/docs/features/computer-use.md +1 -1
  10. package/bundled/qc-helper/docs/features/goals.md +8 -0
  11. package/bundled/qc-helper/docs/features/hooks.md +16 -0
  12. package/bundled/qc-helper/docs/qwen-serve.md +3 -1
  13. package/bundled/workflow-authoring/SKILL.md +48 -22
  14. package/chunks/{MaxSizedBox-BFMIFJWT.js → MaxSizedBox-FCF6M53W.js} +40 -43
  15. package/chunks/{StandaloneSessionPicker-4ZH7MOVG.js → StandaloneSessionPicker-V635V72I.js} +60 -63
  16. package/chunks/{acp-startup-profiler-RUQNTNU5.js → acp-startup-profiler-MOOU37VM.js} +2 -2
  17. package/chunks/{acp-subagent-executor-AHMVA4P3.js → acp-subagent-executor-TND6W2O5.js} +46 -47
  18. package/chunks/{acpAgent-UMAJ3XR3.js → acpAgent-3DPWZTNC.js} +954 -322
  19. package/chunks/{agent-CXB2CCQN.js → agent-KIHGINKN.js} +27 -30
  20. package/chunks/{agent-headless-7D5ZC736.js → agent-headless-EJ4QOUSM.js} +27 -30
  21. package/chunks/{anthropicContentGenerator-H5YPXIDE.js → anthropicContentGenerator-4FGOM5LK.js} +46 -64
  22. package/chunks/{artifact-tool-MFGORTWZ.js → artifact-tool-MUTNH4NI.js} +1 -1
  23. package/chunks/{askUserQuestion-WS4GUT7C.js → askUserQuestion-AKIRLVB5.js} +1 -1
  24. package/chunks/bareMode-QWKZPLPX.js +14 -0
  25. package/chunks/{bridge-A2WKX6IK.js → bridge-MUX5YJZT.js} +46 -49
  26. package/chunks/{ca-GZ4FDJU2.js → ca-WC3A5B3Q.js} +12 -1
  27. package/chunks/{channel-management-service-AFVIT4VH.js → channel-management-service-RRILWSXX.js} +4 -4
  28. package/chunks/{channel-settings-store-AXJIN7HG.js → channel-settings-store-7CBIRZER.js} +51 -54
  29. package/chunks/{channel-worker-group-JR6JOELM.js → channel-worker-group-3DUJFZJR.js} +8 -8
  30. package/chunks/{channel-worker-manager-AVKJEZFL.js → channel-worker-manager-E5UW2VLA.js} +8 -8
  31. package/chunks/{channel-worker-supervisor-OOYY7BAQ.js → channel-worker-supervisor-VN33GSEC.js} +5 -5
  32. package/chunks/{chunk-2YMRRI2C.js → chunk-2C5TR6HN.js} +82 -9
  33. package/chunks/{chunk-YDFOHRS5.js → chunk-2GP6BQ2J.js} +1 -1
  34. package/chunks/{chunk-RN6BU77T.js → chunk-347O2YZJ.js} +158 -290
  35. package/chunks/{chunk-LTINUI3O.js → chunk-36NRLIR6.js} +10 -8
  36. package/chunks/{chunk-AXZMWAJV.js → chunk-36SDZ2Q4.js} +8 -0
  37. package/chunks/{chunk-QR4Q425T.js → chunk-3BZI5GDP.js} +1 -1
  38. package/chunks/{chunk-C3YMBSLR.js → chunk-3HTUE6ZR.js} +3 -3
  39. package/chunks/{chunk-QS5Q5F42.js → chunk-3LLEB5CU.js} +2 -2
  40. package/chunks/{chunk-FPPG5Y3W.js → chunk-3UGMLA4V.js} +10 -8
  41. package/chunks/{chunk-66N6C4EH.js → chunk-3WILPKTJ.js} +2 -2
  42. package/chunks/{chunk-SROLVJFY.js → chunk-3WWPEFMX.js} +1 -1
  43. package/chunks/{chunk-ZKIAGIGH.js → chunk-3XBUCOWS.js} +1 -1
  44. package/chunks/{chunk-6RQFMGN2.js → chunk-43Y26NPF.js} +3 -3
  45. package/chunks/{chunk-INGBUYL6.js → chunk-4FLUQWJ4.js} +1 -1
  46. package/chunks/{chunk-S77FFY67.js → chunk-4JFLRHNE.js} +1 -1
  47. package/chunks/{chunk-MJHLKWGJ.js → chunk-4QPVZA5J.js} +70 -23
  48. package/chunks/{chunk-XX5HQLCZ.js → chunk-6OTF7TTE.js} +32 -1
  49. package/chunks/{chunk-4Y2I3CI3.js → chunk-6USYH3EU.js} +99 -6
  50. package/chunks/{chunk-Q3TFRP5G.js → chunk-7D4CV7JH.js} +102 -9
  51. package/chunks/{chunk-EWJTAP3Y.js → chunk-7O5PYQ3M.js} +20 -1
  52. package/chunks/chunk-ADN5KESB.js +28 -0
  53. package/chunks/chunk-AKRSSKUT.js +229 -0
  54. package/chunks/{chunk-54YUXX7X.js → chunk-AQP3H22J.js} +1 -1
  55. package/chunks/{chunk-EQWKIA72.js → chunk-AUX2FL5T.js} +24 -7
  56. package/chunks/{chunk-YGFJ6BRT.js → chunk-AZCTY64Z.js} +1 -1
  57. package/chunks/{chunk-QLX4D55R.js → chunk-B5TJK7B3.js} +1 -1
  58. package/chunks/{chunk-HXMDDII6.js → chunk-B6RMK4ED.js} +4 -4
  59. package/chunks/{chunk-UCKM6KCJ.js → chunk-BHG3H6OZ.js} +1 -1
  60. package/chunks/{chunk-JLF2AQAL.js → chunk-BHVF3R6B.js} +7 -5
  61. package/chunks/{chunk-HFJSQ4GL.js → chunk-BTICBRPL.js} +1 -1
  62. package/chunks/{chunk-KZCK5JUN.js → chunk-C3T6HPNM.js} +1 -1
  63. package/chunks/{chunk-FCLMJS6N.js → chunk-CDDP4ONL.js} +164 -27
  64. package/chunks/{chunk-Y3ZXDBUL.js → chunk-CQPM66MG.js} +4 -4
  65. package/chunks/{chunk-WKVZES7O.js → chunk-CXONOVBN.js} +1 -1
  66. package/chunks/{chunk-TYBRGFYL.js → chunk-CXY6BICQ.js} +501 -479
  67. package/chunks/{chunk-W23HOFDK.js → chunk-D3KVGQUV.js} +1 -1
  68. package/chunks/{chunk-LMJSPC55.js → chunk-D7JMO2GP.js} +3 -7
  69. package/chunks/{chunk-CXXAZ2LZ.js → chunk-DC4ZNGH4.js} +1 -1
  70. package/chunks/{chunk-FMLBBXHB.js → chunk-DRAX5YAI.js} +2 -2
  71. package/chunks/{chunk-DOTF2PF2.js → chunk-DRD6VBNH.js} +1 -1
  72. package/chunks/chunk-DX6JTDMR.js +105 -0
  73. package/chunks/{chunk-MNRK6MIH.js → chunk-E2VSBAFA.js} +53 -11
  74. package/chunks/{chunk-QJKR2P2K.js → chunk-EIBECN2J.js} +3 -3
  75. package/chunks/{chunk-LWWRJRCD.js → chunk-ESBYWATJ.js} +1 -1
  76. package/chunks/{chunk-3544ZEGZ.js → chunk-FASYATAZ.js} +5 -7
  77. package/chunks/{chunk-6YUS5JCV.js → chunk-FBY32737.js} +4 -4
  78. package/chunks/{chunk-LBWIJ5T7.js → chunk-FCPJXKDG.js} +10 -7
  79. package/chunks/{chunk-FX6GJIPZ.js → chunk-FEDFZBGR.js} +3 -3
  80. package/chunks/{chunk-DQ4LBRZN.js → chunk-FIJODK52.js} +3 -3
  81. package/chunks/{chunk-HVSRWLOW.js → chunk-FX6PZBOV.js} +3 -3
  82. package/chunks/{chunk-L6DIANLD.js → chunk-G45B3INR.js} +1 -1
  83. package/chunks/{chunk-EYLUKEYW.js → chunk-GI7SLDOI.js} +2 -2
  84. package/chunks/chunk-GJKP6XOB.js +1092 -0
  85. package/chunks/{chunk-I6YJZGHS.js → chunk-GSAOVDTH.js} +9 -9
  86. package/chunks/{chunk-XK4UQSIR.js → chunk-H6L4NEAT.js} +1 -1
  87. package/chunks/{chunk-GMCEFKNR.js → chunk-HNFKYKHH.js} +103 -22
  88. package/chunks/{chunk-6XDB3FR4.js → chunk-HX4WXX3H.js} +301 -138
  89. package/chunks/{chunk-HG46TTAG.js → chunk-HXUI5D4H.js} +1 -1
  90. package/chunks/{chunk-QI4WBHPF.js → chunk-HYHSMTRA.js} +4 -4
  91. package/chunks/{chunk-ZUKC5J6Q.js → chunk-IKBEIDOH.js} +14 -14
  92. package/chunks/{chunk-LCAJ63TF.js → chunk-INN5ORKX.js} +1 -1
  93. package/chunks/{chunk-GNV2SFO7.js → chunk-IVFTLUZD.js} +26 -1
  94. package/chunks/{chunk-GNKSR3FU.js → chunk-IXO2OCIP.js} +2 -2
  95. package/chunks/{chunk-SNT634Q6.js → chunk-K4XMAIRX.js} +30 -33
  96. package/chunks/{chunk-WBP64MZR.js → chunk-KAYC5FBN.js} +5269 -2785
  97. package/chunks/chunk-KEM7MWS7.js +3541 -0
  98. package/chunks/{chunk-ADQUK6WA.js → chunk-KVC7HZWK.js} +1 -1
  99. package/chunks/{chunk-UQXURNLM.js → chunk-KVQ3QL4K.js} +3 -3
  100. package/chunks/{chunk-7U5G6JXI.js → chunk-KWYTSSTJ.js} +105 -6
  101. package/chunks/{chunk-Q4G2YPI4.js → chunk-L2A5VBDL.js} +3019 -2352
  102. package/chunks/{chunk-WD6YQI5M.js → chunk-L3SNMEDW.js} +1 -1
  103. package/chunks/{chunk-BYUAT5OC.js → chunk-L7TJUPNR.js} +19 -3
  104. package/chunks/{chunk-ABNX6E6K.js → chunk-LFKXIOGC.js} +1 -1
  105. package/chunks/{chunk-GFAK6DYU.js → chunk-LO2UWNO5.js} +2 -2
  106. package/chunks/{chunk-67ZDP7UX.js → chunk-M22WLKLI.js} +5 -5
  107. package/chunks/{chunk-54B2LTKP.js → chunk-M23GFJ5B.js} +24 -5
  108. package/chunks/{chunk-VGY2RGXL.js → chunk-M4U2LTD2.js} +1 -1
  109. package/chunks/{chunk-ZNI3YJHS.js → chunk-MFDKHGTD.js} +1 -1
  110. package/chunks/{chunk-R7OO56VZ.js → chunk-MMRGG6R4.js} +1 -1
  111. package/chunks/{chunk-E6IR653O.js → chunk-MO4XID7S.js} +1 -1
  112. package/chunks/{chunk-NJ4ZNDVP.js → chunk-NKTMUPHJ.js} +3 -6
  113. package/chunks/{chunk-4DTFTPTU.js → chunk-NQ272MQG.js} +1 -1
  114. package/chunks/{chunk-DWKFTUGI.js → chunk-OALXNGUA.js} +6 -6
  115. package/chunks/{chunk-FBDHP23D.js → chunk-OSG23MR3.js} +1 -1
  116. package/chunks/{chunk-NJ2OFVUX.js → chunk-P42KMMU6.js} +860 -1
  117. package/chunks/{chunk-5KJ54DY3.js → chunk-PF7GAP6K.js} +60 -58
  118. package/chunks/{chunk-MQRLLBMQ.js → chunk-PPJSG2PU.js} +2 -2
  119. package/chunks/{chunk-EPVEPTI3.js → chunk-PZRXWQUA.js} +753 -18
  120. package/chunks/{chunk-VI5UVPOB.js → chunk-Q54O3EIA.js} +30 -28
  121. package/chunks/{chunk-QTUQV33C.js → chunk-QGEISOJ2.js} +4 -4
  122. package/chunks/{chunk-XKRYQOHS.js → chunk-QHSOINX6.js} +2 -2
  123. package/chunks/{chunk-Z6Q7I37O.js → chunk-QIPLWW6Q.js} +1 -1
  124. package/chunks/chunk-QMENOK5T.js +1246 -0
  125. package/chunks/chunk-QT6Z2IBF.js +347 -0
  126. package/chunks/{chunk-TBSCTWKF.js → chunk-RN6A53UJ.js} +25 -0
  127. package/chunks/{chunk-E7ZTAOJZ.js → chunk-RRI764F7.js} +21 -19
  128. package/chunks/{chunk-YI2YCNSP.js → chunk-SENYKRII.js} +1 -1
  129. package/chunks/chunk-SFHX5G2S.js +2796 -0
  130. package/chunks/chunk-SK3RZOPS.js +34 -0
  131. package/chunks/{chunk-SKYOAH4Z.js → chunk-SOLRBF7L.js} +13 -9
  132. package/chunks/{chunk-5WLF44DS.js → chunk-SSWTA7CH.js} +12 -12
  133. package/chunks/{chunk-IAS753HG.js → chunk-SYMXYRM5.js} +11 -2
  134. package/chunks/{chunk-FGROOEKM.js → chunk-TDKUXSJO.js} +34 -6
  135. package/chunks/{chunk-ZJ7JQUGY.js → chunk-TKF4JINY.js} +1 -1
  136. package/chunks/{chunk-ZOQ6HC7U.js → chunk-TPY6HW55.js} +4 -4
  137. package/chunks/{chunk-EDB556X7.js → chunk-TRZ22SG5.js} +1 -1
  138. package/chunks/{chunk-FHSOZSBO.js → chunk-TXTCM3TC.js} +4 -4
  139. package/chunks/{chunk-5ODRE7E5.js → chunk-U4AASWUQ.js} +28 -12
  140. package/chunks/{chunk-PPE7VUMD.js → chunk-UQGRJTDK.js} +2 -2
  141. package/chunks/{chunk-JO67LVXW.js → chunk-UZSB57EV.js} +6 -8
  142. package/chunks/{chunk-UY4OCBX4.js → chunk-V4JJAVHQ.js} +2 -2
  143. package/chunks/chunk-VEXUA6DX.js +1026 -0
  144. package/chunks/{chunk-ME4JBHSB.js → chunk-VQDWCQOE.js} +2 -0
  145. package/chunks/{chunk-ZC75SULX.js → chunk-VU3XMZ5I.js} +23 -4
  146. package/chunks/{chunk-A2UYI473.js → chunk-WL36KHUQ.js} +6 -6
  147. package/chunks/{chunk-IWOJ2FHG.js → chunk-WNQIJTOP.js} +8 -8
  148. package/chunks/{chunk-IANIY25T.js → chunk-WSJI6ODG.js} +99 -30
  149. package/chunks/{chunk-3CKAOJ4L.js → chunk-WZWTY7SG.js} +6 -6
  150. package/chunks/{chunk-EKMJR7M3.js → chunk-X7AYIXC7.js} +1 -1
  151. package/chunks/{chunk-IBRQG2MP.js → chunk-XAJZFGD2.js} +11 -11
  152. package/chunks/{chunk-VRQZESKP.js → chunk-XICCGDWF.js} +2 -2
  153. package/chunks/{chunk-L5R4D5T4.js → chunk-Y2KJC55Y.js} +12 -7
  154. package/chunks/{chunk-2S2WIGCM.js → chunk-Y4NNIGYO.js} +1 -1
  155. package/chunks/{chunk-J7LBAKDH.js → chunk-YL3UJML3.js} +7 -7
  156. package/chunks/{chunk-GSS4SZNG.js → chunk-YP2K3WOS.js} +40 -56
  157. package/chunks/{chunk-ZZUXUBEB.js → chunk-YQQ2U7AS.js} +8 -5
  158. package/chunks/{chunk-FAWTMDX7.js → chunk-YXHY6BKS.js} +15 -0
  159. package/chunks/{chunk-FIP5QS2U.js → chunk-YZXSDPOQ.js} +140 -39
  160. package/chunks/{chunk-WATHOB6X.js → chunk-ZFHKUQZ4.js} +3 -3
  161. package/chunks/{chunk-R5OA3ONY.js → chunk-ZMYKNKET.js} +6 -6
  162. package/chunks/{codex-subagent-executor-LANZAZPH.js → codex-subagent-executor-AEAIQZDC.js} +48 -49
  163. package/chunks/{config-utils-CRK2LQPA.js → config-utils-KX2YS725.js} +43 -46
  164. package/chunks/{contextCommand-GY5X3LIY.js → contextCommand-RV6Y5LNJ.js} +41 -44
  165. package/chunks/{core-runtime-IJIV2LHP.js → core-runtime-ZI4RTOJQ.js} +45 -48
  166. package/chunks/{create-sub-session-MNIVRHGB.js → create-sub-session-BBWFQARJ.js} +46 -48
  167. package/chunks/{daemon-NJB4PWZ7.js → daemon-INCM4VBX.js} +3 -1
  168. package/chunks/{daemon-git-worktree-guard-W6Z2BGDH.js → daemon-git-worktree-guard-KECEMV6A.js} +39 -42
  169. package/chunks/{daemon-status-provider-TJF3APU3.js → daemon-status-provider-NULJNAEV.js} +53 -56
  170. package/chunks/{daemon-trust-policy-6INCISDU.js → daemon-trust-policy-S4KWGPV3.js} +47 -50
  171. package/chunks/{daemon-trust-policy-monitor-JRTAQG54.js → daemon-trust-policy-monitor-546N5ZVL.js} +47 -50
  172. package/chunks/{de-VGY3VNBU.js → de-6AVKPTXQ.js} +11 -0
  173. package/chunks/{deferred-core-runtime-2JRTPTNM.js → deferred-core-runtime-T23ZT443.js} +39 -42
  174. package/chunks/{dist-NIOJXMGY.js → dist-4P3ZJYGI.js} +1 -1
  175. package/chunks/{dist-VDLSBCLM.js → dist-7MGRENQ5.js} +1 -1
  176. package/chunks/{dist-SE4J6Z4O.js → dist-BNW423XT.js} +326 -77
  177. package/chunks/{dist-TFGETXFN.js → dist-CESMUYGN.js} +4 -4
  178. package/chunks/{dist-MPUZZOG5.js → dist-DBBOFWSC.js} +1 -1
  179. package/chunks/{dist-T6DDPDLQ.js → dist-G5UMXIGF.js} +1 -1
  180. package/chunks/{dist-PA7WPFVE.js → dist-UXVNLQHG.js} +3 -3
  181. package/chunks/{dist-GUB7QRYA.js → dist-VA4LREAQ.js} +2 -2
  182. package/chunks/{dist-2QYIVNS6.js → dist-XDRTR4QP.js} +1 -1
  183. package/chunks/{edit-JDIXXCYB.js → edit-CMSQB7NP.js} +27 -30
  184. package/chunks/{en-E5ZO5TZW.js → en-56QLKXS2.js} +23 -1
  185. package/chunks/{enter-worktree-CAARFWBI.js → enter-worktree-DA6A4XC5.js} +3 -3
  186. package/chunks/{enterPlanMode-YTNTBZBN.js → enterPlanMode-UDPMNESD.js} +27 -30
  187. package/chunks/{environment-UAI5L52V.js → environment-TSQJUTPV.js} +42 -45
  188. package/chunks/{errors-J4UCDCW5.js → errors-RIVYJS6T.js} +41 -44
  189. package/chunks/{exit-worktree-JXGGUOBP.js → exit-worktree-4H6Z2VQI.js} +3 -3
  190. package/chunks/{exitPlanMode-YMWJ2EO7.js → exitPlanMode-BYBBFN2T.js} +27 -30
  191. package/chunks/{fast-path-MBAN7TK3.js → fast-path-F2CYDDZ4.js} +4 -4
  192. package/chunks/{fast-path-settings-XDYX7X5Z.js → fast-path-settings-N2VGRGDJ.js} +2 -2
  193. package/chunks/{fr-UAZJJH5N.js → fr-EBUDHJL3.js} +11 -0
  194. package/chunks/{glob-YEM24E3Z.js → glob-Z2JMJKKN.js} +27 -30
  195. package/chunks/{goal-tools-LJIVH5T6.js → goal-tools-HXVVLGCV.js} +27 -30
  196. package/chunks/{handleAutoUpdate-DYCSYDYL.js → handleAutoUpdate-FZP45KOR.js} +43 -46
  197. package/chunks/{i18n-PTAV7SN3.js → i18n-OTB62AKW.js} +40 -43
  198. package/chunks/{image-gen-5G2TQ3DY.js → image-gen-HIAZCB5T.js} +6 -7
  199. package/chunks/{initializer-MPXTKQA4.js → initializer-4JXZEC4B.js} +47 -50
  200. package/chunks/{installationInfo-U5EFA3OL.js → installationInfo-2IJV5QKC.js} +39 -42
  201. package/chunks/{ja-2RITCMAJ.js → ja-NCDT4CGV.js} +11 -0
  202. package/chunks/{list-YOE25QUI.js → list-KQSQ4A5G.js} +50 -53
  203. package/chunks/{llm-ZZ2WNQMC.js → llm-LSUBOJAR.js} +154 -974
  204. package/chunks/{llm-content-generator-CG2HRJZC.js → llm-content-generator-MLIONRXE.js} +17 -12
  205. package/chunks/{loadedSettingsAdapter-NPGWGURF.js → loadedSettingsAdapter-TZTTNRHI.js} +47 -50
  206. package/chunks/{loggingContentGenerator-TUL6SJVL.js → loggingContentGenerator-TUPEXFMM.js} +31 -34
  207. package/chunks/{loop-wakeup-VG6CGBQA.js → loop-wakeup-ZBVRI6VH.js} +1 -1
  208. package/chunks/{managed-npm-update-YUDSCJP3.js → managed-npm-update-WEA5XMFZ.js} +40 -43
  209. package/chunks/{mcp-EX3GDQVO.js → mcp-TFDTUPIA.js} +47 -50
  210. package/chunks/{model-configuration-6DEKTXJI.js → model-configuration-ZCAKKIOF.js} +48 -51
  211. package/chunks/{modelConfigUtils-4NA2MHEE.js → modelConfigUtils-J3ZPW7ZK.js} +41 -44
  212. package/chunks/{monitor-PPUGNAWR.js → monitor-CI7YE7MT.js} +29 -32
  213. package/chunks/{nonInteractiveCli-6TW2XYP5.js → nonInteractiveCli-GPT3TVOK.js} +96 -98
  214. package/chunks/{notebook-edit-4MUXHZHT.js → notebook-edit-3WCVRNGL.js} +27 -30
  215. package/chunks/{openaiContentGenerator-5J73W5XZ.js → openaiContentGenerator-OGILGUZE.js} +12 -17
  216. package/chunks/{openaiResponsesContentGenerator-AWRYZLJU.js → openaiResponsesContentGenerator-NXOXUPFM.js} +45 -13
  217. package/chunks/{pidfile-M7WELKBB.js → pidfile-GBTBIGHF.js} +39 -42
  218. package/chunks/{process-registry-X6ZCASEN.js → process-registry-7LAPI3ZB.js} +1 -1
  219. package/chunks/{processUtils-SPRINFNY.js → processUtils-O4II3RYH.js} +2 -2
  220. package/chunks/{prompt-terminal-ledger-25BRD7FX.js → prompt-terminal-ledger-ILIXZI3E.js} +40 -43
  221. package/chunks/{pt-5ZF7ZQUV.js → pt-FYYFWYUC.js} +11 -0
  222. package/chunks/{qwenContentGenerator-H5AAKXPC.js → qwenContentGenerator-I4LRYADV.js} +33 -36
  223. package/chunks/{qwenOAuth2-WIEUEFEY.js → qwenOAuth2-3J66TOT5.js} +6 -7
  224. package/chunks/{read-file-ILGEFPB3.js → read-file-G4XKW2CS.js} +5 -9
  225. package/chunks/{record-artifact-PXMNP7GZ.js → record-artifact-L3CFJOMA.js} +2 -2
  226. package/chunks/{report-findings-W6GR7SYZ.js → report-findings-LY5HQY4K.js} +3 -3
  227. package/chunks/{resumeHistoryUtils-RB52QOCH.js → resumeHistoryUtils-YPJU4XFE.js} +44 -47
  228. package/chunks/{ripGrep-O6QAFHQK.js → ripGrep-AAKMALLM.js} +7 -11
  229. package/chunks/{ru-7BNZFQKG.js → ru-RHEB3RNS.js} +11 -0
  230. package/chunks/{run-qwen-serve-5NO3TKUL.js → run-qwen-serve-ZVEKGS7Y.js} +177 -98
  231. package/chunks/{runtime-G2YUYMSZ.js → runtime-SJCRYNPA.js} +52 -55
  232. package/chunks/safe-mode-KLGUG54M.js +11 -0
  233. package/chunks/sandbox-UIXL423Z.js +146 -0
  234. package/chunks/sandboxConfig-CY343YNJ.js +114 -0
  235. package/chunks/{scheduled-tasks-HDHV3URA.js → scheduled-tasks-5UGBEVNZ.js} +50 -53
  236. package/chunks/{scheduler-6MDJX2ZK.js → scheduler-GCZYLZ2P.js} +41 -44
  237. package/chunks/{sdk-exporters-http-3R2TRQHE.js → sdk-exporters-http-DR4G663K.js} +1 -1
  238. package/chunks/{sdk-impl-4WF3VZ2F.js → sdk-impl-SJR26MQF.js} +3 -3
  239. package/chunks/{send-message-UMJKN27Q.js → send-message-DN76MXDX.js} +6 -6
  240. package/chunks/{serve-Z2EJQYKB.js → serve-2XXQLVK2.js} +48 -51
  241. package/chunks/{server-JTNBK3LH.js → server-UHMKPCAZ.js} +408 -211
  242. package/chunks/{session-5YK2BXH4.js → session-ZLUK7E4P.js} +108 -108
  243. package/chunks/{session-attachments-root-QO3VFJS6.js → session-attachments-root-DHQM5IEZ.js} +39 -42
  244. package/chunks/{session-pr-refresh-OTK3HCJZ.js → session-pr-refresh-3OMTQWCZ.js} +48 -51
  245. package/chunks/{settings-2VKLACYV.js → settings-P4DHIIUP.js} +50 -53
  246. package/chunks/{shell-64NAVGMS.js → shell-IMFUVQQ5.js} +27 -30
  247. package/chunks/{skill-R3ALMLLM.js → skill-NB5RJGZW.js} +7 -11
  248. package/chunks/{skill-settings-HZ34TUMP.js → skill-settings-IXG5CTQO.js} +47 -50
  249. package/chunks/{spawnChannel-XGFWHEIK.js → spawnChannel-Q3YALTCJ.js} +44 -45
  250. package/chunks/{standalone-update-R32Y3XRR.js → standalone-update-H5OJ7MM7.js} +41 -44
  251. package/chunks/{start-opentui-ui-YGJOUE2H.js → start-opentui-ui-JKAIWGF7.js} +733 -386
  252. package/chunks/{startInteractiveUI-5ZEVKSFF.js → startInteractiveUI-YRPOT6GH.js} +370 -337
  253. package/chunks/task-create-75HVPEAH.js +1 -1
  254. package/chunks/{team-create-GCVUXJLE.js → team-create-2XTBYRJF.js} +31 -34
  255. package/chunks/{team-plan-approval-NOL62FJD.js → team-plan-approval-CFNWW7ZQ.js} +27 -30
  256. package/chunks/{terminal-image-renderer-WG5TLPGC.js → terminal-image-renderer-UDPJPGPQ.js} +39 -42
  257. package/chunks/{theme-manager-HDS4YFPW.js → theme-manager-SK57EKMO.js} +39 -42
  258. package/chunks/{tool-search-HMT5GYUR.js → tool-search-ZHTJU2MV.js} +5 -9
  259. package/chunks/{total-session-admission-Y5RCHEXO.js → total-session-admission-UUZBDQCG.js} +47 -50
  260. package/chunks/{tree-sitter-LSORDVZ3.js → tree-sitter-4D7QS7F6.js} +1 -1
  261. package/chunks/{tree-sitter-bash-UARELQ6C.js → tree-sitter-bash-VEJGF5XF.js} +1 -1
  262. package/chunks/{trustedFolders-3Y2WCXMR.js → trustedFolders-4LDBLNTS.js} +40 -43
  263. package/chunks/{update-relaunch-MTJ32SLF.js → update-relaunch-LI7GRP36.js} +5 -5
  264. package/chunks/{updateCheck-YFX3VY6O.js → updateCheck-PKSSORPO.js} +43 -46
  265. package/chunks/{useAutoAcceptIndicator-FCHNQPMD.js → useAutoAcceptIndicator-I32UEQPI.js} +50 -53
  266. package/chunks/{validateNonInterActiveAuth-HUFQKCGG.js → validateNonInterActiveAuth-YFPCYYNL.js} +93 -95
  267. package/chunks/{version-S5TGWCA3.js → version-4MTL4JVU.js} +1 -1
  268. package/chunks/{web-fetch-23M7BYHB.js → web-fetch-O6RG6ISB.js} +9 -13
  269. package/chunks/{web-search-F5PNIQUA.js → web-search-JHAXVEMD.js} +9 -14
  270. package/chunks/{web-shell-static-T7UGLVE4.js → web-shell-static-FFWCUUZS.js} +8 -4
  271. package/chunks/{workflow-BLJLID2C.js → workflow-O7L6VDYU.js} +396 -113
  272. package/chunks/{workspace-providers-status-UH7KLZDT.js → workspace-providers-status-WRX6CJM4.js} +53 -56
  273. package/chunks/{workspace-registration-store-3SA3V7BA.js → workspace-registration-store-7G4E7YPY.js} +1 -1
  274. package/chunks/{workspace-registry-C6C6EKQ5.js → workspace-registry-SXIMGT4D.js} +47 -50
  275. package/chunks/{workspace-runtime-coordinator-RAI6XDJB.js → workspace-runtime-coordinator-7DOEHXYT.js} +47 -50
  276. package/chunks/{workspace-service-H7UTJYJU.js → workspace-service-HDXOZMYC.js} +53 -56
  277. package/chunks/{workspace-skills-status-FPVC7XXK.js → workspace-skills-status-VN4L37CA.js} +50 -53
  278. package/chunks/{workspace-trust-reconciler-JS7A6UIF.js → workspace-trust-reconciler-XEBW5FUL.js} +57 -60
  279. package/chunks/{write-file-GQGG7NBQ.js → write-file-LKX4ETIO.js} +29 -32
  280. package/chunks/{zh-V2EYTYJP.js → zh-F76MZTL3.js} +23 -1
  281. package/chunks/{zh-TW-7PRVUGLW.js → zh-TW-S3YTQ4DS.js} +23 -1
  282. package/chunks/{zoom-image-EC43KL4H.js → zoom-image-RDPRTP4B.js} +5 -9
  283. package/cli.js +19 -15
  284. package/export-transcript-document.css +1 -1
  285. package/export-transcript-document.js +151 -150
  286. package/locales/ca.js +19 -2
  287. package/locales/de.js +18 -0
  288. package/locales/en.js +33 -2
  289. package/locales/fr.js +18 -0
  290. package/locales/ja.js +18 -0
  291. package/locales/pt.js +18 -0
  292. package/locales/ru.js +18 -0
  293. package/locales/zh-TW.js +33 -2
  294. package/locales/zh.js +33 -2
  295. package/package.json +3 -3
  296. package/web-shell/assets/{abnfDiagram-VCTEODGH-BtpzKw3A.js → abnfDiagram-VCTEODGH-RxykUDmi.js} +1 -1
  297. package/web-shell/assets/{arc-CQiVKZJP.js → arc-CZpgGCJC.js} +1 -1
  298. package/web-shell/assets/{architectureDiagram-5GKGNRK7-ekIPBb2d.js → architectureDiagram-5GKGNRK7-BHSMzNDT.js} +1 -1
  299. package/web-shell/assets/{blockDiagram-NRAW4CY4-BrRWkWri.js → blockDiagram-NRAW4CY4-Bn4mF9SZ.js} +1 -1
  300. package/web-shell/assets/{c4Diagram-UCG6FXSJ-qYS8CYZ3.js → c4Diagram-UCG6FXSJ-CBM-Bj6t.js} +1 -1
  301. package/web-shell/assets/channel-DFYs_LlK.js +1 -0
  302. package/web-shell/assets/{chunk-2Q5K7J3B-ZasyyEZm.js → chunk-2Q5K7J3B-D5Fin58O.js} +1 -1
  303. package/web-shell/assets/{chunk-5VM5RSS4-C_IzCGeA.js → chunk-5VM5RSS4-CY05weF7.js} +1 -1
  304. package/web-shell/assets/{chunk-F27PBJKO-C25NZOyD.js → chunk-F27PBJKO-3neZnj5Y.js} +1 -1
  305. package/web-shell/assets/{chunk-G27WJ6UU-XPOHNSGX.js → chunk-G27WJ6UU-Cd7EU4BE.js} +1 -1
  306. package/web-shell/assets/{chunk-JWPE2WC7-BQBh0Xni.js → chunk-JWPE2WC7-DwK1mqFw.js} +1 -1
  307. package/web-shell/assets/{chunk-LCL6LL3I-CoShjpX7.js → chunk-LCL6LL3I-Sl7vY22C.js} +1 -1
  308. package/web-shell/assets/{chunk-POPQ4Y6H-BwRmCDSz.js → chunk-POPQ4Y6H-BXNzpbVg.js} +1 -1
  309. package/web-shell/assets/{chunk-SVP7TREG-DSzE5-Mw.js → chunk-SVP7TREG-DjjButcp.js} +1 -1
  310. package/web-shell/assets/{chunk-XXDRQBXY-BQSQv30h.js → chunk-XXDRQBXY-DNOiCjOJ.js} +1 -1
  311. package/web-shell/assets/classDiagram-DTDB5LWJ-DnGrKXoM.js +1 -0
  312. package/web-shell/assets/classDiagram-v2-JRS7N3AN-DnGrKXoM.js +1 -0
  313. package/web-shell/assets/{cose-bilkent-JH36ORCC-XVUVTHVo.js → cose-bilkent-JH36ORCC-BUnker7a.js} +1 -1
  314. package/web-shell/assets/{cynefin-OW5HDTMX-CrsKx4lQ.js → cynefin-OW5HDTMX-DcUgdWE5.js} +1 -1
  315. package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-BPeZEuHw.js → cynefinDiagram-5FMLGOSQ-CvDKsZsL.js} +1 -1
  316. package/web-shell/assets/{dagre-3AP2YEHR-D31cQ2Qs.js → dagre-3AP2YEHR-jpCmUbr1.js} +1 -1
  317. package/web-shell/assets/{diagram-S7CK7UJ4-zyiG097Q.js → diagram-S7CK7UJ4-DBe_bKE5.js} +1 -1
  318. package/web-shell/assets/{diagram-UQ7AKVKN-Br3vtfsy.js → diagram-UQ7AKVKN-oXvPpDgs.js} +1 -1
  319. package/web-shell/assets/{diagram-VSXAHHWV-Bxkhjx4u.js → diagram-VSXAHHWV-BD7-_SGh.js} +1 -1
  320. package/web-shell/assets/{diagram-VX7I27RA-BQH8QiDk.js → diagram-VX7I27RA-DOJL0wub.js} +1 -1
  321. package/web-shell/assets/{diagram-Z3DM3KII-B_aQ1cw0.js → diagram-Z3DM3KII-DRIiodDD.js} +1 -1
  322. package/web-shell/assets/{ebnfDiagram-PWID7BFC-B9N7BRQE.js → ebnfDiagram-PWID7BFC-Db31Ulmb.js} +1 -1
  323. package/web-shell/assets/{erDiagram-SSCWMZ5O-Cx6Hb1Re.js → erDiagram-SSCWMZ5O-CVHhwI2_.js} +1 -1
  324. package/web-shell/assets/{flowDiagram-A5DVABFB-DTuLP7GU.js → flowDiagram-A5DVABFB-DWOFy1FK.js} +1 -1
  325. package/web-shell/assets/{ganttDiagram-EL5Y4UJY-DYS3d-sL.js → ganttDiagram-EL5Y4UJY-C0sxQtPd.js} +1 -1
  326. package/web-shell/assets/{gitGraphDiagram-WWUBYQGX-Cp0EGx04.js → gitGraphDiagram-WWUBYQGX-CNituBYC.js} +1 -1
  327. package/web-shell/assets/index-B15NlwB8.js +2213 -0
  328. package/web-shell/assets/index-BSrS0tQ6.css +36 -0
  329. package/web-shell/assets/{index-45-LkPDB.js → index-gm9tLk7h.js} +1 -1
  330. package/web-shell/assets/{infoDiagram-RXCK75RN-9--kukiT.js → infoDiagram-RXCK75RN-CxhJYtIR.js} +1 -1
  331. package/web-shell/assets/{ishikawaDiagram-5VMMS53U-CGBdsDLD.js → ishikawaDiagram-5VMMS53U-By2mchUy.js} +1 -1
  332. package/web-shell/assets/{journeyDiagram-EYS64GPL-DeXhcscd.js → journeyDiagram-EYS64GPL-CVH-OweI.js} +1 -1
  333. package/web-shell/assets/{kanban-definition-3QL26DDD-CFdvsU3b.js → kanban-definition-3QL26DDD-Cc9dQXLy.js} +1 -1
  334. package/web-shell/assets/knowledge-Dg9788h4.svg +1 -0
  335. package/web-shell/assets/{layout-DAnwQ3KB.js → layout-C_60ysHw.js} +1 -1
  336. package/web-shell/assets/{linear-CTo7v7Nh.js → linear-BvAVfqwu.js} +1 -1
  337. package/web-shell/assets/{mermaid.core-jggSxF1i.js → mermaid.core-C3CoBKAc.js} +6 -6
  338. package/web-shell/assets/{mindmap-definition-FBJOCRG2-DzIepvlJ.js → mindmap-definition-FBJOCRG2-Cuu8Q8LM.js} +1 -1
  339. package/web-shell/assets/{pegDiagram-XKGWAZYB-BFGS9GJv.js → pegDiagram-XKGWAZYB-DmAeyDO2.js} +1 -1
  340. package/web-shell/assets/{pieDiagram-E7YTZNPT-B2UUcNIT.js → pieDiagram-E7YTZNPT-B7vbB_xv.js} +1 -1
  341. package/web-shell/assets/{quadrantDiagram-AXDQQJYC-BgM6htrX.js → quadrantDiagram-AXDQQJYC-BqOBkRR7.js} +1 -1
  342. package/web-shell/assets/{railroadDiagram-O6MQD6OU-Dk9cS7N-.js → railroadDiagram-O6MQD6OU-sI06lZIu.js} +1 -1
  343. package/web-shell/assets/{requirementDiagram-EFPCY7ZU-C9oRg7xi.js → requirementDiagram-EFPCY7ZU-Bg13d10S.js} +1 -1
  344. package/web-shell/assets/{sankeyDiagram-P5KCCOFB-B-_c7GzI.js → sankeyDiagram-P5KCCOFB-WFOzZHrR.js} +1 -1
  345. package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-R0M-347u.js → sequenceDiagram-WJ2MYXX4-CCdRbA4E.js} +1 -1
  346. package/web-shell/assets/{sizeCapture-X5ZJPWSS-Df0f8UAW.js → sizeCapture-X5ZJPWSS-BH5F3bGg.js} +1 -1
  347. package/web-shell/assets/{stateDiagram-HBIQ2CUA-CsUEfAA-.js → stateDiagram-HBIQ2CUA-NwS2X3QB.js} +1 -1
  348. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-1aU2JZXO.js +1 -0
  349. package/web-shell/assets/{swimlanes-XN3QIQJK-9OGHVSrx.js → swimlanes-XN3QIQJK-Bm38pM28.js} +1 -1
  350. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-Dp-u6kQG.js +8 -0
  351. package/web-shell/assets/{timeline-definition-24CTP7MA-DAfGqS2B.js → timeline-definition-24CTP7MA-Do-agLSo.js} +1 -1
  352. package/web-shell/assets/{vennDiagram-4TSXK5OY-CKATpwHi.js → vennDiagram-4TSXK5OY-aggLfZzl.js} +1 -1
  353. package/web-shell/assets/{wardleyDiagram-VM6X3IG4-CQHdhTrm.js → wardleyDiagram-VM6X3IG4-D5JR3mXX.js} +1 -1
  354. package/web-shell/assets/{xychartDiagram-S5SC5T6Z-5k9NLqlY.js → xychartDiagram-S5SC5T6Z-DhtLDuXs.js} +1 -1
  355. package/web-shell/index.html +2 -2
  356. package/chunks/chunk-4OQSG35W.js +0 -1416
  357. package/chunks/chunk-7MIBD3LG.js +0 -137
  358. package/chunks/chunk-ARDHE6MM.js +0 -235
  359. package/chunks/chunk-C75BXMPM.js +0 -169
  360. package/chunks/chunk-ERU3SDXT.js +0 -27
  361. package/chunks/chunk-FPGTNKCP.js +0 -251
  362. package/chunks/chunk-JIJ65YKA.js +0 -2812
  363. package/chunks/chunk-JL6APGBX.js +0 -43
  364. package/chunks/chunk-SGXJQP5Q.js +0 -4172
  365. package/chunks/chunk-TPEV2QHG.js +0 -514
  366. package/chunks/chunk-YVWS4SLL.js +0 -137
  367. package/web-shell/assets/channel-DSQQnOZj.js +0 -1
  368. package/web-shell/assets/classDiagram-DTDB5LWJ-V94ta08R.js +0 -1
  369. package/web-shell/assets/classDiagram-v2-JRS7N3AN-V94ta08R.js +0 -1
  370. package/web-shell/assets/index-H8um-iEl.js +0 -2207
  371. package/web-shell/assets/index-n6N-2a3v.css +0 -36
  372. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-CnSuTPJ2.js +0 -1
  373. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-Bb7TcWQw.js +0 -8
  374. package/chunks/{chunk-QZW6WRB7.js → chunk-5NUKK2DT.js} +2 -2
  375. package/chunks/{chunk-JS73NNWF.js → chunk-FUSEMYFX.js} +0 -0
  376. package/chunks/{chunk-SVWWF5TZ.js → chunk-WVURIAEE.js} +3 -3
  377. package/chunks/{task-update-RI7QNVDP.js → task-update-3LSYQDRW.js} +4 -4
@@ -1,11 +1,5 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
- import {
4
- deriveWebSocketBase,
5
- openQwenAsrRealtimeStream,
6
- openVoiceStream,
7
- openVoiceStreamWithRetry
8
- } from "./chunk-Q2SAQTEJ.js";
9
3
  import {
10
4
  GENERATION_MAX_PROMPT_BYTES,
11
5
  MAX_REMEMBER_CONTENT_BYTES,
@@ -20,7 +14,13 @@ import {
20
14
  shouldSuppressRememberErrorDetails,
21
15
  workspaceMemoryFailureCode,
22
16
  workspaceMemoryFailureDiagnostics
23
- } from "./chunk-JLF2AQAL.js";
17
+ } from "./chunk-BHVF3R6B.js";
18
+ import {
19
+ deriveWebSocketBase,
20
+ openQwenAsrRealtimeStream,
21
+ openVoiceStream,
22
+ openVoiceStreamWithRetry
23
+ } from "./chunk-Q2SAQTEJ.js";
24
24
  import {
25
25
  SetupGithubError,
26
26
  collectSessionData,
@@ -32,16 +32,16 @@ import {
32
32
  toJson,
33
33
  toJsonl,
34
34
  toMarkdown
35
- } from "./chunk-GMCEFKNR.js";
35
+ } from "./chunk-HNFKYKHH.js";
36
36
  import {
37
37
  OBSERVED_CONTACT_MAX_FRESH_WITHIN_SECONDS,
38
38
  ObservedChannelContactStore
39
39
  } from "./chunk-M3JGHRMQ.js";
40
40
  import "./chunk-VFFQAOPR.js";
41
- import "./chunk-2S2WIGCM.js";
42
41
  import {
43
42
  escapeAnsiCtrlCodes
44
43
  } from "./chunk-47ECGEJC.js";
44
+ import "./chunk-Y4NNIGYO.js";
45
45
  import "./chunk-2MIN6GRR.js";
46
46
  import "./chunk-QHTIBUWB.js";
47
47
  import "./chunk-TXASDT2M.js";
@@ -115,7 +115,7 @@ import {
115
115
  singleTokenCredentials,
116
116
  tagListener,
117
117
  unsafeRevealSecret
118
- } from "./chunk-LBWIJ5T7.js";
118
+ } from "./chunk-FCPJXKDG.js";
119
119
  import {
120
120
  ConversationDirectoryIdentityError,
121
121
  getConversationDirectoryName,
@@ -127,6 +127,12 @@ import {
127
127
  formatHostForAuthority,
128
128
  isLoopbackBind
129
129
  } from "./chunk-DMEUXLSS.js";
130
+ import {
131
+ createTotalSessionAdmissionController
132
+ } from "./chunk-SENYKRII.js";
133
+ import {
134
+ assertValidChannelSecretUpdates
135
+ } from "./chunk-VU3XMZ5I.js";
130
136
  import {
131
137
  AONE_MAX_MR_VIEW_CALLS_PER_RUN,
132
138
  DaemonDrainingError,
@@ -154,7 +160,7 @@ import {
154
160
  runWithWorkspaceRuntimeStorage,
155
161
  searchWorkspaceSessionsForResponse,
156
162
  unarchiveDaemonSessions
157
- } from "./chunk-SKYOAH4Z.js";
163
+ } from "./chunk-SOLRBF7L.js";
158
164
  import {
159
165
  LIVE_SESSION_SOURCE_PREFIX,
160
166
  isCompatibleLiveSessionSource,
@@ -191,16 +197,30 @@ import {
191
197
  isReservedStandaloneSessionSourceType,
192
198
  isScheduledTaskRunSource
193
199
  } from "./chunk-N4QWUPDM.js";
200
+ import "./chunk-7D4CV7JH.js";
201
+ import {
202
+ isServeDebugMode,
203
+ mountWebShellAssets,
204
+ mountWebShellSpaFallback
205
+ } from "./chunk-TDKUXSJO.js";
206
+ import {
207
+ require_express
208
+ } from "./chunk-WVURIAEE.js";
209
+ import "./chunk-FBX2SDQ4.js";
210
+ import {
211
+ evaluateDaemonWorkspaceTrust,
212
+ readDaemonTrustPolicySnapshot
213
+ } from "./chunk-43Y26NPF.js";
194
214
  import {
195
215
  readRecentPromptTerminals,
196
216
  reconcileDanglingPromptTerminals,
197
217
  withPromptTerminals
198
- } from "./chunk-3544ZEGZ.js";
218
+ } from "./chunk-FASYATAZ.js";
199
219
  import {
200
220
  WorkspaceGenerationClosedError,
201
221
  createSingleWorkspaceRegistry,
202
222
  createWorkspaceSessionOwnerIndex
203
- } from "./chunk-R7OO56VZ.js";
223
+ } from "./chunk-MMRGG6R4.js";
204
224
  import {
205
225
  sessionAttachmentsRoots
206
226
  } from "./chunk-XWJFDJZK.js";
@@ -226,11 +246,11 @@ import {
226
246
  sendUntrustedWorkspaceResponse,
227
247
  sendWorkspaceRuntimeUnavailable,
228
248
  setWorkspaceRouteContext
229
- } from "./chunk-FPPG5Y3W.js";
249
+ } from "./chunk-3UGMLA4V.js";
230
250
  import {
231
251
  normalizeChannelDelivery,
232
252
  parseChannelDelivery
233
- } from "./chunk-QTUQV33C.js";
253
+ } from "./chunk-QGEISOJ2.js";
234
254
  import {
235
255
  isValidSessionId,
236
256
  normalizeSessionIdForLookup,
@@ -238,17 +258,10 @@ import {
238
258
  } from "./chunk-ZEZKIS2K.js";
239
259
  import {
240
260
  createSessionOrganizationService
241
- } from "./chunk-S77FFY67.js";
261
+ } from "./chunk-4JFLRHNE.js";
242
262
  import {
243
263
  isInternalWorkspaceRuntime
244
264
  } from "./chunk-NYWWQ437.js";
245
- import {
246
- WorkspaceRuntimeInitializationError,
247
- WorkspaceRuntimeStillStartingError,
248
- getWorkspaceRuntimeCoordinator,
249
- getWorkspaceRuntimeCoordinatorIfSupported,
250
- supportsWorkspaceRuntimeLifecycle
251
- } from "./chunk-ZZUXUBEB.js";
252
265
  import {
253
266
  EMPTY_WORKSPACE_VOICE_UPDATE_ERROR,
254
267
  MAX_WORKSPACE_SKILL_NAME_LENGTH,
@@ -264,14 +277,14 @@ import {
264
277
  validateWorkspaceSkillName,
265
278
  validateWorkspaceVoiceState,
266
279
  voiceSettingsScopeToWire
267
- } from "./chunk-5WLF44DS.js";
280
+ } from "./chunk-SSWTA7CH.js";
268
281
  import {
269
282
  PermissionRulesValidationError,
270
283
  buildPermissionSettings,
271
284
  isPermissionRuleType,
272
285
  normalizePermissionRules,
273
286
  readPermissionRuleSet
274
- } from "./chunk-UCKM6KCJ.js";
287
+ } from "./chunk-BHG3H6OZ.js";
275
288
  import {
276
289
  assertVoiceBaseUrlNetworkAllowed,
277
290
  isStreamingVoiceModel,
@@ -279,70 +292,84 @@ import {
279
292
  resolveVoiceTranscriptionConfig,
280
293
  sanitizeVoiceErrorMessage,
281
294
  transcribeVoiceAudio
282
- } from "./chunk-E6IR653O.js";
295
+ } from "./chunk-MO4XID7S.js";
283
296
  import {
284
297
  isVoiceEnabled,
285
298
  isVoiceMode,
286
299
  readVoiceModel,
287
300
  resolveVoiceTransport
288
- } from "./chunk-ADQUK6WA.js";
301
+ } from "./chunk-KVC7HZWK.js";
289
302
  import {
290
303
  resolvePath
291
304
  } from "./chunk-Y53DG2HA.js";
292
305
  import {
293
- createTotalSessionAdmissionController
294
- } from "./chunk-YI2YCNSP.js";
295
- import "./chunk-OIBUG24X.js";
296
- import {
297
- MAX_SESSION_RESTORE_TIMEOUT_MS,
298
- resolveSessionRestoreTimeoutMs,
299
- restoreRetryAfterSeconds
300
- } from "./chunk-4JRM2BSM.js";
301
- import {
302
- assertValidChannelSecretUpdates
303
- } from "./chunk-ZC75SULX.js";
306
+ createDaemonStatusProvider
307
+ } from "./chunk-CQPM66MG.js";
308
+ import "./chunk-FX6PZBOV.js";
309
+ import "./chunk-3LLEB5CU.js";
310
+ import "./chunk-FUSEMYFX.js";
304
311
  import {
305
312
  createWorkspaceProvidersStatusProvider
306
- } from "./chunk-SNT634Q6.js";
313
+ } from "./chunk-K4XMAIRX.js";
307
314
  import {
308
315
  PERSIST_REASONING_SELECTION_META_KEY,
309
316
  REASONING_SELECTION_PERSISTED_META_KEY
310
- } from "./chunk-MJHLKWGJ.js";
317
+ } from "./chunk-4QPVZA5J.js";
318
+ import {
319
+ snapshotProcessEnv
320
+ } from "./chunk-XICCGDWF.js";
321
+ import {
322
+ getAuthTypeFromEnv,
323
+ resolveCliGenerationConfig
324
+ } from "./chunk-UZSB57EV.js";
311
325
  import {
312
326
  findModelConfiguration,
313
327
  findModelConfigurationForDeletion,
314
328
  isConversationModelConfiguration,
315
329
  isImageModelConfiguration,
316
330
  listModelConfigurations
317
- } from "./chunk-FX6GJIPZ.js";
331
+ } from "./chunk-FEDFZBGR.js";
332
+ import "./chunk-4FLUQWJ4.js";
318
333
  import {
319
334
  createWorkspaceSkillsStatusProvider
320
- } from "./chunk-YVWS4SLL.js";
321
- import "./chunk-ZJ7JQUGY.js";
335
+ } from "./chunk-AKRSSKUT.js";
336
+ import "./chunk-TKF4JINY.js";
322
337
  import {
323
338
  lookupSkillDisablement,
324
339
  resolveSkillSettings
325
- } from "./chunk-LMJSPC55.js";
340
+ } from "./chunk-D7JMO2GP.js";
341
+ import {
342
+ WorkspaceRuntimeInitializationError,
343
+ WorkspaceRuntimeStillStartingError,
344
+ getWorkspaceRuntimeCoordinator,
345
+ getWorkspaceRuntimeCoordinatorIfSupported,
346
+ supportsWorkspaceRuntimeLifecycle
347
+ } from "./chunk-YQQ2U7AS.js";
348
+ import "./chunk-OIBUG24X.js";
349
+ import {
350
+ MAX_SESSION_RESTORE_TIMEOUT_MS,
351
+ resolveSessionRestoreTimeoutMs,
352
+ restoreRetryAfterSeconds
353
+ } from "./chunk-4JRM2BSM.js";
326
354
  import {
327
355
  WorkspacePermissionRulesSessionRequiredError,
328
356
  WorkspaceSettingsPartialPersistError,
329
357
  WorkspaceSkillNotFoundError,
330
358
  mapWorkspaceSkillToggleError
331
359
  } from "./chunk-FTJMWDND.js";
332
- import "./chunk-Q3TFRP5G.js";
333
360
  import {
334
- isServeDebugMode,
335
- mountWebShellAssets,
336
- mountWebShellSpaFallback
337
- } from "./chunk-FGROOEKM.js";
361
+ daemonObservedContactsPath,
362
+ loadChannelsConfig
363
+ } from "./chunk-WZWTY7SG.js";
364
+ import "./chunk-E2VSBAFA.js";
365
+ import "./chunk-57OAHC2Y.js";
338
366
  import {
339
- require_express
340
- } from "./chunk-SVWWF5TZ.js";
341
- import "./chunk-FBX2SDQ4.js";
367
+ parseChannelWebhookConfigLenient
368
+ } from "./chunk-SYMXYRM5.js";
342
369
  import {
343
- evaluateDaemonWorkspaceTrust,
344
- readDaemonTrustPolicySnapshot
345
- } from "./chunk-6RQFMGN2.js";
370
+ supportedChannelCatalog
371
+ } from "./chunk-U4AASWUQ.js";
372
+ import "./chunk-LFKXIOGC.js";
346
373
  import {
347
374
  assertLiveDiscoveryPublisher,
348
375
  getStableLiveDiscoveryBaseDir
@@ -359,15 +386,6 @@ import {
359
386
  conversationRuntimeOwnershipCompromisedError,
360
387
  conversationRuntimeUnavailableError
361
388
  } from "./chunk-Y5TM7SBV.js";
362
- import {
363
- createDaemonStatusProvider
364
- } from "./chunk-Y3ZXDBUL.js";
365
- import "./chunk-HVSRWLOW.js";
366
- import "./chunk-QS5Q5F42.js";
367
- import "./chunk-JS73NNWF.js";
368
- import {
369
- snapshotProcessEnv
370
- } from "./chunk-VRQZESKP.js";
371
389
  import {
372
390
  SessionArtifactAuthorizationError,
373
391
  SessionArtifactValidationError,
@@ -375,17 +393,18 @@ import {
375
393
  extractErrorCode,
376
394
  extractErrorMessage,
377
395
  parseSessionSource
378
- } from "./chunk-Q4G2YPI4.js";
396
+ } from "./chunk-L2A5VBDL.js";
379
397
  import {
380
398
  EVENT_SCHEMA_VERSION,
381
399
  EventBus,
382
- SubscriberLimitExceededError
383
- } from "./chunk-7U5G6JXI.js";
400
+ SubscriberLimitExceededError,
401
+ summarizeReplay
402
+ } from "./chunk-KWYTSSTJ.js";
384
403
  import "./chunk-WCCLLK7X.js";
385
404
  import "./chunk-OCPBI7J5.js";
386
405
  import {
387
406
  createSpawnChannelFactory
388
- } from "./chunk-2YMRRI2C.js";
407
+ } from "./chunk-2C5TR6HN.js";
389
408
  import "./chunk-LYD3T3H7.js";
390
409
  import {
391
410
  BridgeTimeoutError,
@@ -393,27 +412,12 @@ import {
393
412
  STATUS_SCHEMA_VERSION,
394
413
  SessionRestoreTimeoutError,
395
414
  createIdleWorkspaceMemoryStatus,
396
- mapDomainErrorToErrorKind
397
- } from "./chunk-54B2LTKP.js";
398
- import {
399
- getAuthTypeFromEnv,
400
- resolveCliGenerationConfig
401
- } from "./chunk-JO67LVXW.js";
402
- import "./chunk-INGBUYL6.js";
415
+ mapDomainErrorToErrorKind,
416
+ readServeWorkflowActionInput
417
+ } from "./chunk-M23GFJ5B.js";
418
+ import "./chunk-K6KS3LTN.js";
403
419
  import "./chunk-ZL4HFSL6.js";
404
- import {
405
- daemonObservedContactsPath,
406
- loadChannelsConfig
407
- } from "./chunk-3CKAOJ4L.js";
408
- import "./chunk-MNRK6MIH.js";
409
- import "./chunk-57OAHC2Y.js";
410
- import {
411
- parseChannelWebhookConfigLenient
412
- } from "./chunk-IAS753HG.js";
413
- import {
414
- supportedChannelCatalog
415
- } from "./chunk-5ODRE7E5.js";
416
- import "./chunk-ABNX6E6K.js";
420
+ import "./chunk-OSHQMOBS.js";
417
421
  import "./chunk-V6WHFGST.js";
418
422
  import {
419
423
  MAX_REGISTERED_WORKSPACES,
@@ -424,7 +428,7 @@ import {
424
428
  normalizeWorkspaceDisplayName,
425
429
  resolveMaxRegisteredWorkspaces,
426
430
  workspaceRegistrationId
427
- } from "./chunk-LCAJ63TF.js";
431
+ } from "./chunk-INN5ORKX.js";
428
432
  import {
429
433
  CHANNEL_PROMPT_META_KEY,
430
434
  DAEMON_PROMPT_DISPLAY_TEXT_META_KEY,
@@ -432,8 +436,9 @@ import {
432
436
  REQUESTED_SESSION_ID_META_KEY,
433
437
  SUBMITTED_PROMPT_META_KEY,
434
438
  gradeActiveWorkCoverage
435
- } from "./chunk-TBSCTWKF.js";
439
+ } from "./chunk-RN6A53UJ.js";
436
440
  import {
441
+ AcpChildCapacityExceededError,
437
442
  BranchWhilePromptActiveError,
438
443
  BridgeChannelQuarantinedError,
439
444
  CancelSentinelCollisionError,
@@ -469,7 +474,7 @@ import {
469
474
  WorkspaceInitRaceError,
470
475
  WorkspaceInitSymlinkError,
471
476
  WorkspaceMismatchError
472
- } from "./chunk-FAWTMDX7.js";
477
+ } from "./chunk-YXHY6BKS.js";
473
478
  import {
474
479
  MAX_WORKSPACE_PATH_LENGTH,
475
480
  canonicalizeWorkspace,
@@ -487,30 +492,28 @@ import {
487
492
  MAX_CHANNEL_STARTUP_FAILURE_MESSAGE_LENGTH,
488
493
  isChannelWebhookEnqueueError
489
494
  } from "./chunk-STUJ7IMZ.js";
495
+ import {
496
+ normalizeWorkerDiagnostic
497
+ } from "./chunk-L3SNMEDW.js";
490
498
  import {
491
499
  QWEN_SERVER_TOKEN_ENV
492
500
  } from "./chunk-GYTKQYDB.js";
493
- import {
494
- normalizeWorkerDiagnostic
495
- } from "./chunk-WD6YQI5M.js";
496
501
  import {
497
502
  normalizeServeChannelSelection
498
503
  } from "./chunk-GDWE23OR.js";
504
+ import "./chunk-CJ3DHN5I.js";
499
505
  import {
500
506
  ChannelDeliveryError,
501
507
  isChannelDeliveryError
502
508
  } from "./chunk-RKFGE7JH.js";
503
- import "./chunk-CJ3DHN5I.js";
504
509
  import "./chunk-UDG5EZJI.js";
505
- import "./chunk-3VUENPWF.js";
506
510
  import {
507
511
  redactLogCredentials
508
512
  } from "./chunk-M5GB774H.js";
509
- import "./chunk-K6KS3LTN.js";
510
- import "./chunk-OSHQMOBS.js";
513
+ import "./chunk-3VUENPWF.js";
511
514
  import {
512
515
  sanitizeLogText
513
- } from "./chunk-EPVEPTI3.js";
516
+ } from "./chunk-PZRXWQUA.js";
514
517
  import "./chunk-IJOS26LH.js";
515
518
  import {
516
519
  WORKSPACE_RESTRICTED_SETTING_KEYS,
@@ -524,28 +527,26 @@ import {
524
527
  resolveOutputLanguageOrPreserveAuto,
525
528
  updateOutputLanguageFile,
526
529
  validateSettingValue
527
- } from "./chunk-E7ZTAOJZ.js";
528
- import "./chunk-EQWKIA72.js";
530
+ } from "./chunk-RRI764F7.js";
529
531
  import "./chunk-RKUWKYED.js";
532
+ import "./chunk-AUX2FL5T.js";
533
+ import "./chunk-BW4333PP.js";
534
+ import "./chunk-IDS7MSUP.js";
530
535
  import {
531
536
  detectSystemLanguage,
532
537
  getCurrentLanguage,
533
538
  resolveLanguageSetting,
534
539
  setLanguageAsync
535
- } from "./chunk-I6YJZGHS.js";
540
+ } from "./chunk-GSAOVDTH.js";
536
541
  import {
537
542
  SUPPORTED_LANGUAGES,
538
543
  resolveSupportedLanguage
539
544
  } from "./chunk-5EJZE3FP.js";
540
- import "./chunk-NJ4ZNDVP.js";
541
- import "./chunk-BW4333PP.js";
542
- import "./chunk-IDS7MSUP.js";
543
- import "./chunk-XX5HQLCZ.js";
544
- import "./chunk-54YUXX7X.js";
545
- import "./chunk-W3N5XAZ6.js";
545
+ import "./chunk-NKTMUPHJ.js";
546
+ import "./chunk-6OTF7TTE.js";
546
547
  import {
547
548
  getWorkspaceTrustStatus
548
- } from "./chunk-4DTFTPTU.js";
549
+ } from "./chunk-NQ272MQG.js";
549
550
  import "./chunk-NPQ5ZKRP.js";
550
551
  import {
551
552
  isWithinRoot as isWithinRoot2
@@ -560,33 +561,31 @@ import {
560
561
  buildUsageDashboard,
561
562
  loadIgnoreRules,
562
563
  writeWorkspaceContextFile
563
- } from "./chunk-RN6BU77T.js";
564
+ } from "./chunk-347O2YZJ.js";
564
565
  import "./chunk-GELRJXE2.js";
565
566
  import "./chunk-32CM56LO.js";
567
+ import "./chunk-AQP3H22J.js";
568
+ import "./chunk-W3N5XAZ6.js";
566
569
  import "./chunk-6WXVEDT2.js";
567
570
  import "./chunk-LJZSMWOH.js";
568
- import {
569
- ALL_PROVIDERS,
570
- ProviderInstallError,
571
- shouldShowStep
572
- } from "./chunk-JIJ65YKA.js";
573
- import "./chunk-FHSOZSBO.js";
574
- import "./chunk-EKMJR7M3.js";
575
- import "./chunk-EDB556X7.js";
571
+ import "./chunk-VEXUA6DX.js";
572
+ import "./chunk-TXTCM3TC.js";
573
+ import "./chunk-X7AYIXC7.js";
574
+ import "./chunk-TRZ22SG5.js";
576
575
  import {
577
576
  clearWorktreeSession,
578
577
  readWorktreeSession,
579
578
  readWorktreeSessionStrict,
580
579
  writeWorktreeSession
581
- } from "./chunk-QR4Q425T.js";
582
- import "./chunk-GNKSR3FU.js";
580
+ } from "./chunk-3BZI5GDP.js";
581
+ import "./chunk-ZPJWUGCS.js";
582
+ import "./chunk-YM6KUQ2S.js";
583
+ import "./chunk-IXO2OCIP.js";
583
584
  import "./chunk-DJXSOEFB.js";
585
+ import "./chunk-SFHX5G2S.js";
584
586
  import "./chunk-5VQR2DD7.js";
585
587
  import "./chunk-BUQN5LTI.js";
586
- import "./chunk-ZPJWUGCS.js";
587
- import "./chunk-YM6KUQ2S.js";
588
- import "./chunk-SGXJQP5Q.js";
589
- import "./chunk-GFAK6DYU.js";
588
+ import "./chunk-LO2UWNO5.js";
590
589
  import {
591
590
  BuiltinAgentRegistry,
592
591
  Client,
@@ -653,7 +652,6 @@ import {
653
652
  isValidSessionPrUrl,
654
653
  loadUsageHistoryWithLive,
655
654
  matchesAnyServerPattern,
656
- parseGoalControlRequest,
657
655
  parseInstallSource,
658
656
  partToString,
659
657
  readAgentMeta,
@@ -663,28 +661,25 @@ import {
663
661
  resolveBranchName,
664
662
  sessionPrSourceAuthority,
665
663
  sleepInhibitor,
666
- stripTerminalControlSequences,
667
664
  toSessionPrInfo,
668
665
  upsertSessionPr,
669
666
  watchRepoBranch
670
- } from "./chunk-WBP64MZR.js";
667
+ } from "./chunk-KAYC5FBN.js";
671
668
  import "./chunk-GOFAQQZA.js";
669
+ import "./chunk-65I7S4Z3.js";
672
670
  import "./chunk-HEOH7JZY.js";
673
671
  import "./chunk-TWPJO254.js";
674
672
  import "./chunk-CQ35AJ4Z.js";
675
- import "./chunk-65I7S4Z3.js";
673
+ import "./chunk-IVFTLUZD.js";
676
674
  import "./chunk-7CLLH5TI.js";
677
675
  import "./chunk-WK6DEH3Q.js";
678
676
  import "./chunk-6PVPNMXU.js";
679
677
  import {
680
- ModelsConfig,
681
- resolveModelId,
682
- resolveProviderProtocol
683
- } from "./chunk-4OQSG35W.js";
678
+ resolveModelId
679
+ } from "./chunk-DX6JTDMR.js";
684
680
  import {
685
681
  readArtifactSnapshot
686
- } from "./chunk-ME4JBHSB.js";
687
- import "./chunk-GNV2SFO7.js";
682
+ } from "./chunk-VQDWCQOE.js";
688
683
  import "./chunk-5EZRLTLQ.js";
689
684
  import "./chunk-QHWCP53L.js";
690
685
  import {
@@ -694,6 +689,9 @@ import {
694
689
  taskHasLegacyCondition,
695
690
  updateCronTasks
696
691
  } from "./chunk-3LMDSCLU.js";
692
+ import {
693
+ glob
694
+ } from "./chunk-QJNDUTOL.js";
697
695
  import "./chunk-O6GEWCJA.js";
698
696
  import {
699
697
  GitWorktreeService,
@@ -701,19 +699,21 @@ import {
701
699
  createWorktreeSessionMarkerExclusive,
702
700
  readWorktreeSessionMarkerStrict,
703
701
  transferWorktreeSessionMarkerOwner
704
- } from "./chunk-WKVZES7O.js";
702
+ } from "./chunk-CXONOVBN.js";
703
+ import "./chunk-OWUAZXXN.js";
704
+ import "./chunk-CH2YDT6X.js";
705
705
  import {
706
+ parseGoalControlRequest,
706
707
  qualifySkillName,
707
708
  recordDaemonBridgeError,
708
709
  recordDaemonHttpRequest,
710
+ stripTerminalControlSequences,
709
711
  validateSkillName
710
- } from "./chunk-NJ2OFVUX.js";
711
- import "./chunk-HFJSQ4GL.js";
712
- import {
713
- glob
714
- } from "./chunk-QJNDUTOL.js";
712
+ } from "./chunk-P42KMMU6.js";
713
+ import "./chunk-BTICBRPL.js";
715
714
  import "./chunk-V545KI73.js";
716
- import "./chunk-MQRLLBMQ.js";
715
+ import "./chunk-ADN5KESB.js";
716
+ import "./chunk-PPJSG2PU.js";
717
717
  import {
718
718
  SessionSourceError
719
719
  } from "./chunk-ELRMZTPF.js";
@@ -721,20 +721,19 @@ import "./chunk-U6H3XTFA.js";
721
721
  import "./chunk-ACHCT36C.js";
722
722
  import "./chunk-CHEIIBT3.js";
723
723
  import "./chunk-AEWCOE64.js";
724
- import "./chunk-OWUAZXXN.js";
725
- import "./chunk-CH2YDT6X.js";
726
724
  import {
727
725
  APPROVAL_MODES
728
726
  } from "./chunk-JX6XHPTX.js";
729
727
  import "./chunk-ZSTCM3MX.js";
728
+ import "./chunk-SK3RZOPS.js";
730
729
  import "./chunk-MLXTMF7H.js";
731
- import "./chunk-AXZMWAJV.js";
730
+ import "./chunk-36SDZ2Q4.js";
732
731
  import {
733
732
  NO_EXEC_CONFIG,
734
733
  findGitRoot
735
734
  } from "./chunk-NXUZFW3G.js";
736
735
  import "./chunk-WFNEY5G7.js";
737
- import "./chunk-GSS4SZNG.js";
736
+ import "./chunk-YP2K3WOS.js";
738
737
  import "./chunk-BW2SMO6L.js";
739
738
  import "./chunk-S6LOFUVP.js";
740
739
  import {
@@ -756,19 +755,24 @@ import {
756
755
  isDeviceAuthorizationSuccess,
757
756
  isDeviceTokenPending,
758
757
  isDeviceTokenSuccess
759
- } from "./chunk-CXXAZ2LZ.js";
758
+ } from "./chunk-DC4ZNGH4.js";
760
759
  import "./chunk-NAVJD2PQ.js";
761
- import "./chunk-66N6C4EH.js";
762
- import "./chunk-FMLBBXHB.js";
760
+ import "./chunk-3WILPKTJ.js";
761
+ import "./chunk-DRAX5YAI.js";
763
762
  import "./chunk-VNOVK4I7.js";
764
763
  import "./chunk-S7UQ3V2H.js";
765
- import "./chunk-JL6APGBX.js";
766
764
  import "./chunk-DJ2GSRLV.js";
767
- import "./chunk-ZKIAGIGH.js";
768
- import "./chunk-VGY2RGXL.js";
769
- import "./chunk-C75BXMPM.js";
765
+ import "./chunk-3XBUCOWS.js";
766
+ import "./chunk-M4U2LTD2.js";
770
767
  import "./chunk-KFFCDLKV.js";
771
768
  import "./chunk-KP2FHIFR.js";
769
+ import {
770
+ ALL_PROVIDERS,
771
+ ModelsConfig,
772
+ ProviderInstallError,
773
+ resolveProviderProtocol,
774
+ shouldShowStep
775
+ } from "./chunk-KEM7MWS7.js";
772
776
  import {
773
777
  addDaemonRequestAttribute,
774
778
  captureDaemonTelemetryContext,
@@ -780,14 +784,13 @@ import {
780
784
  recordDaemonHttpResponse,
781
785
  runWithDaemonTelemetryContext,
782
786
  withDaemonRequestSpan
783
- } from "./chunk-L6DIANLD.js";
787
+ } from "./chunk-G45B3INR.js";
784
788
  import "./chunk-XWRJCPHC.js";
785
789
  import {
786
790
  parseLineTolerant,
787
791
  read
788
- } from "./chunk-FCLMJS6N.js";
792
+ } from "./chunk-CDDP4ONL.js";
789
793
  import "./chunk-5ETULJLP.js";
790
- import "./chunk-7MIBD3LG.js";
791
794
  import "./chunk-VGC4I5JJ.js";
792
795
  import {
793
796
  CursorNotAtLineBoundaryError,
@@ -797,24 +800,21 @@ import {
797
800
  getAllMemoryFilenames,
798
801
  isUtf8CompatibleEncoding,
799
802
  isWithinRoot
800
- } from "./chunk-QZW6WRB7.js";
803
+ } from "./chunk-5NUKK2DT.js";
801
804
  import "./chunk-EDIDYZBT.js";
802
805
  import "./chunk-HD7O6WLV.js";
803
806
  import "./chunk-CFMZLE3L.js";
804
807
  import "./chunk-WZAD4ZNJ.js";
805
- import "./chunk-ARDHE6MM.js";
806
- import "./chunk-FPGTNKCP.js";
807
808
  import "./chunk-TIGXX4PA.js";
808
- import "./chunk-TPEV2QHG.js";
809
809
  import "./chunk-XFFRI3WM.js";
810
- import "./chunk-ERU3SDXT.js";
811
- import "./chunk-EWJTAP3Y.js";
810
+ import "./chunk-GJKP6XOB.js";
811
+ import "./chunk-7O5PYQ3M.js";
812
812
  import "./chunk-HHJLM3WQ.js";
813
813
  import {
814
814
  isTelemetrySdkInitialized,
815
815
  redactUrlCredentials,
816
816
  stripAnsiAndControl
817
- } from "./chunk-4Y2I3CI3.js";
817
+ } from "./chunk-6USYH3EU.js";
818
818
  import "./chunk-74TONY4F.js";
819
819
  import "./chunk-SYROIHU7.js";
820
820
  import "./chunk-RSWBT7AZ.js";
@@ -8762,11 +8762,12 @@ var StandaloneDeletionJournal = class {
8762
8762
  // packages/cli/src/serve/conversations/standalone-session-service.ts
8763
8763
  var debugLogger2 = createDebugLogger("STANDALONE_SESSION_SERVICE");
8764
8764
  var StandaloneSessionServiceError = class extends Error {
8765
- constructor(code, sessionId, message, retryable = false) {
8765
+ constructor(code, sessionId, message, retryable = false, capacity) {
8766
8766
  super(message);
8767
8767
  this.code = code;
8768
8768
  this.sessionId = sessionId;
8769
8769
  this.retryable = retryable;
8770
+ this.capacity = capacity;
8770
8771
  }
8771
8772
  static {
8772
8773
  __name(this, "StandaloneSessionServiceError");
@@ -8875,6 +8876,8 @@ function mergeLiveStandaloneSummary(persisted, live) {
8875
8876
  clientCount: live.clientCount,
8876
8877
  hasActivePrompt: live.hasActivePrompt,
8877
8878
  ...live.activeWorkState !== void 0 ? { activeWorkState: live.activeWorkState } : {},
8879
+ backgroundTurn: live.backgroundTurn,
8880
+ hasRunningBackgroundTasks: live.hasRunningBackgroundTasks,
8878
8881
  ...live.isWaitingForPermission !== void 0 ? { isWaitingForPermission: live.isWaitingForPermission } : {},
8879
8882
  ...live.isWaitingForUserQuestion !== void 0 ? { isWaitingForUserQuestion: live.isWaitingForUserQuestion } : {},
8880
8883
  ...live.pendingInteractionCount !== void 0 ? { pendingInteractionCount: live.pendingInteractionCount } : {},
@@ -10415,6 +10418,7 @@ var StandaloneSessionService = class {
10415
10418
  } : {},
10416
10419
  ...options.clientId !== void 0 ? { clientId: options.clientId } : {},
10417
10420
  ...action === "load" && options.historyPageSize !== void 0 ? { historyPageSize: options.historyPageSize } : {},
10421
+ ...action === "load" && options.compactedReplayMode !== void 0 ? { compactedReplayMode: options.compactedReplayMode } : {},
10418
10422
  ...action === "load" && options.liveReplayMode !== void 0 ? { liveReplayMode: options.liveReplayMode } : {},
10419
10423
  ...options.hideInheritedHistory !== void 0 ? { hideInheritedHistory: options.hideInheritedHistory } : {},
10420
10424
  ...options.approvalMode !== void 0 ? { approvalMode: options.approvalMode } : {},
@@ -10678,7 +10682,25 @@ var StandaloneSessionService = class {
10678
10682
  } catch {
10679
10683
  this.beginTerminalQuarantine(runtime);
10680
10684
  }
10681
- throw serviceError("standalone_creation_rolled_back", sessionId, true);
10685
+ const outcome = serviceError(
10686
+ "standalone_creation_rolled_back",
10687
+ sessionId,
10688
+ true
10689
+ );
10690
+ if (error2.cause instanceof AcpChildCapacityExceededError) {
10691
+ throw new StandaloneSessionServiceError(
10692
+ outcome.code,
10693
+ sessionId,
10694
+ outcome.message,
10695
+ outcome.retryable,
10696
+ {
10697
+ code: error2.cause.code,
10698
+ maxConcurrentChildren: error2.cause.maxConcurrentChildren,
10699
+ committedAcpChildren: error2.cause.committedAcpChildren
10700
+ }
10701
+ );
10702
+ }
10703
+ throw outcome;
10682
10704
  }
10683
10705
  this.beginTerminalQuarantine(runtime);
10684
10706
  }
@@ -13573,6 +13595,19 @@ function pickSessionArtifactInput(params) {
13573
13595
  }
13574
13596
  __name(pickSessionArtifactInput, "pickSessionArtifactInput");
13575
13597
  function toRpcError(err) {
13598
+ const capacityError = err instanceof WorkspaceRuntimeInitializationError ? err.cause : err;
13599
+ if (capacityError instanceof AcpChildCapacityExceededError) {
13600
+ return {
13601
+ code: RPC.INTERNAL_ERROR,
13602
+ message: capacityError.message,
13603
+ data: {
13604
+ errorKind: capacityError.code,
13605
+ httpStatus: 503,
13606
+ maxConcurrentChildren: capacityError.maxConcurrentChildren,
13607
+ committedAcpChildren: capacityError.committedAcpChildren
13608
+ }
13609
+ };
13610
+ }
13576
13611
  if (err instanceof InvalidRequestedSessionIdError) {
13577
13612
  return {
13578
13613
  code: RPC.INVALID_PARAMS,
@@ -13613,7 +13648,7 @@ function toRpcError(err) {
13613
13648
  };
13614
13649
  }
13615
13650
  if (err instanceof StandaloneSessionServiceError) {
13616
- const httpStatus = err.code === "invalid_request" ? 400 : err.code === "standalone_session_not_found" ? 404 : err.code === "standalone_creation_outcome_unknown" || err.code === "standalone_creation_rolled_back" ? 500 : 409;
13651
+ const httpStatus = err.capacity ? 503 : err.code === "invalid_request" ? 400 : err.code === "standalone_session_not_found" ? 404 : err.code === "standalone_creation_outcome_unknown" || err.code === "standalone_creation_rolled_back" ? 500 : 409;
13617
13652
  return {
13618
13653
  code: httpStatus >= 500 || err.retryable ? RPC.INTERNAL_ERROR : RPC.INVALID_PARAMS,
13619
13654
  message: err.message,
@@ -13622,12 +13657,20 @@ function toRpcError(err) {
13622
13657
  errorKind: err.code,
13623
13658
  httpStatus,
13624
13659
  retryable: err.retryable,
13660
+ ...err.capacity ? { capacity: err.capacity } : {},
13625
13661
  ...err.sessionId !== void 0 ? { sessionId: err.sessionId } : {}
13626
13662
  }
13627
13663
  };
13628
13664
  }
13629
13665
  const writerError = sessionWriterRpcError(err);
13630
13666
  if (writerError) return writerError;
13667
+ if (isObject(err) && isObject(err["data"]) && err["data"]["errorKind"] === "workflow_invalid_params" && typeof err["message"] === "string") {
13668
+ return {
13669
+ code: RPC.INVALID_PARAMS,
13670
+ message: err["message"],
13671
+ data: { errorKind: "workflow_invalid_params", httpStatus: 400 }
13672
+ };
13673
+ }
13631
13674
  if (err instanceof AcpParamError || err instanceof InvalidCursorError) {
13632
13675
  return { code: RPC.INVALID_PARAMS, message: err.message };
13633
13676
  }
@@ -14898,6 +14941,8 @@ var AcpDispatcher = class {
14898
14941
  clientCount: s.clientCount,
14899
14942
  hasActivePrompt: s.hasActivePrompt,
14900
14943
  ...s.activeWorkState !== void 0 ? { activeWorkState: s.activeWorkState } : {},
14944
+ hasRunningBackgroundTasks: s.hasRunningBackgroundTasks,
14945
+ ...s.backgroundTurn ? { backgroundTurn: s.backgroundTurn } : {},
14901
14946
  isArchived: s.isArchived === true,
14902
14947
  ...s.isPinned !== void 0 ? { isPinned: s.isPinned } : {},
14903
14948
  ...s.pinnedAt !== void 0 ? { pinnedAt: s.pinnedAt } : {},
@@ -16183,13 +16228,13 @@ var AcpDispatcher = class {
16183
16228
  return;
16184
16229
  }
16185
16230
  const action = params["action"];
16186
- if (action !== "pause" && action !== "resume" && action !== "retry" && action !== "rerun" && action !== "delete-history" && action !== "run-saved") {
16231
+ if (action !== "pause" && action !== "resume" && action !== "retry" && action !== "rerun" && action !== "delete-history" && action !== "run-saved" && action !== "run-script") {
16187
16232
  if (id !== void 0) {
16188
16233
  conn.sendConn(
16189
16234
  error(
16190
16235
  id,
16191
16236
  RPC.INVALID_PARAMS,
16192
- '`action` must be "pause", "resume", "retry", "rerun", "delete-history", or "run-saved"'
16237
+ '`action` must be "pause", "resume", "retry", "rerun", "delete-history", "run-saved", or "run-script"'
16193
16238
  )
16194
16239
  );
16195
16240
  }
@@ -16203,7 +16248,8 @@ var AcpDispatcher = class {
16203
16248
  sessionId,
16204
16249
  taskId,
16205
16250
  action,
16206
- this.sessionCtx(conn, sessionId, loopback)
16251
+ this.sessionCtx(conn, sessionId, loopback),
16252
+ readServeWorkflowActionInput(params)
16207
16253
  );
16208
16254
  this.replyConn(conn, id, result);
16209
16255
  });
@@ -17816,7 +17862,9 @@ var AcpDispatcher = class {
17816
17862
  sessionId,
17817
17863
  // SECURITY NOTE: `params.sessionId` already equals the routing
17818
17864
  // `sessionId` (both from the same params), so there's no routing
17819
- // divergence today. If the bridge ever trusts an additional
17865
+ // divergence today. eventDetailMode is an intentional daemon extension:
17866
+ // like REST prompt, it controls this turn's shared retention/delivery.
17867
+ // If the bridge ever trusts an additional privileged
17820
17868
  // `sendPrompt` field by name (e.g. a priority/temperature override),
17821
17869
  // force-stamp it here like the REST surface does (`{ ...body,
17822
17870
  // sessionId, prompt }`) so it can't become client-controlled.
@@ -22983,7 +23031,9 @@ function registerDaemonStatusRoutes(app, deps) {
22983
23031
  getPerfSnapshot: deps.getPerfSnapshot,
22984
23032
  getMetricsSeries: deps.getMetricsSeries,
22985
23033
  getTotalSessionAdmissionSnapshot: deps.getTotalSessionAdmissionSnapshot,
22986
- getChildHeapPolicySnapshot: deps.getChildHeapPolicySnapshot
23034
+ getChildHeapPolicySnapshot: deps.getChildHeapPolicySnapshot,
23035
+ getCommittedAcpChildCount: deps.getCommittedAcpChildCount,
23036
+ childAdmissionEnforced: deps.childAdmissionEnforced
22987
23037
  })
22988
23038
  );
22989
23039
  } catch (err) {
@@ -29711,19 +29761,19 @@ function parseHistoryPageSize(body, res) {
29711
29761
  return value;
29712
29762
  }
29713
29763
  __name(parseHistoryPageSize, "parseHistoryPageSize");
29714
- function parseLiveReplayMode(body, res) {
29715
- const value = body["liveReplayMode"];
29764
+ function parseReplayMode(body, res, key) {
29765
+ const value = body[key];
29716
29766
  if (value === void 0) return void 0;
29717
29767
  if (value !== "full" && value !== "summary") {
29718
29768
  res.status(400).json({
29719
- error: "`liveReplayMode` must be `full` or `summary`",
29720
- code: "invalid_live_replay_mode"
29769
+ error: `\`${key}\` must be \`full\` or \`summary\``,
29770
+ code: key === "liveReplayMode" ? "invalid_live_replay_mode" : key === "compactedReplayMode" ? "invalid_compacted_replay_mode" : "invalid_event_detail_mode"
29721
29771
  });
29722
29772
  return null;
29723
29773
  }
29724
29774
  return value;
29725
29775
  }
29726
- __name(parseLiveReplayMode, "parseLiveReplayMode");
29776
+ __name(parseReplayMode, "parseReplayMode");
29727
29777
  function workspaceTranscriptCursorExceedsLimit(cursor, maxBytes = WORKSPACE_TRANSCRIPT_CURSOR_MAX_BYTES) {
29728
29778
  return Buffer.byteLength(cursor) > maxBytes;
29729
29779
  }
@@ -31894,8 +31944,14 @@ function registerSessionRoutes(app, deps) {
31894
31944
  if (approvalMode === null) return;
31895
31945
  const historyPageSize = action === "load" ? parseHistoryPageSize(body ?? {}, res) : void 0;
31896
31946
  if (historyPageSize === null) return;
31897
- const liveReplayMode = parseLiveReplayMode(body ?? {}, res);
31947
+ const liveReplayMode = parseReplayMode(body ?? {}, res, "liveReplayMode");
31898
31948
  if (liveReplayMode === null) return;
31949
+ const compactedReplayMode = parseReplayMode(
31950
+ body ?? {},
31951
+ res,
31952
+ "compactedReplayMode"
31953
+ );
31954
+ if (compactedReplayMode === null) return;
31899
31955
  const restoreSource = parseRequestedSessionSource(body, res);
31900
31956
  if (restoreSource === null) return;
31901
31957
  const clientId = parseClientIdHeader(req, res);
@@ -31931,6 +31987,7 @@ function registerSessionRoutes(app, deps) {
31931
31987
  ...clientId !== void 0 ? { clientId } : {},
31932
31988
  ...historyPageSize !== void 0 ? { historyPageSize } : {},
31933
31989
  ...liveReplayMode !== void 0 ? { liveReplayMode } : {},
31990
+ ...compactedReplayMode !== void 0 ? { compactedReplayMode } : {},
31934
31991
  ...approvalMode !== void 0 ? { approvalMode } : {}
31935
31992
  }
31936
31993
  );
@@ -32111,6 +32168,7 @@ function registerSessionRoutes(app, deps) {
32111
32168
  historyReplay: "response",
32112
32169
  ...historyPageSize !== void 0 ? { historyPageSize } : {},
32113
32170
  ...liveReplayMode !== void 0 ? { liveReplayMode } : {},
32171
+ ...compactedReplayMode !== void 0 ? { compactedReplayMode } : {},
32114
32172
  ...clientId !== void 0 ? { clientId } : {},
32115
32173
  ...approvalMode !== void 0 ? { approvalMode } : {},
32116
32174
  ...restoreRequestMetadata
@@ -33276,6 +33334,12 @@ function registerSessionRoutes(app, deps) {
33276
33334
  const route = "GET /session/:id/transcript";
33277
33335
  const sessionId = requireSessionId(req, res);
33278
33336
  if (sessionId === null) return;
33337
+ const compactedReplayMode = parseReplayMode(
33338
+ req.query,
33339
+ res,
33340
+ "compactedReplayMode"
33341
+ );
33342
+ if (compactedReplayMode === null) return;
33279
33343
  const limit = parseTranscriptLimitQuery(req.query["limit"], res);
33280
33344
  if (limit === null) return;
33281
33345
  const cursor = parseTranscriptCursorQuery(req.query["cursor"], res);
@@ -33343,9 +33407,7 @@ function registerSessionRoutes(app, deps) {
33343
33407
  const serialized = serializeWorkspaceTranscriptResponse(
33344
33408
  {
33345
33409
  ...result,
33346
- events: (result.events ?? []).map(
33347
- (event) => redactSdkSurfaceEvent(event, workspaceTrusted)
33348
- )
33410
+ events: (compactedReplayMode === "summary" ? summarizeReplay(result.events ?? []) : result.events ?? []).map((event) => redactSdkSurfaceEvent(event, workspaceTrusted))
33349
33411
  },
33350
33412
  sessionId
33351
33413
  );
@@ -33366,6 +33428,12 @@ function registerSessionRoutes(app, deps) {
33366
33428
  });
33367
33429
  if (!qualifiedTarget) return;
33368
33430
  const preResolvedRuntime = qualifiedTarget.kind === "ordinary" ? qualifiedTarget.runtime : void 0;
33431
+ const compactedReplayMode = parseReplayMode(
33432
+ req.query,
33433
+ res,
33434
+ "compactedReplayMode"
33435
+ );
33436
+ if (compactedReplayMode === null) return;
33369
33437
  const limit = parseTranscriptLimitQuery(req.query["limit"], res);
33370
33438
  if (limit === null) return;
33371
33439
  const cursor = parseTranscriptCursorQuery(req.query["cursor"], res);
@@ -33526,7 +33594,7 @@ function registerSessionRoutes(app, deps) {
33526
33594
  );
33527
33595
  if (result === void 0) return;
33528
33596
  const serialized = serializeWorkspaceTranscriptResponse(
33529
- result,
33597
+ compactedReplayMode === "summary" ? { ...result, events: summarizeReplay(result.events) } : result,
33530
33598
  sessionId
33531
33599
  );
33532
33600
  res.status(200).set("Cache-Control", "no-store").type("application/json").send(serialized);
@@ -34127,10 +34195,11 @@ function registerSessionRoutes(app, deps) {
34127
34195
  });
34128
34196
  return;
34129
34197
  }
34130
- const action = safeBody(req)["action"];
34131
- if (action !== "pause" && action !== "resume" && action !== "retry" && action !== "rerun" && action !== "delete-history" && action !== "run-saved") {
34198
+ const body = safeBody(req);
34199
+ const action = body["action"];
34200
+ if (action !== "pause" && action !== "resume" && action !== "retry" && action !== "rerun" && action !== "delete-history" && action !== "run-saved" && action !== "run-script") {
34132
34201
  res.status(400).json({
34133
- error: '`action` must be "pause", "resume", "retry", "rerun", "delete-history", or "run-saved"'
34202
+ error: '`action` must be "pause", "resume", "retry", "rerun", "delete-history", "run-saved", or "run-script"'
34134
34203
  });
34135
34204
  return;
34136
34205
  }
@@ -34145,7 +34214,8 @@ function registerSessionRoutes(app, deps) {
34145
34214
  sessionId,
34146
34215
  taskId,
34147
34216
  action,
34148
- clientId !== void 0 ? { clientId } : void 0
34217
+ clientId !== void 0 ? { clientId } : void 0,
34218
+ readServeWorkflowActionInput(body)
34149
34219
  )
34150
34220
  );
34151
34221
  }
@@ -34354,6 +34424,8 @@ function registerSessionRoutes(app, deps) {
34354
34424
  async (req, res, sessionId, runtime, onPromptAdmitted) => {
34355
34425
  const ownerBridge = runtime.bridge;
34356
34426
  const body = safeBody(req);
34427
+ const eventDetailMode = parseReplayMode(body, res, "eventDetailMode");
34428
+ if (eventDetailMode === null) return;
34357
34429
  const prompt = body["prompt"];
34358
34430
  if (!Array.isArray(prompt) || prompt.length === 0) {
34359
34431
  res.status(400).json({
@@ -35779,6 +35851,8 @@ function registerSessionRoutes(app, deps) {
35779
35851
  clientCount: session.clientCount,
35780
35852
  hasActivePrompt: session.hasActivePrompt,
35781
35853
  ...session.activeWorkState !== void 0 ? { activeWorkState: session.activeWorkState } : {},
35854
+ hasRunningBackgroundTasks: session.hasRunningBackgroundTasks,
35855
+ ...session.backgroundTurn ? { backgroundTurn: session.backgroundTurn } : {},
35782
35856
  isWaitingForPermission: session.isWaitingForPermission ?? false,
35783
35857
  isWaitingForUserQuestion: session.isWaitingForUserQuestion ?? false,
35784
35858
  // Bridge-local activity watermark, absent until a running prompt in
@@ -35978,6 +36052,8 @@ function registerSessionRoutes(app, deps) {
35978
36052
  "POST /session/:id/mid-turn-message",
35979
36053
  (req, res, sessionId, runtime) => {
35980
36054
  const body = safeBody(req);
36055
+ const eventDetailMode = parseReplayMode(body, res, "eventDetailMode");
36056
+ if (eventDetailMode === null) return;
35981
36057
  const message = body["message"];
35982
36058
  const messageId = body["messageId"];
35983
36059
  const trimmed = typeof message === "string" ? message.trim() : "";
@@ -36035,6 +36111,7 @@ function registerSessionRoutes(app, deps) {
36035
36111
  typeof messageId === "string" ? messageId : void 0,
36036
36112
  {
36037
36113
  rejectIfIdle: true,
36114
+ ...eventDetailMode !== void 0 ? { eventDetailMode } : {},
36038
36115
  ...mediaBlocks ? { content: mediaBlocks } : {}
36039
36116
  }
36040
36117
  );
@@ -36931,6 +37008,7 @@ function parseRestoreOptions(req, res) {
36931
37008
  const body = requireExactBody(req, res, [
36932
37009
  "historyPageSize",
36933
37010
  "liveReplayMode",
37011
+ "compactedReplayMode",
36934
37012
  "hideInheritedHistory",
36935
37013
  "approvalMode"
36936
37014
  ]);
@@ -36950,6 +37028,14 @@ function parseRestoreOptions(req, res) {
36950
37028
  sendInvalidRequest(res, "`liveReplayMode` must be `full` or `summary`.");
36951
37029
  return void 0;
36952
37030
  }
37031
+ const compactedReplayMode = body["compactedReplayMode"];
37032
+ if (compactedReplayMode !== void 0 && compactedReplayMode !== "full" && compactedReplayMode !== "summary") {
37033
+ sendInvalidRequest(
37034
+ res,
37035
+ "`compactedReplayMode` must be `full` or `summary`."
37036
+ );
37037
+ return void 0;
37038
+ }
36953
37039
  const hideInheritedHistory = body["hideInheritedHistory"];
36954
37040
  if (hideInheritedHistory !== void 0 && typeof hideInheritedHistory !== "boolean") {
36955
37041
  sendInvalidRequest(res, "`hideInheritedHistory` must be a boolean.");
@@ -36964,6 +37050,7 @@ function parseRestoreOptions(req, res) {
36964
37050
  ...clientId !== void 0 ? { clientId } : {},
36965
37051
  ...historyPageSize !== void 0 ? { historyPageSize } : {},
36966
37052
  ...liveReplayMode !== void 0 ? { liveReplayMode } : {},
37053
+ ...compactedReplayMode !== void 0 ? { compactedReplayMode } : {},
36967
37054
  ...hideInheritedHistory !== void 0 ? { hideInheritedHistory } : {},
36968
37055
  ...approvalMode !== void 0 ? { approvalMode } : {}
36969
37056
  };
@@ -40092,14 +40179,15 @@ function sendBridgeError(res, err, ctx, daemonLog) {
40092
40179
  return;
40093
40180
  }
40094
40181
  if (err instanceof StandaloneSessionServiceError) {
40095
- const status = err.code === "invalid_request" ? 400 : err.code === "standalone_session_not_found" ? 404 : err.code === "standalone_creation_outcome_unknown" || err.code === "standalone_creation_rolled_back" || err.code === "standalone_session_operation_failed" || err.code === "transcript_deletion_failed" || err.code === "transcript_deletion_outcome_unknown" || err.code === "working_directory_recovery_failed" ? 500 : 409;
40182
+ const status = err.capacity ? 503 : err.code === "invalid_request" ? 400 : err.code === "standalone_session_not_found" ? 404 : err.code === "standalone_creation_outcome_unknown" || err.code === "standalone_creation_rolled_back" || err.code === "standalone_session_operation_failed" || err.code === "transcript_deletion_failed" || err.code === "transcript_deletion_outcome_unknown" || err.code === "working_directory_recovery_failed" ? 500 : 409;
40096
40183
  if (status === 500) recordExpectedBridgeError(err, ctx, daemonLog);
40097
- if (err.retryable) res.set("Retry-After", "5");
40184
+ if (err.retryable && !err.capacity) res.set("Retry-After", "5");
40098
40185
  res.status(status).json({
40099
40186
  error: err.message,
40100
40187
  code: err.code,
40101
40188
  errorKind: err.code,
40102
40189
  retryable: err.retryable,
40190
+ ...err.capacity ? { capacity: err.capacity } : {},
40103
40191
  ...err.sessionId !== void 0 ? { sessionId: err.sessionId } : {}
40104
40192
  });
40105
40193
  return;
@@ -40114,6 +40202,18 @@ function sendBridgeError(res, err, ctx, daemonLog) {
40114
40202
  });
40115
40203
  return;
40116
40204
  }
40205
+ const capacityError = err instanceof WorkspaceRuntimeInitializationError ? err.cause : err;
40206
+ if (capacityError instanceof AcpChildCapacityExceededError) {
40207
+ recordExpectedBridgeError(capacityError, ctx, daemonLog);
40208
+ res.status(503).json({
40209
+ error: capacityError.message,
40210
+ code: capacityError.code,
40211
+ errorKind: capacityError.code,
40212
+ maxConcurrentChildren: capacityError.maxConcurrentChildren,
40213
+ committedAcpChildren: capacityError.committedAcpChildren
40214
+ });
40215
+ return;
40216
+ }
40117
40217
  if (err instanceof WorkspaceRuntimeInitializationError) {
40118
40218
  reportBridgeError(err.cause ?? err, ctx, daemonLog);
40119
40219
  res.set("Retry-After", "5");
@@ -40519,6 +40619,13 @@ function sendBridgeError(res, err, ctx, daemonLog) {
40519
40619
  const data = err.data;
40520
40620
  if (data && typeof data === "object") {
40521
40621
  const kind = data.errorKind;
40622
+ if (kind === "workflow_invalid_params") {
40623
+ res.status(400).json({
40624
+ error: errorMessage(err),
40625
+ code: kind
40626
+ });
40627
+ return;
40628
+ }
40522
40629
  if (kind === "session_busy") {
40523
40630
  res.set("Retry-After", "5");
40524
40631
  res.status(409).json({
@@ -42612,6 +42719,25 @@ __name(registerWorkspaceQualifiedLifecycleRoutes, "registerWorkspaceQualifiedLif
42612
42719
 
42613
42720
  // packages/cli/src/serve/routes/workspace-management.ts
42614
42721
  init_esbuild_shims();
42722
+
42723
+ // packages/cli/src/serve/workspace-activity.ts
42724
+ init_esbuild_shims();
42725
+ function readWorkspaceActivity(runtime, controllerActivity = {
42726
+ pendingSessionStarts: 0,
42727
+ channelWorkers: 0,
42728
+ voiceSessions: 0
42729
+ }, acpActivity = { acpConnections: 0, memoryTasks: 0 }) {
42730
+ return {
42731
+ ...controllerActivity,
42732
+ ...acpActivity,
42733
+ sessions: runtime.bridge.sessionCount,
42734
+ activePrompts: runtime.bridge.activePromptCount,
42735
+ workspaceRuntime: getWorkspaceRuntimeCoordinatorIfSupported(runtime)?.hasActiveWork() === true ? 1 : 0
42736
+ };
42737
+ }
42738
+ __name(readWorkspaceActivity, "readWorkspaceActivity");
42739
+
42740
+ // packages/cli/src/serve/routes/workspace-management.ts
42615
42741
  import { readdir as readdir3, stat as stat2 } from "node:fs/promises";
42616
42742
  import { realpathSync as realpathSync3 } from "node:fs";
42617
42743
  import { basename as basename7, dirname as dirname9, isAbsolute as isAbsolute10, join as join11, resolve as resolve6, sep as sep4 } from "node:path";
@@ -43520,26 +43646,11 @@ function registerWorkspaceManagementRoutes(app, deps) {
43520
43646
  }
43521
43647
  }
43522
43648
  );
43523
- const workspaceActivity = /* @__PURE__ */ __name((runtime) => {
43524
- const controllerActivity = runtimeRemoval?.getActivity(runtime) ?? {
43525
- pendingSessionStarts: 0,
43526
- channelWorkers: 0,
43527
- voiceSessions: 0
43528
- };
43529
- const acpActivity = getAcpHandle?.()?.getWorkspaceActivity(
43530
- runtime.workspaceId
43531
- ) ?? { acpConnections: 0, memoryTasks: 0 };
43532
- return {
43533
- pendingSessionStarts: controllerActivity.pendingSessionStarts,
43534
- sessions: runtime.bridge.sessionCount,
43535
- activePrompts: runtime.bridge.activePromptCount,
43536
- acpConnections: acpActivity.acpConnections,
43537
- memoryTasks: acpActivity.memoryTasks,
43538
- channelWorkers: controllerActivity.channelWorkers,
43539
- voiceSessions: controllerActivity.voiceSessions,
43540
- workspaceRuntime: getWorkspaceRuntimeCoordinatorIfSupported(runtime)?.hasActiveWork() === true ? 1 : 0
43541
- };
43542
- }, "workspaceActivity");
43649
+ const workspaceActivity = /* @__PURE__ */ __name((runtime) => readWorkspaceActivity(
43650
+ runtime,
43651
+ runtimeRemoval?.getActivity(runtime),
43652
+ getAcpHandle?.()?.getWorkspaceActivity(runtime.workspaceId)
43653
+ ), "workspaceActivity");
43543
43654
  const isBusy = /* @__PURE__ */ __name((activity) => Object.values(activity).some((count) => count > 0), "isBusy");
43544
43655
  const resolveManagedRuntime = /* @__PURE__ */ __name((req, res) => {
43545
43656
  const selector = String(req.params["workspace"] ?? "");
@@ -52792,6 +52903,12 @@ function updateSource(update) {
52792
52903
  return typeof source === "string" ? source : void 0;
52793
52904
  }
52794
52905
  __name(updateSource, "updateSource");
52906
+ function isDiscreteMessageUpdate(update) {
52907
+ const meta = update["_meta"];
52908
+ if (!meta || typeof meta !== "object" || Array.isArray(meta)) return false;
52909
+ return meta["qwenDiscreteMessage"] === true;
52910
+ }
52911
+ __name(isDiscreteMessageUpdate, "isDiscreteMessageUpdate");
52795
52912
  function updateBackgroundTaskId(update) {
52796
52913
  const meta = update["_meta"];
52797
52914
  if (!meta || typeof meta !== "object" || Array.isArray(meta)) {
@@ -53882,6 +53999,7 @@ var LiveSessionCoordinator = class {
53882
53999
  const update = sessionUpdate(event);
53883
54000
  this.updateCoordinatorStatus(context, update);
53884
54001
  if (update?.["sessionUpdate"] === "agent_message_chunk") {
54002
+ if (isDiscreteMessageUpdate(update)) continue;
53885
54003
  const chunk = updateText(update);
53886
54004
  text = appendBounded(text, chunk);
53887
54005
  agentMessage = appendBounded(agentMessage, chunk);
@@ -54005,9 +54123,10 @@ var LiveSessionCoordinator = class {
54005
54123
  const text = updateText(update);
54006
54124
  announcement = announcement ? appendBounded(announcement, `
54007
54125
  ${text}`) : text;
54008
- response = "";
54009
- const taskId = updateBackgroundTaskId(update);
54010
- if (taskId !== void 0) backgroundTaskId = taskId;
54126
+ if (response === "") {
54127
+ const taskId = updateBackgroundTaskId(update);
54128
+ if (taskId !== void 0) backgroundTaskId = taskId;
54129
+ }
54011
54130
  } else if (source === "background_notification_response") {
54012
54131
  response = appendBounded(response, updateText(update));
54013
54132
  }
@@ -54722,6 +54841,17 @@ var LiveTaskService = class {
54722
54841
  )) {
54723
54842
  const reason = eventWakeReason(event);
54724
54843
  if (!reason) continue;
54844
+ if (event.type === "turn_complete" && event.data?.backgroundTurn) {
54845
+ let stillActive = false;
54846
+ try {
54847
+ stillActive = task.runtime.bridge.getSessionSummary(
54848
+ task.bridgeSessionId
54849
+ ).hasActivePrompt;
54850
+ } catch {
54851
+ stillActive = false;
54852
+ }
54853
+ if (stillActive) continue;
54854
+ }
54725
54855
  return {
54726
54856
  reason,
54727
54857
  threadId: target.threadId,
@@ -55481,6 +55611,39 @@ async function checkLegacyConversationRuntimeOwner(options) {
55481
55611
  }
55482
55612
  __name(checkLegacyConversationRuntimeOwner, "checkLegacyConversationRuntimeOwner");
55483
55613
 
55614
+ // packages/cli/src/serve/idle-acp-reclamation.ts
55615
+ init_esbuild_shims();
55616
+ function createIdleAcpReclaimer(options) {
55617
+ return async (requesterWorkspaceId, signal) => {
55618
+ const policy = options.policy.snapshot();
55619
+ const requester = options.registry.getEntryByWorkspaceId(requesterWorkspaceId);
55620
+ if (signal?.aborted || requester?.state === "active" && !requester.current?.runtime.trusted || policy.mode !== "admit" || options.processes.committedProcessCount < policy.maxConcurrentChildren) {
55621
+ return;
55622
+ }
55623
+ const eligible = /* @__PURE__ */ __name((runtime) => {
55624
+ const entry = options.registry.getEntryByWorkspaceId(runtime.workspaceId);
55625
+ if (entry?.state !== "active" || entry.current?.runtime !== runtime || entry.current.guard.closed || !runtime.trusted || runtime.workspaceId === requesterWorkspaceId || runtime.provenance !== void 0 && runtime.provenance !== "existing" || !options.ownsBridge(runtime.bridge) || !runtime.bridge.reclaimIdleChannel) {
55626
+ return false;
55627
+ }
55628
+ const activity = options.getActivity(runtime);
55629
+ return activity !== void 0 && Object.values(activity).every((count) => count === 0);
55630
+ }, "eligible");
55631
+ const candidates = [];
55632
+ for (const runtime of options.registry.listManaged()) {
55633
+ if (!eligible(runtime)) continue;
55634
+ const channel = runtime.bridge.getIdleChannelCandidate?.();
55635
+ if (channel) candidates.push({ runtime, channel });
55636
+ }
55637
+ candidates.sort(
55638
+ (a, b) => a.channel.lastUsedAt - b.channel.lastUsedAt || a.runtime.workspaceId.localeCompare(b.runtime.workspaceId)
55639
+ );
55640
+ const selected = candidates[0];
55641
+ if (!selected || signal?.aborted || !eligible(selected.runtime)) return;
55642
+ await selected.runtime.bridge.reclaimIdleChannel(selected.channel, signal);
55643
+ };
55644
+ }
55645
+ __name(createIdleAcpReclaimer, "createIdleAcpReclaimer");
55646
+
55484
55647
  // packages/cli/src/serve/server.ts
55485
55648
  var warnedDefaultTrust = false;
55486
55649
  function loadServeChannelWebhookConfigs(sources) {
@@ -55582,6 +55745,9 @@ function createLiveWorkspaceDelegate(getTarget) {
55582
55745
  }
55583
55746
  __name(createLiveWorkspaceDelegate, "createLiveWorkspaceDelegate");
55584
55747
  function createServeApp(opts, getPort = () => opts.port, deps = {}) {
55748
+ if (opts.childHeapMode === "admit" && deps.managedChildProcesses?.policy.snapshot().mode !== "admit") {
55749
+ throw new TypeError("ACP admission requires managed child process wiring.");
55750
+ }
55585
55751
  const daemonEnv = deps.daemonEnv ?? process.env;
55586
55752
  const daemonEnvAtBoot = Object.freeze({ ...daemonEnv });
55587
55753
  const maxRegisteredWorkspaces = resolveMaxRegisteredWorkspaces(
@@ -55802,6 +55968,7 @@ function createServeApp(opts, getPort = () => opts.port, deps = {}) {
55802
55968
  const statusProvider = deps.statusProvider ?? createDaemonStatusProvider(
55803
55969
  primaryEffectiveEnv ? { env: primaryEffectiveEnv } : {}
55804
55970
  );
55971
+ let reclaimIdleAcp;
55805
55972
  let defaultBridgeForAdmission;
55806
55973
  const totalSessionAdmission = !deps.bridge && !injectedWorkspaceRegistry ? createTotalSessionAdmissionController({
55807
55974
  maxTotalSessions: opts.maxTotalSessions,
@@ -55831,8 +55998,18 @@ function createServeApp(opts, getPort = () => opts.port, deps = {}) {
55831
55998
  sessionRestoreTimeoutMs,
55832
55999
  permissionResponseTimeoutMs: opts.permissionResponseTimeoutMs,
55833
56000
  ...opts.restoreAskUserQuestion === true ? { restoreAskUserQuestion: true } : {},
55834
- ...acpChildArgs ? {
56001
+ ...acpChildArgs || deps.managedChildProcesses ? {
55835
56002
  channelFactory: createSpawnChannelFactory({
56003
+ processRegistry: deps.managedChildProcesses?.registry,
56004
+ childHeapPolicy: deps.managedChildProcesses?.policy,
56005
+ ...deps.managedChildProcesses ? {
56006
+ reclaimIdleChild: /* @__PURE__ */ __name(async (signal) => {
56007
+ await reclaimIdleAcp?.(
56008
+ hashDaemonWorkspace(boundWorkspace),
56009
+ signal
56010
+ );
56011
+ }, "reclaimIdleChild")
56012
+ } : {},
55836
56013
  extraArgs: acpChildArgs
55837
56014
  })
55838
56015
  } : {},
@@ -56603,7 +56780,9 @@ function createServeApp(opts, getPort = () => opts.port, deps = {}) {
56603
56780
  getPerfSnapshot: deps.getPerfSnapshot,
56604
56781
  getMetricsSeries: deps.getMetricsSeries,
56605
56782
  getTotalSessionAdmissionSnapshot: deps.getTotalSessionAdmissionSnapshot ?? totalSessionAdmission?.snapshot,
56606
- getChildHeapPolicySnapshot: deps.getChildHeapPolicySnapshot
56783
+ getChildHeapPolicySnapshot: deps.managedChildProcesses ? () => deps.managedChildProcesses.policy.snapshot() : deps.getChildHeapPolicySnapshot,
56784
+ getCommittedAcpChildCount: deps.managedChildProcesses ? () => deps.managedChildProcesses.registry.committedProcessCount : void 0,
56785
+ childAdmissionEnforced: deps.managedChildProcesses?.policy.snapshot().mode === "admit"
56607
56786
  });
56608
56787
  if (conversationRuntimeManager) {
56609
56788
  app.use("/capabilities", (_req, _res, next) => {
@@ -57538,6 +57717,24 @@ function createServeApp(opts, getPort = () => opts.port, deps = {}) {
57538
57717
  if (acpHandleRef.current) {
57539
57718
  app.locals["acpHandle"] = acpHandleRef.current;
57540
57719
  }
57720
+ if (deps.managedChildProcesses) {
57721
+ reclaimIdleAcp = createIdleAcpReclaimer({
57722
+ registry: workspaceRegistry,
57723
+ processes: deps.managedChildProcesses.registry,
57724
+ policy: deps.managedChildProcesses.policy,
57725
+ ownsBridge: deps.managedChildProcesses.ownsBridge ?? ((candidate) => candidate === defaultBridgeForAdmission),
57726
+ getActivity: /* @__PURE__ */ __name((runtime) => {
57727
+ if (!deps.workspaceRuntimeRemoval || !acpHandleRef.current || !supportsWorkspaceRuntimeLifecycle(runtime.bridge))
57728
+ return void 0;
57729
+ return readWorkspaceActivity(
57730
+ runtime,
57731
+ deps.workspaceRuntimeRemoval.getActivity(runtime),
57732
+ acpHandleRef.current.getWorkspaceActivity(runtime.workspaceId)
57733
+ );
57734
+ }, "getActivity")
57735
+ });
57736
+ app.locals["reclaimIdleAcp"] = reclaimIdleAcp;
57737
+ }
57541
57738
  const localControlService = new LocalControlService({
57542
57739
  app,
57543
57740
  credentials,