@qwen-code/qwen-code 0.21.14 → 0.21.15

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 (318) hide show
  1. package/bundled/qc-helper/docs/features/channels/dingtalk.md +1 -1
  2. package/bundled/qc-helper/docs/features/code-review.md +20 -2
  3. package/bundled/qc-helper/docs/qwen-serve.md +1 -1
  4. package/bundled/review/SKILL.md +66 -36
  5. package/chunks/{MaxSizedBox-67IDQILY.js → MaxSizedBox-E7CUU3UN.js} +43 -43
  6. package/chunks/{StandaloneSessionPicker-G4QJIRMH.js → StandaloneSessionPicker-XYUB75AQ.js} +63 -63
  7. package/chunks/{acp-startup-profiler-HUYGO57H.js → acp-startup-profiler-DDVSJKJK.js} +2 -2
  8. package/chunks/{acpAgent-BS3YYO33.js → acpAgent-5QZS4VMN.js} +507 -176
  9. package/chunks/{agent-EHHEXKWN.js → agent-242BTA6Q.js} +40 -40
  10. package/chunks/{agent-headless-UT2ZF76T.js → agent-headless-4BF7W4TJ.js} +40 -40
  11. package/chunks/{anthropicContentGenerator-M7XRJMSK.js → anthropicContentGenerator-CU3G53RX.js} +7 -7
  12. package/chunks/{artifact-tool-GEXTOPVO.js → artifact-tool-LIUSI4XK.js} +3 -3
  13. package/chunks/{askUserQuestion-B33XRSB7.js → askUserQuestion-454X3UIV.js} +3 -3
  14. package/chunks/{bridge-WQ4IL2RF.js → bridge-MG4F5NOH.js} +46 -45
  15. package/chunks/{channel-management-service-X6LCQUAD.js → channel-management-service-KHPAWCX7.js} +1 -1
  16. package/chunks/{channel-settings-store-ZDFXY7VY.js → channel-settings-store-GQUCL2YM.js} +47 -47
  17. package/chunks/{channel-worker-group-TJ35JDPE.js → channel-worker-group-IN2UPYHP.js} +6 -5
  18. package/chunks/{channel-worker-manager-G5LKWGOG.js → channel-worker-manager-4CQPHVD4.js} +6 -5
  19. package/chunks/{channel-worker-supervisor-OEVWBHGT.js → channel-worker-supervisor-CPPSL7ZH.js} +4 -3
  20. package/chunks/{chunk-3EZLLVDF.js → chunk-263JC66E.js} +3 -3
  21. package/chunks/{chunk-OO4FKHLO.js → chunk-2GM44E7D.js} +10 -298
  22. package/chunks/{chunk-LSO6EL4Y.js → chunk-2MDUS4XE.js} +2 -2
  23. package/chunks/{chunk-WGHHA7ZH.js → chunk-3C55EUJX.js} +1 -1
  24. package/chunks/{chunk-47L5MLB5.js → chunk-3EAGKRLN.js} +5 -5
  25. package/chunks/{chunk-WPVUOVYX.js → chunk-3EQHT3IC.js} +2 -2
  26. package/chunks/{chunk-OEZCXK7Y.js → chunk-3JZ2AZC6.js} +4 -4
  27. package/chunks/{chunk-PCETXVVV.js → chunk-3X6KVX37.js} +1 -1
  28. package/chunks/{chunk-J63PKMYA.js → chunk-435GZDTF.js} +2 -2
  29. package/chunks/{chunk-I3N2Z25H.js → chunk-47VTGCYK.js} +3 -3
  30. package/chunks/{chunk-3PWNVF6N.js → chunk-4APB4SP2.js} +1 -1
  31. package/chunks/{chunk-MA2HEDVP.js → chunk-4CKU5K2R.js} +1 -1
  32. package/chunks/{chunk-OJB5FYVK.js → chunk-4IOBHNV2.js} +1 -1
  33. package/chunks/{chunk-MIPFDQAF.js → chunk-4W4BROUS.js} +1 -1
  34. package/chunks/{chunk-ZIGC3MUS.js → chunk-55P2ESI6.js} +1 -1
  35. package/chunks/{chunk-CHHABXPE.js → chunk-5AAW6E3C.js} +1 -1
  36. package/chunks/{chunk-J6YS7Z25.js → chunk-5I2U4PDY.js} +12 -12
  37. package/chunks/{chunk-NWNEANAT.js → chunk-5M7YKTYX.js} +6 -6
  38. package/chunks/{chunk-RXHBTKMG.js → chunk-5MA4E4EG.js} +3 -3
  39. package/chunks/{chunk-CEXU72GE.js → chunk-5NAJDTVP.js} +3 -3
  40. package/chunks/{chunk-U657UZJN.js → chunk-5WEMSDPR.js} +5 -5
  41. package/chunks/{chunk-73JUK3ZW.js → chunk-63AIQ2IZ.js} +96 -15
  42. package/chunks/{chunk-E5WQMF3K.js → chunk-67L6PVD6.js} +2 -2
  43. package/chunks/{chunk-CZK622ZK.js → chunk-6IFWBM24.js} +3 -3
  44. package/chunks/{chunk-CPHEPGAO.js → chunk-722JBVVW.js} +1 -1
  45. package/chunks/chunk-7NLDU6J2.js +367 -0
  46. package/chunks/{chunk-AKBOLMUF.js → chunk-7S22SX2L.js} +2 -2
  47. package/chunks/{chunk-SCZU65AI.js → chunk-7VRNXKKK.js} +8 -8
  48. package/chunks/{chunk-XUJNK7Y6.js → chunk-7WVB4FMG.js} +1 -1
  49. package/chunks/{chunk-55VKMB7X.js → chunk-A7MIUCUQ.js} +6 -6
  50. package/chunks/{chunk-NVRMCWTP.js → chunk-A7NBZBGQ.js} +3 -3
  51. package/chunks/{chunk-N6RSOOWJ.js → chunk-AAG7I5CR.js} +7 -7
  52. package/chunks/{chunk-EOPBFLA5.js → chunk-AKN26LMT.js} +3 -3
  53. package/chunks/{chunk-UC67T4SF.js → chunk-AQFWV4YF.js} +2 -1
  54. package/chunks/{chunk-DVR7XKO5.js → chunk-B5LEKTE7.js} +2 -2
  55. package/chunks/{chunk-V6WEMZPD.js → chunk-B72KNVKO.js} +3 -3
  56. package/chunks/{chunk-544KT7X4.js → chunk-BBMVUTXO.js} +1 -1
  57. package/chunks/{chunk-DHUPMYMC.js → chunk-BORX4PBQ.js} +12 -12
  58. package/chunks/{chunk-5IJSFWQO.js → chunk-BUZESYJT.js} +4 -4
  59. package/chunks/{chunk-Y4RVDOXV.js → chunk-DF7KFKCL.js} +4 -4
  60. package/chunks/{chunk-K2Y45XXS.js → chunk-DFOKBPH5.js} +108 -26
  61. package/chunks/{chunk-3SL2P3WX.js → chunk-DIHJXVT4.js} +1 -1
  62. package/chunks/{chunk-WAO53ZQF.js → chunk-DITDNF3D.js} +22 -2
  63. package/chunks/{chunk-2A6VQJYK.js → chunk-DK4HL3IB.js} +7 -7
  64. package/chunks/{chunk-6BJSYAML.js → chunk-DPXZUGDQ.js} +46 -21
  65. package/chunks/{chunk-MVHJZ3FZ.js → chunk-DZNQHKZZ.js} +2 -2
  66. package/chunks/{chunk-SNQZZ765.js → chunk-EB27VF5Z.js} +2 -2
  67. package/chunks/{chunk-KC4WMLZO.js → chunk-EXY6APEA.js} +81 -50
  68. package/chunks/{chunk-7VNHO4MN.js → chunk-F3FRTY4Q.js} +16 -7
  69. package/chunks/{chunk-FS5NGKWC.js → chunk-F5JZDC4O.js} +3 -3
  70. package/chunks/{chunk-6QFDQMQX.js → chunk-F7ZK5VMA.js} +1 -1
  71. package/chunks/{chunk-2B2BF7P7.js → chunk-FAIJ5UIU.js} +3 -3
  72. package/chunks/{chunk-G6KI5UOJ.js → chunk-FQ6G527Y.js} +3 -3
  73. package/chunks/{chunk-WSSH2BNO.js → chunk-FQZBD3PY.js} +1 -1
  74. package/chunks/{chunk-OVY67CYC.js → chunk-G32ESUUC.js} +1 -1
  75. package/chunks/{chunk-OBJYN4MX.js → chunk-G64PEZZ5.js} +2 -2
  76. package/chunks/{chunk-QRVHGEVY.js → chunk-GCWILQKA.js} +3 -3
  77. package/chunks/{chunk-QUGAUQGJ.js → chunk-GX2THELY.js} +1 -0
  78. package/chunks/{chunk-L3T4V5GZ.js → chunk-GYVB4P5B.js} +721 -331
  79. package/chunks/{chunk-FAAUPSY2.js → chunk-HEMFCAHG.js} +1 -1
  80. package/chunks/{chunk-AZQ3DT76.js → chunk-HGGMEDDY.js} +2 -2
  81. package/chunks/{chunk-SG7ZP5PG.js → chunk-HHNSO2Y4.js} +4 -4
  82. package/chunks/{chunk-YHXQK4SR.js → chunk-HSCPOEBL.js} +3 -3
  83. package/chunks/{chunk-H3SHU2XU.js → chunk-I3AB5DOZ.js} +3 -3
  84. package/chunks/{chunk-SFJMFZT5.js → chunk-IBUXQJHH.js} +1 -1
  85. package/chunks/{chunk-FN6M5WUL.js → chunk-IFOR6I5C.js} +4 -4
  86. package/chunks/{chunk-PHN4R2ZV.js → chunk-IU2XWUSI.js} +1 -1
  87. package/chunks/{chunk-OJOP26ET.js → chunk-J2LZ5OCH.js} +3 -3
  88. package/chunks/{chunk-4ZMS3JCR.js → chunk-JBSW7JA6.js} +83 -4
  89. package/chunks/{chunk-QAVTWAHL.js → chunk-JIR6JDGE.js} +3 -3
  90. package/chunks/{chunk-UGK4K2N2.js → chunk-JS73NNWF.js} +8 -0
  91. package/chunks/{chunk-2M55OBEB.js → chunk-JV443R5X.js} +1 -1
  92. package/chunks/{chunk-QEHH23OM.js → chunk-K6GQS2WN.js} +1 -1
  93. package/chunks/{chunk-6LAPGPVA.js → chunk-KCUGOZPL.js} +2 -2
  94. package/chunks/{chunk-KV27IEHM.js → chunk-L5JHSPET.js} +1 -1
  95. package/chunks/{chunk-OFTPCOGR.js → chunk-L7RG5PVT.js} +2902 -1393
  96. package/chunks/{chunk-TSMPNGBC.js → chunk-LBQBFRFN.js} +2 -2
  97. package/chunks/chunk-LJZSMWOH.js +18 -0
  98. package/chunks/{chunk-IA2K2HJE.js → chunk-M53UJS6H.js} +2 -2
  99. package/chunks/{chunk-KBXKR5R2.js → chunk-M5AIO24H.js} +1 -1
  100. package/chunks/{chunk-ROIYNTHJ.js → chunk-MD7XDTW7.js} +3 -3
  101. package/chunks/{chunk-3PWCMXIR.js → chunk-MGEWDLRO.js} +1 -1
  102. package/chunks/{chunk-4ZS3BLER.js → chunk-NAGJPIPW.js} +22 -7
  103. package/chunks/{chunk-3YRVPHT3.js → chunk-NCTHX2Z3.js} +14 -14
  104. package/chunks/{chunk-YP5KH5Y7.js → chunk-ND7NOI4P.js} +1 -1
  105. package/chunks/{chunk-4W5U2TUT.js → chunk-NGY7B7VF.js} +1 -1
  106. package/chunks/{chunk-S7N3HUIB.js → chunk-NMSSH43P.js} +6 -6
  107. package/chunks/{chunk-UYDGFWIJ.js → chunk-NYN4RD3K.js} +66 -7
  108. package/chunks/{chunk-DGJ7O55J.js → chunk-O327G3QW.js} +3 -3
  109. package/chunks/{chunk-2C6HJMG3.js → chunk-O75QDGQF.js} +3 -3
  110. package/chunks/{chunk-SFTKAX4O.js → chunk-OFJ6OFIT.js} +1 -1
  111. package/chunks/{chunk-6HY6IF3Z.js → chunk-OUYRA764.js} +1 -1
  112. package/chunks/{chunk-OEYAK5O6.js → chunk-OVS33JJM.js} +5 -5
  113. package/chunks/{chunk-VFP5YOHJ.js → chunk-PRIX4D6T.js} +6 -6
  114. package/chunks/{chunk-H4A72DE5.js → chunk-PTMVPFCZ.js} +1 -1
  115. package/chunks/{chunk-W7EYJGN7.js → chunk-PWQPWISR.js} +8 -8
  116. package/chunks/{chunk-QFJ5JHQR.js → chunk-PXOIRYE5.js} +1 -1
  117. package/chunks/{chunk-4SR45OM4.js → chunk-Q5QDZXKL.js} +1 -1
  118. package/chunks/{chunk-YECDICIO.js → chunk-Q6ETBOWF.js} +1 -1
  119. package/chunks/{chunk-WP4WIUOJ.js → chunk-QQUVPMMZ.js} +2 -2
  120. package/chunks/{chunk-C3T6M24E.js → chunk-RLYXWNS3.js} +3 -3
  121. package/chunks/{chunk-XT4RKHVE.js → chunk-RZ4PE3ER.js} +512 -24
  122. package/chunks/{chunk-6RDZLBSJ.js → chunk-SGKUVDBX.js} +80 -44
  123. package/chunks/{chunk-YZHRN3CF.js → chunk-SWOKDPS5.js} +2 -2
  124. package/chunks/{chunk-SLILKYV2.js → chunk-T2LUUKRI.js} +3 -3
  125. package/chunks/{chunk-5CVO7YES.js → chunk-U4GL4WDY.js} +1 -1
  126. package/chunks/{chunk-QEJZUXSK.js → chunk-U53XZHAE.js} +1 -1
  127. package/chunks/{chunk-XYRBK56E.js → chunk-U7U3CX4K.js} +3353 -1306
  128. package/chunks/{chunk-HIBNSEJE.js → chunk-UDG5EZJI.js} +0 -2
  129. package/chunks/{chunk-BQWNIPTE.js → chunk-V4UBYT3Y.js} +1 -1
  130. package/chunks/{chunk-XITLNXLX.js → chunk-VWS7DWY6.js} +3 -3
  131. package/chunks/{chunk-PT4I7NBA.js → chunk-VX7TFATF.js} +1 -1
  132. package/chunks/{chunk-VTOLYFWM.js → chunk-W3M6P3UR.js} +2 -2
  133. package/chunks/{chunk-CH5OFRV7.js → chunk-W4MLKRZD.js} +3 -3
  134. package/chunks/chunk-W5YD3QRT.js +367 -0
  135. package/chunks/{chunk-5IYS4WWR.js → chunk-WAPL2PHU.js} +1 -1
  136. package/chunks/{chunk-NRPXRNN4.js → chunk-WXFFCRKG.js} +1 -1
  137. package/chunks/{chunk-E3DYKPYZ.js → chunk-X7EQHW5L.js} +3 -3
  138. package/chunks/{chunk-BUQDLC2G.js → chunk-XFRYCCVC.js} +3 -3
  139. package/chunks/{chunk-DRAONPUW.js → chunk-XZ3J6E5Z.js} +2 -2
  140. package/chunks/{chunk-P3AA6S7O.js → chunk-Y7JGWFTK.js} +1 -1
  141. package/chunks/{chunk-SXCOEJO4.js → chunk-YLFFVY3G.js} +1 -1
  142. package/chunks/{chunk-YZOSNW4R.js → chunk-YO7PNVBJ.js} +1 -1
  143. package/chunks/{chunk-MDIGJH5X.js → chunk-ZL3HKVEQ.js} +4 -4
  144. package/chunks/{chunk-Y7QY6DKW.js → chunk-ZTLSYXFY.js} +4 -4
  145. package/chunks/{chunk-RWDNJBWN.js → chunk-ZUISK67X.js} +2 -2
  146. package/chunks/{chunk-PJSD2FOR.js → chunk-ZVJ5R5LM.js} +33 -33
  147. package/chunks/{chunk-XLLKYULU.js → chunk-ZWWU6KNS.js} +2 -2
  148. package/chunks/{computer-use-YORZJQE5.js → computer-use-34X5XJMV.js} +40 -40
  149. package/chunks/{config-utils-NJQA5YLJ.js → config-utils-XJTGZVY3.js} +2 -2
  150. package/chunks/{contextCommand-PACHGIF4.js → contextCommand-Q54VMGPA.js} +42 -42
  151. package/chunks/{core-runtime-6HD5DSPX.js → core-runtime-TIWTFHOR.js} +45 -44
  152. package/chunks/{create-sub-session-IQFIPUQA.js → create-sub-session-DPEBT657.js} +40 -40
  153. package/chunks/{create-sub-session-KRQULJE6.js → create-sub-session-TCKWBXEM.js} +6 -4
  154. package/chunks/{cron-create-NFRZEOQX.js → cron-create-PUCRMWQ6.js} +5 -5
  155. package/chunks/{cron-delete-GFVSVO7C.js → cron-delete-EOQR5CXU.js} +5 -5
  156. package/chunks/{cron-list-NRW34CLU.js → cron-list-7O22SQBF.js} +5 -5
  157. package/chunks/{daemon-XH76IXOC.js → daemon-JE2UIWSY.js} +304 -160
  158. package/chunks/{daemon-git-worktree-guard-6P27GKSU.js → daemon-git-worktree-guard-XSZ3362V.js} +40 -40
  159. package/chunks/daemon-status-provider-JBEST4SF.js +104 -0
  160. package/chunks/{daemon-trust-policy-5QJHAS3N.js → daemon-trust-policy-S6LBG4WN.js} +46 -46
  161. package/chunks/{daemon-trust-policy-monitor-JA2WZRZ3.js → daemon-trust-policy-monitor-NFO3OIBN.js} +46 -46
  162. package/chunks/{deferred-core-runtime-R2VWOVG3.js → deferred-core-runtime-Z2TLD2L7.js} +40 -40
  163. package/chunks/{display-image-ON3EYFRD.js → display-image-6FCICTXS.js} +5 -5
  164. package/chunks/{dist-IYYN3RUT.js → dist-IELOWDOT.js} +81 -17
  165. package/chunks/{earlyInputCapture-PQEEOFKJ.js → earlyInputCapture-KCZDAQWY.js} +41 -41
  166. package/chunks/{edit-RASZHTU2.js → edit-3UADXGNC.js} +41 -41
  167. package/chunks/{enter-worktree-CH5OMHJE.js → enter-worktree-J66YDAJE.js} +40 -40
  168. package/chunks/{enterPlanMode-AQKR3CAH.js → enterPlanMode-YUZUKY5F.js} +40 -40
  169. package/chunks/{environment-7QRYIEBA.js → environment-6IEK2353.js} +42 -42
  170. package/chunks/{errors-P2LL5452.js → errors-RVLRX7XI.js} +42 -42
  171. package/chunks/{exit-worktree-WUDL26CY.js → exit-worktree-SNMPATZE.js} +40 -40
  172. package/chunks/{exitPlanMode-JM75SAUI.js → exitPlanMode-DP4TURUC.js} +40 -40
  173. package/chunks/{fast-path-KVNSOHVA.js → fast-path-5CC6RKES.js} +2 -2
  174. package/chunks/{gemini-ADMD2EOS.js → gemini-F64ZP4SG.js} +83 -82
  175. package/chunks/{geminiContentGenerator-CS3M7SOS.js → geminiContentGenerator-KAFSMFA6.js} +7 -7
  176. package/chunks/{getMachineId-bsd-FG7IUY6U.js → getMachineId-bsd-LSY4WMOF.js} +1 -1
  177. package/chunks/{getMachineId-darwin-GLCJI2RA.js → getMachineId-darwin-JOFR4UIT.js} +1 -1
  178. package/chunks/{getMachineId-linux-O6OPPAKO.js → getMachineId-linux-QEDBS6GI.js} +1 -1
  179. package/chunks/{getMachineId-unsupported-S6CKYVGC.js → getMachineId-unsupported-IPZ3YRKP.js} +1 -1
  180. package/chunks/{getMachineId-win-X5SRNEH7.js → getMachineId-win-TJ2OZ7AA.js} +1 -1
  181. package/chunks/{glob-WIJOGYVV.js → glob-OE27ZGK4.js} +40 -40
  182. package/chunks/{goal-tools-K5OHOJ6B.js → goal-tools-YIADM4RZ.js} +5 -5
  183. package/chunks/{grep-CIFRQBR7.js → grep-VBV6BWSP.js} +40 -40
  184. package/chunks/{handleAutoUpdate-KJ4SN7DM.js → handleAutoUpdate-YDMS57ZN.js} +46 -44
  185. package/chunks/{i18n-36SZUO4C.js → i18n-JIW77MSO.js} +41 -41
  186. package/chunks/{image-gen-R4B5VUYB.js → image-gen-L4A2ISEH.js} +11 -11
  187. package/chunks/{initializer-CW5YCAOL.js → initializer-F7I7QDHK.js} +47 -47
  188. package/chunks/{installationInfo-NMQIOUGY.js → installationInfo-KOUBU7MH.js} +43 -41
  189. package/chunks/{keychain-token-storage-3XFJ5ZB2.js → keychain-token-storage-7SL4ZWQQ.js} +3 -3
  190. package/chunks/{list-HHGT3S4P.js → list-AJ5BRB7C.js} +49 -49
  191. package/chunks/{list-agents-OSVDFI6S.js → list-agents-XO4EONWC.js} +6 -6
  192. package/chunks/{loadedSettingsAdapter-SJ2MJF35.js → loadedSettingsAdapter-X7FC5332.js} +46 -46
  193. package/chunks/{loggingContentGenerator-GR2QQ2C5.js → loggingContentGenerator-5G4ZR5D5.js} +22 -22
  194. package/chunks/{loop-wakeup-HWVUU5CF.js → loop-wakeup-HWSTFUTQ.js} +6 -6
  195. package/chunks/{ls-D3HUFHDP.js → ls-52HUW4B6.js} +5 -5
  196. package/chunks/{lsp-3QDDJTCS.js → lsp-VJESYEC6.js} +3 -3
  197. package/chunks/{managed-npm-update-ADQJHKTO.js → managed-npm-update-ZR2T2ST3.js} +41 -41
  198. package/chunks/{mcp-QW3OTL5W.js → mcp-TZNHG7CF.js} +46 -46
  199. package/chunks/{monitor-RJKPVERH.js → monitor-TN6Z4SXF.js} +40 -40
  200. package/chunks/{nonInteractiveCli-MROMHSTL.js → nonInteractiveCli-I7K6KH5U.js} +81 -80
  201. package/chunks/{notebook-edit-2ENWDBZO.js → notebook-edit-77V2IP3Y.js} +40 -40
  202. package/chunks/{openaiContentGenerator-Z3GPWJU4.js → openaiContentGenerator-2S2UT4RR.js} +25 -26
  203. package/chunks/{pidfile-5G42YSTP.js → pidfile-WDSDXBY3.js} +41 -41
  204. package/chunks/{processUtils-ZDMXYKQY.js → processUtils-JOJNZOW4.js} +2 -2
  205. package/chunks/prompt-terminal-ledger-RW62JIPP.js +93 -0
  206. package/chunks/{qwenContentGenerator-NLEMBZVU.js → qwenContentGenerator-G3H2TCXF.js} +45 -45
  207. package/chunks/{qwenOAuth2-EBV52DWJ.js → qwenOAuth2-UI2OC2RN.js} +10 -10
  208. package/chunks/{read-file-5BYIF53O.js → read-file-DI64TNOE.js} +13 -14
  209. package/chunks/{read-mcp-resource-XD54ZQMC.js → read-mcp-resource-6VFF47Z3.js} +3 -3
  210. package/chunks/{record-artifact-GLU3UWBV.js → record-artifact-TJTN2GBV.js} +5 -5
  211. package/chunks/{resumeHistoryUtils-AFTBRS3G.js → resumeHistoryUtils-3FIDQ6YQ.js} +46 -46
  212. package/chunks/{ripGrep-NN7AOLQY.js → ripGrep-EUTGRCN3.js} +40 -40
  213. package/chunks/{run-qwen-serve-UR3DYDAF.js → run-qwen-serve-SQBF7QZM.js} +505 -161
  214. package/chunks/{runtime-PR5RKGNH.js → runtime-7QGB6SY4.js} +49 -49
  215. package/chunks/{scheduler-GPMLVKJM.js → scheduler-V6AZCQVU.js} +42 -42
  216. package/chunks/{sdk-exporters-grpc-54L4LS5L.js → sdk-exporters-grpc-P3LA24AV.js} +3 -3
  217. package/chunks/{sdk-exporters-http-NC746HLT.js → sdk-exporters-http-K3LH2SD7.js} +9 -11
  218. package/chunks/{sdk-impl-YVL7BP6Y.js → sdk-impl-WCUNMLVX.js} +11 -6
  219. package/chunks/{send-message-TNBG5EVA.js → send-message-NUK5DTTI.js} +7 -7
  220. package/chunks/{serve-E7V2JVA2.js → serve-WVNAO2NA.js} +46 -46
  221. package/chunks/{server-YXB3DBN7.js → server-ZMZPHJEC.js} +992 -271
  222. package/chunks/{session-DZEAUT7S.js → session-JV74G6EZ.js} +82 -81
  223. package/chunks/{settings-ESZ3NWAP.js → settings-GBBVKBQ2.js} +45 -45
  224. package/chunks/{shell-JMSK5WIL.js → shell-JNNRUZPA.js} +40 -40
  225. package/chunks/{skill-5K5CSUJV.js → skill-JRGRCWD5.js} +18 -18
  226. package/chunks/{skill-settings-V64NIOTI.js → skill-settings-VEC7C44Z.js} +45 -45
  227. package/chunks/{spawnChannel-S63APBZZ.js → spawnChannel-TVKIFXXA.js} +42 -42
  228. package/chunks/{standalone-update-P42HDFXX.js → standalone-update-OSHF2CX3.js} +42 -42
  229. package/chunks/{startInteractiveUI-LFBLFHJ4.js → startInteractiveUI-2HTUHVQO.js} +310 -156
  230. package/chunks/{syntheticOutput-7GWFIDXT.js → syntheticOutput-GZV6O6UL.js} +4 -4
  231. package/chunks/{task-create-EILHJJB7.js → task-create-BXGKNND4.js} +11 -11
  232. package/chunks/{task-list-WGJR6YL5.js → task-list-4ZMIDYGD.js} +6 -6
  233. package/chunks/{task-stop-X37KYTKB.js → task-stop-WBO7LWTS.js} +3 -3
  234. package/chunks/{task-update-XZAHVXJ5.js → task-update-UFO3BI7O.js} +11 -11
  235. package/chunks/{team-create-EDNOUM2U.js → team-create-DTPGJ6RH.js} +40 -40
  236. package/chunks/{team-delete-UEP4QOOT.js → team-delete-OCFJS444.js} +6 -6
  237. package/chunks/{team-plan-approval-QRSNK2DX.js → team-plan-approval-4433RWHB.js} +40 -40
  238. package/chunks/{terminal-image-renderer-6J2NPL32.js → terminal-image-renderer-QZLIKIVA.js} +42 -42
  239. package/chunks/{theme-manager-WJMLRBXS.js → theme-manager-RM7C7Q3L.js} +41 -41
  240. package/chunks/{todoWrite-ATS62CAP.js → todoWrite-BGM5MCPY.js} +5 -5
  241. package/chunks/{tool-search-MZ6WU7DM.js → tool-search-4NQJASFC.js} +17 -18
  242. package/chunks/{total-session-admission-DQVW2LIP.js → total-session-admission-NZNCU5NU.js} +46 -45
  243. package/chunks/{trustedFolders-QMH25GOX.js → trustedFolders-FDJ2Q4ZK.js} +41 -41
  244. package/chunks/{update-relaunch-EG75LLW5.js → update-relaunch-HZMDPRTF.js} +5 -5
  245. package/chunks/{updateCheck-MTZIVGT5.js → updateCheck-ZB2CRVVG.js} +43 -43
  246. package/chunks/{useAutoAcceptIndicator-IGCW5EPO.js → useAutoAcceptIndicator-O3JI4KTR.js} +48 -48
  247. package/chunks/{validateNonInterActiveAuth-D5FPAB2C.js → validateNonInterActiveAuth-7Z4KG4N5.js} +78 -77
  248. package/chunks/{version-UOLDLLRB.js → version-RFVS6QDY.js} +1 -1
  249. package/chunks/{web-fetch-QKKW6CWH.js → web-fetch-RAN377BH.js} +17 -18
  250. package/chunks/{web-search-JYRBZMCW.js → web-search-XKS6ZPY7.js} +10 -10
  251. package/chunks/{workflow-SR7SEAU7.js → workflow-HF6G5XNX.js} +232 -73
  252. package/chunks/{workspace-providers-status-OXGV4EFF.js → workspace-providers-status-LNMP7NED.js} +49 -49
  253. package/chunks/{workspace-registration-store-V5EGKLBH.js → workspace-registration-store-QZ3P3ILN.js} +1 -1
  254. package/chunks/{workspace-registry-KJVIYTF5.js → workspace-registry-KWPGC2LG.js} +46 -45
  255. package/chunks/{workspace-service-6RLSGUB5.js → workspace-service-RWB4KMY3.js} +51 -51
  256. package/chunks/{workspace-skills-status-BHFEPDGH.js → workspace-skills-status-P3XXZY7C.js} +47 -47
  257. package/chunks/{workspace-trust-reconciler-DB5ERSUN.js → workspace-trust-reconciler-XU6WB2MF.js} +52 -51
  258. package/chunks/{write-file-IUP4GTZ4.js → write-file-V7Y6KUPR.js} +40 -40
  259. package/chunks/{zoom-image-SRBDTIVA.js → zoom-image-N4RSASH7.js} +13 -14
  260. package/cli.js +13 -13
  261. package/package.json +3 -3
  262. package/web-shell/assets/{arc-DItbX0DI.js → arc-CN-xeqBM.js} +1 -1
  263. package/web-shell/assets/{architectureDiagram-3BPJPVTR-CmnIlH8y.js → architectureDiagram-3BPJPVTR-XQJ6hBnv.js} +1 -1
  264. package/web-shell/assets/{blockDiagram-GPEHLZMM-pObnB9kw.js → blockDiagram-GPEHLZMM-n35AKogw.js} +1 -1
  265. package/web-shell/assets/{c4Diagram-AAUBKEIU-BNBmMS0Y.js → c4Diagram-AAUBKEIU-DXeDVokb.js} +1 -1
  266. package/web-shell/assets/channel-BdTBh3qf.js +1 -0
  267. package/web-shell/assets/{chunk-2J33WTMH-Dz4JBOO6.js → chunk-2J33WTMH-BYcmYjz_.js} +1 -1
  268. package/web-shell/assets/{chunk-4BX2VUAB-Cz2GnvAR.js → chunk-4BX2VUAB-w3UyeGtt.js} +1 -1
  269. package/web-shell/assets/{chunk-55IACEB6-CC6kOQYx.js → chunk-55IACEB6-Td3JbOH_.js} +1 -1
  270. package/web-shell/assets/{chunk-727SXJPM-Z4lY4gbh.js → chunk-727SXJPM-gC_NR7u6.js} +1 -1
  271. package/web-shell/assets/{chunk-AQP2D5EJ-Yz0hZr3D.js → chunk-AQP2D5EJ-aD7bI3c3.js} +1 -1
  272. package/web-shell/assets/{chunk-FMBD7UC4-nKmTWTv9.js → chunk-FMBD7UC4-sHMhD16X.js} +1 -1
  273. package/web-shell/assets/{chunk-ND2GUHAM-CjZz0f6Y.js → chunk-ND2GUHAM-DiV49BLl.js} +1 -1
  274. package/web-shell/assets/{chunk-QZHKN3VN-Bab3FpuS.js → chunk-QZHKN3VN-Dnoagqin.js} +1 -1
  275. package/web-shell/assets/classDiagram-4FO5ZUOK-qVxLMMuK.js +1 -0
  276. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-qVxLMMuK.js +1 -0
  277. package/web-shell/assets/{cose-bilkent-S5V4N54A-BuSAGFox.js → cose-bilkent-S5V4N54A-K6l_zsrZ.js} +1 -1
  278. package/web-shell/assets/{dagre-BM42HDAG-CRZXTg3g.js → dagre-BM42HDAG-Chh9hQ0a.js} +1 -1
  279. package/web-shell/assets/{diagram-2AECGRRQ-BFx1Ayrz.js → diagram-2AECGRRQ-Clrbd8SB.js} +1 -1
  280. package/web-shell/assets/{diagram-5GNKFQAL-B2hMZ3gS.js → diagram-5GNKFQAL-BkNExywD.js} +1 -1
  281. package/web-shell/assets/{diagram-KO2AKTUF-DKxAQLmc.js → diagram-KO2AKTUF-kTX14ngI.js} +1 -1
  282. package/web-shell/assets/{diagram-LMA3HP47-Bo1xGqVY.js → diagram-LMA3HP47-Ba1QOCJy.js} +1 -1
  283. package/web-shell/assets/{diagram-OG6HWLK6-B9NG78d-.js → diagram-OG6HWLK6-CtH5BVYm.js} +1 -1
  284. package/web-shell/assets/{erDiagram-TEJ5UH35-DltQKiqQ.js → erDiagram-TEJ5UH35-DCxSIC83.js} +1 -1
  285. package/web-shell/assets/{flowDiagram-I6XJVG4X-5xXGmS4I.js → flowDiagram-I6XJVG4X-C4rNAypQ.js} +1 -1
  286. package/web-shell/assets/{ganttDiagram-6RSMTGT7-bhGL5n0l.js → ganttDiagram-6RSMTGT7-s3P5tBwL.js} +1 -1
  287. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-ZYnz9hgh.js → gitGraphDiagram-PVQCEYII-C7Eg-1ok.js} +1 -1
  288. package/web-shell/assets/index-BXoIYIJg.css +5 -0
  289. package/web-shell/assets/{index-CBBeUArD.js → index-CszoC8cN.js} +1 -1
  290. package/web-shell/assets/index-Dxj7Naa0.js +1788 -0
  291. package/web-shell/assets/{infoDiagram-5YYISTIA-Cg-jamQf.js → infoDiagram-5YYISTIA-BDKsgMt6.js} +1 -1
  292. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-CcmvKlyq.js → ishikawaDiagram-YF4QCWOH-CkcSHbvL.js} +1 -1
  293. package/web-shell/assets/{journeyDiagram-JHISSGLW-BRsOQZp1.js → journeyDiagram-JHISSGLW-CDWt-t81.js} +1 -1
  294. package/web-shell/assets/{kanban-definition-UN3LZRKU-xW-dmEHK.js → kanban-definition-UN3LZRKU-FI2owcEa.js} +1 -1
  295. package/web-shell/assets/{linear-ClBfEZH2.js → linear-BQzLqkJi.js} +1 -1
  296. package/web-shell/assets/{mermaid.core-D65NDkzc.js → mermaid.core-CvV91DP1.js} +5 -5
  297. package/web-shell/assets/{mindmap-definition-RKZ34NQL-CyvFslYa.js → mindmap-definition-RKZ34NQL-Dx2kLUpN.js} +1 -1
  298. package/web-shell/assets/{pieDiagram-4H26LBE5-BwSefMyG.js → pieDiagram-4H26LBE5-CMXOmBrj.js} +1 -1
  299. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-GqBJspFS.js → quadrantDiagram-W4KKPZXB-Bziww7Co.js} +1 -1
  300. package/web-shell/assets/{requirementDiagram-4Y6WPE33-B137PlTJ.js → requirementDiagram-4Y6WPE33-DMOXAxzp.js} +1 -1
  301. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-maHkkt8i.js → sankeyDiagram-5OEKKPKP-B3y1cfVV.js} +1 -1
  302. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DJ1mRaG3.js → sequenceDiagram-3UESZ5HK-ChrV1jiM.js} +1 -1
  303. package/web-shell/assets/{stateDiagram-AJRCARHV-aRmP7Q4i.js → stateDiagram-AJRCARHV-CWuLzLFE.js} +1 -1
  304. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DEDPMLgq.js +1 -0
  305. package/web-shell/assets/{timeline-definition-PNZ67QCA-CIQ3BRPA.js → timeline-definition-PNZ67QCA-Cl6am_to.js} +1 -1
  306. package/web-shell/assets/{vennDiagram-CIIHVFJN-DR9VPd5h.js → vennDiagram-CIIHVFJN-OuocxGAu.js} +1 -1
  307. package/web-shell/assets/{wardley-L42UT6IY-ZcfIbT4D.js → wardley-L42UT6IY-DLYdvSJW.js} +1 -1
  308. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-D0jgPi4T.js → wardleyDiagram-YWT4CUSO-7a3DreXX.js} +1 -1
  309. package/web-shell/assets/{xychartDiagram-2RQKCTM6-BGWU4s5o.js → xychartDiagram-2RQKCTM6-CgfjUxW_.js} +1 -1
  310. package/web-shell/index.html +2 -2
  311. package/chunks/chunk-D34RDOLP.js +0 -529
  312. package/chunks/daemon-status-provider-SXS66ZIR.js +0 -103
  313. package/web-shell/assets/channel-hZnMfWA9.js +0 -1
  314. package/web-shell/assets/classDiagram-4FO5ZUOK-BRnxm8DX.js +0 -1
  315. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BRnxm8DX.js +0 -1
  316. package/web-shell/assets/index-CbgU-jUo.css +0 -5
  317. package/web-shell/assets/index-_nhzXqab.js +0 -1750
  318. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-Db39gvZ_.js +0 -1
@@ -6,7 +6,6 @@ import {
6
6
 
7
7
  // packages/acp-bridge/src/bridgeOptions.ts
8
8
  init_esbuild_shims();
9
- var MAX_SUB_SESSION_PROMPT_CHARS = 1e5;
10
9
  var MAX_SUB_SESSION_NAME_CHARS = 200;
11
10
  var MAX_LIVE_SCREEN_CONTEXT_TEXT_CHARS = 32e3;
12
11
  var LIVE_TASK_TOOL_NAMES = [
@@ -27,7 +26,6 @@ var CHANNEL_DELIVERY_ERROR_CODES = /* @__PURE__ */ new Set([
27
26
  ]);
28
27
 
29
28
  export {
30
- MAX_SUB_SESSION_PROMPT_CHARS,
31
29
  MAX_SUB_SESSION_NAME_CHARS,
32
30
  MAX_LIVE_SCREEN_CONTEXT_TEXT_CHARS,
33
31
  LIVE_TASK_TOOL_NAMES,
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  MissingCliEntryError
5
- } from "./chunk-UC67T4SF.js";
5
+ } from "./chunk-AQFWV4YF.js";
6
6
  import {
7
7
  redactLogCredentials
8
8
  } from "./chunk-M5GB774H.js";
@@ -3,16 +3,16 @@
3
3
  import {
4
4
  JsonFormatter,
5
5
  parseAndFormatApiError
6
- } from "./chunk-OFTPCOGR.js";
6
+ } from "./chunk-L7RG5PVT.js";
7
7
  import {
8
8
  FatalBudgetExceededError,
9
9
  FatalCancellationError,
10
10
  FatalTurnLimitedError,
11
11
  createDebugLogger
12
- } from "./chunk-BUQDLC2G.js";
12
+ } from "./chunk-XFRYCCVC.js";
13
13
  import {
14
14
  runExitCleanup
15
- } from "./chunk-3SL2P3WX.js";
15
+ } from "./chunk-DIHJXVT4.js";
16
16
  import {
17
17
  writeStderrLine
18
18
  } from "./chunk-KGJGEEVR.js";
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-S6LOFUVP.js";
6
6
  import {
7
7
  isInForkExecution
8
- } from "./chunk-SG7ZP5PG.js";
8
+ } from "./chunk-HHNSO2Y4.js";
9
9
  import {
10
10
  init_esbuild_shims
11
11
  } from "./chunk-5O2XNYP6.js";
@@ -5,10 +5,10 @@ import {
5
5
  } from "./chunk-5EJZE3FP.js";
6
6
  import {
7
7
  resolveBundleDir
8
- } from "./chunk-OFTPCOGR.js";
8
+ } from "./chunk-L7RG5PVT.js";
9
9
  import {
10
10
  Storage
11
- } from "./chunk-BUQDLC2G.js";
11
+ } from "./chunk-XFRYCCVC.js";
12
12
  import {
13
13
  writeStderrLine
14
14
  } from "./chunk-KGJGEEVR.js";
@@ -2,17 +2,17 @@
2
2
  "use strict";
3
3
  import {
4
4
  CLIENT_MCP_OVER_WS_CONFIG_FLAG
5
- } from "./chunk-WP4WIUOJ.js";
5
+ } from "./chunk-QQUVPMMZ.js";
6
6
  import {
7
7
  SessionNotFoundError
8
8
  } from "./chunk-624NHDGB.js";
9
9
  import {
10
10
  ChannelWorkerStartupError
11
- } from "./chunk-4W5U2TUT.js";
11
+ } from "./chunk-NGY7B7VF.js";
12
12
  import {
13
13
  ChannelDeliveryError,
14
14
  ChannelWebhookEnqueueError
15
- } from "./chunk-YP5KH5Y7.js";
15
+ } from "./chunk-ND7NOI4P.js";
16
16
  import {
17
17
  CHANNEL_LOOP_MCP_SERVER_NAME
18
18
  } from "./chunk-AW27A43Y.js";
@@ -0,0 +1,367 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ SessionService,
5
+ TURN_INTERRUPTION_HISTORY_TAIL_COUNT,
6
+ buildApiHistoryFromConversation,
7
+ detectTurnInterruption
8
+ } from "./chunk-L7RG5PVT.js";
9
+ import {
10
+ init_esbuild_shims
11
+ } from "./chunk-5O2XNYP6.js";
12
+ import {
13
+ __name
14
+ } from "./chunk-J2S4EL5Y.js";
15
+
16
+ // packages/cli/src/serve/prompt-terminal-ledger.ts
17
+ init_esbuild_shims();
18
+ import { closeSync as closeSync2, openSync as openSync2, readSync as readSync2, statSync as statSync2 } from "node:fs";
19
+
20
+ // packages/acp-bridge/dist/prompt-ledger.js
21
+ init_esbuild_shims();
22
+ import { appendFileSync, closeSync, mkdirSync, openSync, readFileSync, readSync, statSync } from "node:fs";
23
+ import * as path from "node:path";
24
+ function isPromptLedgerTerminalRecord(record) {
25
+ return "terminal" in record;
26
+ }
27
+ __name(isPromptLedgerTerminalRecord, "isPromptLedgerTerminalRecord");
28
+ function appendPromptLedgerRecord(filePath, record) {
29
+ mkdirSync(path.dirname(filePath), { recursive: true });
30
+ sealTornTailSync(filePath);
31
+ appendFileSync(filePath, `${JSON.stringify(record)}
32
+ `, {
33
+ encoding: "utf8",
34
+ mode: 384
35
+ });
36
+ }
37
+ __name(appendPromptLedgerRecord, "appendPromptLedgerRecord");
38
+ function sealTornTailSync(filePath) {
39
+ let stats;
40
+ try {
41
+ stats = statSync(filePath);
42
+ } catch (error) {
43
+ if (error.code === "ENOENT")
44
+ return;
45
+ throw error;
46
+ }
47
+ if (stats.size === 0)
48
+ return;
49
+ const fd = openSync(filePath, "r");
50
+ try {
51
+ const lastByte = Buffer.alloc(1);
52
+ const bytesRead = readSync(fd, lastByte, 0, 1, stats.size - 1);
53
+ if (bytesRead === 1 && lastByte[0] !== 10) {
54
+ appendFileSync(filePath, "\n", "utf8");
55
+ }
56
+ } finally {
57
+ closeSync(fd);
58
+ }
59
+ }
60
+ __name(sealTornTailSync, "sealTornTailSync");
61
+ function coercePromptLedgerRecord(value) {
62
+ if (typeof value !== "object" || value === null)
63
+ return void 0;
64
+ const record = value;
65
+ const promptId = record["promptId"];
66
+ const at = record["at"];
67
+ if (record["v"] !== 1 || typeof promptId !== "string")
68
+ return void 0;
69
+ if (typeof at !== "number" || !Number.isFinite(at))
70
+ return void 0;
71
+ if (record["state"] === "in_flight") {
72
+ const tailUuid = record["tailUuid"];
73
+ return {
74
+ v: 1,
75
+ promptId,
76
+ state: "in_flight",
77
+ ...typeof tailUuid === "string" && tailUuid.length > 0 ? { tailUuid } : {},
78
+ at
79
+ };
80
+ }
81
+ const terminal = record["terminal"];
82
+ if (terminal !== "completed" && terminal !== "cancelled" && terminal !== "error" && terminal !== "interrupted") {
83
+ return void 0;
84
+ }
85
+ const code = record["code"];
86
+ const stopReason = record["stopReason"];
87
+ return {
88
+ v: 1,
89
+ promptId,
90
+ terminal,
91
+ ...typeof code === "string" ? { code } : {},
92
+ ...typeof stopReason === "string" ? { stopReason } : {},
93
+ at
94
+ };
95
+ }
96
+ __name(coercePromptLedgerRecord, "coercePromptLedgerRecord");
97
+ function readPromptLedgerRecords(filePath, options) {
98
+ let contents;
99
+ let dropFirstLine = false;
100
+ try {
101
+ const tailBytes = options?.tailBytes;
102
+ if (tailBytes === void 0) {
103
+ contents = readFileSync(filePath, "utf8");
104
+ } else {
105
+ const size = statSync(filePath).size;
106
+ if (size <= tailBytes) {
107
+ contents = readFileSync(filePath, "utf8");
108
+ } else {
109
+ const fd = openSync(filePath, "r");
110
+ try {
111
+ const buffer = Buffer.alloc(tailBytes);
112
+ const bytesRead = readSync(fd, buffer, 0, tailBytes, size - tailBytes);
113
+ contents = buffer.subarray(0, bytesRead).toString("utf8");
114
+ dropFirstLine = true;
115
+ } finally {
116
+ closeSync(fd);
117
+ }
118
+ }
119
+ }
120
+ } catch (error) {
121
+ if (error.code === "ENOENT")
122
+ return [];
123
+ throw error;
124
+ }
125
+ const records = [];
126
+ const lines = contents.split("\n");
127
+ for (let i = dropFirstLine ? 1 : 0; i < lines.length; i++) {
128
+ const line = lines[i];
129
+ if (line === void 0 || line.length === 0)
130
+ continue;
131
+ let parsed;
132
+ try {
133
+ parsed = JSON.parse(line);
134
+ } catch {
135
+ continue;
136
+ }
137
+ const record = coercePromptLedgerRecord(parsed);
138
+ if (record !== void 0)
139
+ records.push(record);
140
+ }
141
+ return records;
142
+ }
143
+ __name(readPromptLedgerRecords, "readPromptLedgerRecords");
144
+ function danglingInFlightPromptIds(records) {
145
+ const latest = /* @__PURE__ */ new Map();
146
+ for (const record of records) {
147
+ latest.set(record.promptId, record);
148
+ }
149
+ const dangling = [];
150
+ for (const [promptId, record] of latest) {
151
+ if (!isPromptLedgerTerminalRecord(record))
152
+ dangling.push(promptId);
153
+ }
154
+ return dangling;
155
+ }
156
+ __name(danglingInFlightPromptIds, "danglingInFlightPromptIds");
157
+ var PROMPT_TERMINALS_RESPONSE_LIMIT = 64;
158
+ function recentPromptTerminalRecords(records) {
159
+ const terminals = records.filter(isPromptLedgerTerminalRecord);
160
+ return terminals.length <= PROMPT_TERMINALS_RESPONSE_LIMIT ? terminals : terminals.slice(-PROMPT_TERMINALS_RESPONSE_LIMIT);
161
+ }
162
+ __name(recentPromptTerminalRecords, "recentPromptTerminalRecords");
163
+
164
+ // packages/cli/src/serve/prompt-terminal-ledger.ts
165
+ function createPromptLedgerSink(workspaceCwd, sessionRuntimeBaseDir) {
166
+ const sessionService = new SessionService(workspaceCwd, {
167
+ runtimeBaseDir: sessionRuntimeBaseDir
168
+ });
169
+ return {
170
+ appendSync(sessionId, record) {
171
+ appendPromptLedgerRecord(
172
+ sessionService.getPromptLedgerPath(sessionId),
173
+ record
174
+ );
175
+ },
176
+ transcriptTailUuid(sessionId) {
177
+ return readTranscriptTailUuid(
178
+ sessionService.getSessionTranscriptPath(sessionId)
179
+ );
180
+ }
181
+ };
182
+ }
183
+ __name(createPromptLedgerSink, "createPromptLedgerSink");
184
+ var TRANSCRIPT_TAIL_BYTES = 64 * 1024;
185
+ function readTranscriptTailUuid(transcriptPath) {
186
+ let contents;
187
+ try {
188
+ const size = statSync2(transcriptPath).size;
189
+ if (size === 0) return void 0;
190
+ const windowBytes = Math.min(size, TRANSCRIPT_TAIL_BYTES);
191
+ const buffer = Buffer.alloc(windowBytes);
192
+ const fd = openSync2(transcriptPath, "r");
193
+ try {
194
+ readSync2(fd, buffer, 0, windowBytes, size - windowBytes);
195
+ } finally {
196
+ closeSync2(fd);
197
+ }
198
+ contents = buffer.toString("utf8");
199
+ } catch {
200
+ return void 0;
201
+ }
202
+ const lines = contents.split("\n");
203
+ for (let i = lines.length - 1; i >= 0; i--) {
204
+ const line = lines[i];
205
+ if (line === void 0 || line.length === 0) continue;
206
+ try {
207
+ const uuid = JSON.parse(line).uuid;
208
+ return typeof uuid === "string" && uuid.length > 0 ? uuid : void 0;
209
+ } catch {
210
+ return void 0;
211
+ }
212
+ }
213
+ return void 0;
214
+ }
215
+ __name(readTranscriptTailUuid, "readTranscriptTailUuid");
216
+ async function reconcileDanglingPromptTerminals(sessionService, sessionId) {
217
+ const ledgerPath = sessionService.getPromptLedgerPath(sessionId);
218
+ let records;
219
+ try {
220
+ records = readPromptLedgerRecords(ledgerPath);
221
+ } catch {
222
+ return;
223
+ }
224
+ const snapshotLength = records.length;
225
+ const dangling = danglingInFlightPromptIds(records);
226
+ if (dangling.length === 0) return;
227
+ if (dangling.length > 1) return;
228
+ const target = dangling[0];
229
+ if (target === void 0) return;
230
+ const settledPromptIds = new Set(
231
+ records.filter(isPromptLedgerTerminalRecord).map((r) => r.promptId)
232
+ );
233
+ let targetAdmission;
234
+ for (const record2 of records) {
235
+ if (!isPromptLedgerTerminalRecord(record2) && !settledPromptIds.has(record2.promptId)) {
236
+ targetAdmission = record2;
237
+ }
238
+ }
239
+ if (targetAdmission === void 0 || targetAdmission.promptId !== target) {
240
+ return;
241
+ }
242
+ let resumed;
243
+ try {
244
+ resumed = await sessionService.loadSession(sessionId);
245
+ } catch {
246
+ return;
247
+ }
248
+ if (resumed === void 0) return;
249
+ const messages = resumed.conversation.messages;
250
+ const admissionMarker = targetAdmission.tailUuid;
251
+ let markerIndex = -1;
252
+ if (admissionMarker !== void 0) {
253
+ markerIndex = messages.findIndex(
254
+ (record2) => record2.uuid === admissionMarker
255
+ );
256
+ let wroteAfterMarker = false;
257
+ for (let i = markerIndex + 1; i < messages.length; i++) {
258
+ const record2 = messages[i];
259
+ if (record2 === void 0 || record2.type === "system") continue;
260
+ if (!record2.message || record2.subtype === "realtime_message") continue;
261
+ wroteAfterMarker = true;
262
+ break;
263
+ }
264
+ if (markerIndex < 0 || !wroteAfterMarker) return;
265
+ }
266
+ let lastVisibleWriteMs = NaN;
267
+ let compressedAfterAdmission = false;
268
+ for (let idx = 0; idx < messages.length; idx++) {
269
+ const record2 = messages[idx];
270
+ const writeMs = Date.parse(record2.timestamp);
271
+ if (record2.type === "system") {
272
+ if (isCompressionResetRecord(record2)) {
273
+ const afterAdmission = admissionMarker !== void 0 ? idx > markerIndex : Number.isFinite(writeMs) && writeMs >= targetAdmission.at;
274
+ if (afterAdmission) compressedAfterAdmission = true;
275
+ }
276
+ continue;
277
+ }
278
+ if (!record2.message || record2.subtype === "realtime_message") continue;
279
+ if (Number.isFinite(writeMs)) lastVisibleWriteMs = writeMs;
280
+ }
281
+ let lastOtherTerminalAt = 0;
282
+ for (const record2 of records) {
283
+ if (isPromptLedgerTerminalRecord(record2) && record2.promptId !== target) {
284
+ if (record2.code === "prompt_deadline_exceeded") return;
285
+ lastOtherTerminalAt = Math.max(lastOtherTerminalAt, record2.at);
286
+ }
287
+ }
288
+ if (compressedAfterAdmission || !Number.isFinite(lastVisibleWriteMs) || lastVisibleWriteMs <= targetAdmission.at || lastVisibleWriteMs <= lastOtherTerminalAt) {
289
+ return;
290
+ }
291
+ const apiHistory = buildApiHistoryFromConversation(resumed.conversation);
292
+ const historyTail = apiHistory.slice(-TURN_INTERRUPTION_HISTORY_TAIL_COUNT);
293
+ const verdict = detectTurnInterruption(historyTail);
294
+ const interrupted = verdict.kind !== "none" || tailHoldsAnyFunctionCall(historyTail);
295
+ let refetch;
296
+ try {
297
+ refetch = readPromptLedgerRecords(ledgerPath);
298
+ } catch {
299
+ return;
300
+ }
301
+ if (refetch.length !== snapshotLength) return;
302
+ const record = interrupted ? {
303
+ v: 1,
304
+ promptId: target,
305
+ terminal: "interrupted",
306
+ code: "daemon_lost",
307
+ at: Date.now()
308
+ } : {
309
+ v: 1,
310
+ promptId: target,
311
+ terminal: "completed",
312
+ stopReason: "reconstructed_from_transcript",
313
+ at: Date.now()
314
+ };
315
+ try {
316
+ appendPromptLedgerRecord(ledgerPath, record);
317
+ } catch {
318
+ }
319
+ }
320
+ __name(reconcileDanglingPromptTerminals, "reconcileDanglingPromptTerminals");
321
+ function isCompressionResetRecord(record) {
322
+ if (record.type !== "system" || record.subtype !== "chat_compression") {
323
+ return false;
324
+ }
325
+ return Boolean(
326
+ record.systemPayload?.compressedHistory
327
+ );
328
+ }
329
+ __name(isCompressionResetRecord, "isCompressionResetRecord");
330
+ function tailHoldsAnyFunctionCall(history) {
331
+ const last = history[history.length - 1];
332
+ if (last?.role !== "model") return false;
333
+ return (last.parts ?? []).some((part) => part.functionCall !== void 0);
334
+ }
335
+ __name(tailHoldsAnyFunctionCall, "tailHoldsAnyFunctionCall");
336
+ var RECENT_TERMINALS_TAIL_BYTES = 256 * 1024;
337
+ function readRecentPromptTerminals(sessionService, sessionId) {
338
+ try {
339
+ const terminals = recentPromptTerminalRecords(
340
+ readPromptLedgerRecords(sessionService.getPromptLedgerPath(sessionId), {
341
+ tailBytes: RECENT_TERMINALS_TAIL_BYTES
342
+ })
343
+ );
344
+ return terminals.length > 0 ? terminals : void 0;
345
+ } catch {
346
+ return void 0;
347
+ }
348
+ }
349
+ __name(readRecentPromptTerminals, "readRecentPromptTerminals");
350
+ function withPromptTerminals(session, terminals) {
351
+ if (terminals === void 0 || terminals.length === 0) return session;
352
+ return { ...session, promptTerminals: [...terminals] };
353
+ }
354
+ __name(withPromptTerminals, "withPromptTerminals");
355
+
356
+ export {
357
+ createPromptLedgerSink,
358
+ readTranscriptTailUuid,
359
+ reconcileDanglingPromptTerminals,
360
+ readRecentPromptTerminals,
361
+ withPromptTerminals
362
+ };
363
+ /**
364
+ * @license
365
+ * Copyright 2026 Qwen Team
366
+ * SPDX-License-Identifier: Apache-2.0
367
+ */
@@ -234,7 +234,7 @@ function ensureBuiltins() {
234
234
  const labelled = [
235
235
  { name: "telegram", promise: import("./dist-BROOP2EG.js") },
236
236
  { name: "weixin", promise: import("./dist-ESS34DHC.js") },
237
- { name: "dingtalk", promise: import("./dist-IYYN3RUT.js") },
237
+ { name: "dingtalk", promise: import("./dist-IELOWDOT.js") },
238
238
  { name: "wecom", promise: import("./dist-JWMKPWT5.js") },
239
239
  { name: "feishu", promise: import("./dist-MAQXAQ2Y.js") },
240
240
  { name: "qqbot", promise: import("./dist-4ZPG4BY6.js") },
@@ -6,7 +6,7 @@ import {
6
6
  import {
7
7
  getPlugin,
8
8
  supportedTypes
9
- } from "./chunk-5IYS4WWR.js";
9
+ } from "./chunk-WAPL2PHU.js";
10
10
  import {
11
11
  init_esbuild_shims
12
12
  } from "./chunk-5O2XNYP6.js";
@@ -2,13 +2,13 @@
2
2
  "use strict";
3
3
  import {
4
4
  isPrivateHost
5
- } from "./chunk-ROIYNTHJ.js";
5
+ } from "./chunk-MD7XDTW7.js";
6
6
  import {
7
7
  loadUndici
8
- } from "./chunk-CPHEPGAO.js";
8
+ } from "./chunk-722JBVVW.js";
9
9
  import {
10
10
  getErrorMessage
11
- } from "./chunk-BUQDLC2G.js";
11
+ } from "./chunk-XFRYCCVC.js";
12
12
  import {
13
13
  init_esbuild_shims
14
14
  } from "./chunk-5O2XNYP6.js";
@@ -5,7 +5,7 @@ import {
5
5
  init_esm,
6
6
  isSpanContextValid,
7
7
  trace
8
- } from "./chunk-QUGAUQGJ.js";
8
+ } from "./chunk-GX2THELY.js";
9
9
  import {
10
10
  init_esbuild_shims
11
11
  } from "./chunk-5O2XNYP6.js";
@@ -293,8 +293,8 @@ var UNESCAPE_REGEX = (() => {
293
293
  const inner = SHELL_SPECIAL_CHARS.source.slice(1, -1);
294
294
  return new RegExp(`\\\\([${inner}])`, "g");
295
295
  })();
296
- function tildeifyPath(filePath) {
297
- const rawHomeDir = os.homedir();
296
+ function tildeifyPath(filePath, homeOverride) {
297
+ const rawHomeDir = homeOverride ?? os.homedir();
298
298
  if (!rawHomeDir) {
299
299
  return filePath;
300
300
  }
@@ -5,12 +5,12 @@ import {
5
5
  } from "./chunk-E7REAOTN.js";
6
6
  import {
7
7
  t
8
- } from "./chunk-VTOLYFWM.js";
8
+ } from "./chunk-W3M6P3UR.js";
9
9
  import {
10
10
  fetchGitDiff,
11
11
  findProviderByCredentials,
12
12
  resolveMetadataKey
13
- } from "./chunk-OFTPCOGR.js";
13
+ } from "./chunk-L7RG5PVT.js";
14
14
  import {
15
15
  init_esbuild_shims
16
16
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  runExitCleanup
5
- } from "./chunk-3SL2P3WX.js";
5
+ } from "./chunk-DIHJXVT4.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  MAX_TERMINAL_IMAGE_BYTES
5
- } from "./chunk-6HY6IF3Z.js";
5
+ } from "./chunk-OUYRA764.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-BUQDLC2G.js";
5
+ } from "./chunk-XFRYCCVC.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -2,14 +2,14 @@
2
2
  "use strict";
3
3
  import {
4
4
  getCliVersion
5
- } from "./chunk-PCETXVVV.js";
5
+ } from "./chunk-3X6KVX37.js";
6
6
  import {
7
7
  IdeClient,
8
8
  formatMemoryUsage
9
- } from "./chunk-OFTPCOGR.js";
9
+ } from "./chunk-L7RG5PVT.js";
10
10
  import {
11
11
  createDebugLogger
12
- } from "./chunk-BUQDLC2G.js";
12
+ } from "./chunk-XFRYCCVC.js";
13
13
  import {
14
14
  init_esbuild_shims
15
15
  } from "./chunk-5O2XNYP6.js";
@@ -25,7 +25,7 @@ import { execFile } from "node:child_process";
25
25
 
26
26
  // packages/cli/src/generated/git-commit.ts
27
27
  init_esbuild_shims();
28
- var GIT_COMMIT_INFO = "6e20a58923";
28
+ var GIT_COMMIT_INFO = "5dce2515a7";
29
29
 
30
30
  // packages/cli/src/utils/systemInfo.ts
31
31
  var debugLogger = createDebugLogger("STATUS");
@@ -27,10 +27,10 @@ import {
27
27
  } from "./chunk-3VUENPWF.js";
28
28
  import {
29
29
  loadSettings
30
- } from "./chunk-VFP5YOHJ.js";
30
+ } from "./chunk-PRIX4D6T.js";
31
31
  import {
32
32
  MCP_BUDGET_WARN_FRACTION
33
- } from "./chunk-OFTPCOGR.js";
33
+ } from "./chunk-L7RG5PVT.js";
34
34
  import {
35
35
  parsePositiveIntegerEnv
36
36
  } from "./chunk-6PVPNMXU.js";
@@ -40,7 +40,7 @@ import {
40
40
  } from "./chunk-NAVJD2PQ.js";
41
41
  import {
42
42
  MEMORY_PROJECT_SCOPES
43
- } from "./chunk-CHHABXPE.js";
43
+ } from "./chunk-5AAW6E3C.js";
44
44
  import {
45
45
  writeStderrLine,
46
46
  writeStdoutLine
@@ -422,7 +422,7 @@ var serveCommand = {
422
422
  }
423
423
  const externalToolGuardToken = process.env[EXTERNAL_TOOL_GUARD_TOKEN_ENV] ?? "";
424
424
  delete process.env[EXTERNAL_TOOL_GUARD_TOKEN_ENV];
425
- const { runQwenServe } = await import("./run-qwen-serve-UR3DYDAF.js");
425
+ const { runQwenServe } = await import("./run-qwen-serve-SQBF7QZM.js");
426
426
  try {
427
427
  const handle = await runQwenServe({
428
428
  port: argv.port,
@@ -2,14 +2,14 @@
2
2
  "use strict";
3
3
  import {
4
4
  getCurrentAgentId
5
- } from "./chunk-PT4I7NBA.js";
5
+ } from "./chunk-VX7TFATF.js";
6
6
  import {
7
7
  getTeammateContext,
8
8
  isTeammate
9
9
  } from "./chunk-S6LOFUVP.js";
10
10
  import {
11
11
  ToolNames
12
- } from "./chunk-6HY6IF3Z.js";
12
+ } from "./chunk-OUYRA764.js";
13
13
  import {
14
14
  init_esbuild_shims
15
15
  } from "./chunk-5O2XNYP6.js";