@qwen-code/qwen-code 0.21.5 → 0.21.6

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 (250) hide show
  1. package/bundled/qc-helper/docs/configuration/model-providers.md +8 -8
  2. package/bundled/qc-helper/docs/configuration/settings.md +15 -15
  3. package/bundled/qc-helper/docs/features/channels/github.md +31 -19
  4. package/bundled/qc-helper/docs/features/code-review.md +5 -1
  5. package/bundled/qc-helper/docs/features/headless.md +31 -0
  6. package/bundled/qc-helper/docs/qwen-serve.md +75 -0
  7. package/bundled/review/SKILL.md +72 -60
  8. package/chunks/{MaxSizedBox-2MWU5JYB.js → MaxSizedBox-2HFKP4LI.js} +11 -10
  9. package/chunks/{StandaloneSessionPicker-B6MI5NTB.js → StandaloneSessionPicker-RBV72M5N.js} +26 -25
  10. package/chunks/{acp-startup-profiler-3RICG2YW.js → acp-startup-profiler-ORIQ2CCQ.js} +2 -2
  11. package/chunks/{acpAgent-MRPYN6FH.js → acpAgent-WO6JFCVQ.js} +1232 -139
  12. package/chunks/{agent-NAOXNW4I.js → agent-AHGLYNZ4.js} +11 -10
  13. package/chunks/{agent-headless-L4PPVFKW.js → agent-headless-NTXKKGRO.js} +11 -10
  14. package/chunks/{bridge-LHXGYNCO.js → bridge-RPAU64CA.js} +17 -15
  15. package/chunks/{channel-management-service-UHX56NBO.js → channel-management-service-IGEUOVRT.js} +3 -3
  16. package/chunks/{channel-settings-store-QB54TLYE.js → channel-settings-store-ON64MF7G.js} +18 -17
  17. package/chunks/{channel-worker-group-NDG4WOOZ.js → channel-worker-group-JWQK224X.js} +6 -5
  18. package/chunks/{channel-worker-manager-ZCW6UW34.js → channel-worker-manager-77E3OXRQ.js} +6 -5
  19. package/chunks/{channel-worker-supervisor-ATGFTZRN.js → channel-worker-supervisor-62YWUGP2.js} +4 -3
  20. package/chunks/{chunk-EXHQZBVJ.js → chunk-2POQWYM6.js} +2 -2
  21. package/chunks/{chunk-YMUZQ3MQ.js → chunk-3LZKY4V4.js} +3 -3
  22. package/chunks/{chunk-7MFQLOHZ.js → chunk-3PRJYMXC.js} +1 -1
  23. package/chunks/{chunk-SJMCYCUQ.js → chunk-3UOLYNTF.js} +5 -5
  24. package/chunks/{chunk-Q2V4AOQL.js → chunk-4JH77A2U.js} +1 -1
  25. package/chunks/{chunk-MISUEWB4.js → chunk-4S4OEQ6U.js} +10 -6
  26. package/chunks/{chunk-URJHXOSO.js → chunk-4WTAQEHV.js} +1 -1
  27. package/chunks/{chunk-ZLGPHA34.js → chunk-536SWZTA.js} +5 -5
  28. package/chunks/{chunk-WU5NBSLD.js → chunk-5MJGUQU5.js} +3 -3
  29. package/chunks/{chunk-3P4GP4S2.js → chunk-75QMRMO7.js} +4 -4
  30. package/chunks/{chunk-YLL3SC5S.js → chunk-A4VTILZT.js} +1032 -913
  31. package/chunks/{chunk-B3EBIZUY.js → chunk-ACZRB7AD.js} +8 -3
  32. package/chunks/chunk-BKHCW2BI.js +41 -0
  33. package/chunks/{chunk-XD2PNH3K.js → chunk-BOGOR4HB.js} +5 -5
  34. package/chunks/{chunk-QL4TN4HS.js → chunk-BRVWYMKV.js} +1 -1
  35. package/chunks/{chunk-TCOJPG2P.js → chunk-C4CBJQKY.js} +1 -1
  36. package/chunks/{chunk-4O6HLCOF.js → chunk-CA4UIDFU.js} +1 -1
  37. package/chunks/{chunk-SQTA6PAY.js → chunk-CJ5WLD5Y.js} +6 -2
  38. package/chunks/{chunk-7W5KOBYU.js → chunk-DIT4V3XH.js} +1 -1
  39. package/chunks/{chunk-OIGB253L.js → chunk-DVBEGGLG.js} +8 -8
  40. package/chunks/{chunk-DTAPI453.js → chunk-EMYZIABH.js} +1 -1
  41. package/chunks/{chunk-GBY3ODW7.js → chunk-EXCEQD22.js} +3 -3
  42. package/chunks/{chunk-VJPF6GF2.js → chunk-FZFP7RZI.js} +3 -3
  43. package/chunks/{chunk-3GOCVBYR.js → chunk-G5NNWEYE.js} +5 -5
  44. package/chunks/{chunk-IWYXZAGT.js → chunk-GESMMPAK.js} +33 -33
  45. package/chunks/{chunk-SVIEVA3L.js → chunk-GK2H5GRC.js} +29 -4
  46. package/chunks/{chunk-7M2RLFNX.js → chunk-GWRHVJY2.js} +11 -11
  47. package/chunks/{chunk-BK2UNYWD.js → chunk-HIBNSEJE.js} +12 -0
  48. package/chunks/{chunk-4LLUH3A7.js → chunk-HU5TUALO.js} +95 -8
  49. package/chunks/{chunk-J7I2BZHS.js → chunk-HY25ULVN.js} +23 -6
  50. package/chunks/{chunk-G2UXFO2B.js → chunk-IMOQO6YL.js} +1 -1
  51. package/chunks/{chunk-CAX76R46.js → chunk-JE44IPH6.js} +1 -1
  52. package/chunks/{chunk-IK3RYLAD.js → chunk-K2B3X3E7.js} +3 -3
  53. package/chunks/{chunk-OWAK7LMW.js → chunk-KGJGEEVR.js} +7 -0
  54. package/chunks/{chunk-K64OI7S7.js → chunk-KHUA3NQV.js} +2 -2
  55. package/chunks/{chunk-LEZFUYPM.js → chunk-LAAFLUQV.js} +4 -4
  56. package/chunks/{chunk-FHPKHXHT.js → chunk-MKVZE4ZJ.js} +5 -1
  57. package/chunks/{chunk-4NEBUDWS.js → chunk-N2GJU6KI.js} +9 -9
  58. package/chunks/{chunk-N3RERU5N.js → chunk-NGJOAKJY.js} +3 -3
  59. package/chunks/chunk-NKLP3DCK.js +22 -0
  60. package/chunks/{chunk-K6VEL5KP.js → chunk-NKSF7HYF.js} +1 -1
  61. package/chunks/{chunk-LMNM37OE.js → chunk-O7V7N4G7.js} +1 -1
  62. package/chunks/{chunk-3H5RFLTS.js → chunk-ODPXHGLL.js} +2 -2
  63. package/chunks/{chunk-KH2BIJ4H.js → chunk-OP2OHZ7K.js} +267 -11
  64. package/chunks/{chunk-VOA2UPZM.js → chunk-OWSW7EYP.js} +5 -5
  65. package/chunks/{chunk-B2RBYP7Z.js → chunk-OXX3FG2N.js} +2 -2
  66. package/chunks/{chunk-RM3F46UT.js → chunk-PPUOYL77.js} +71 -6
  67. package/chunks/{chunk-ZPGMDT4S.js → chunk-PX5DNLSA.js} +19 -92
  68. package/chunks/{chunk-FEUXV3DC.js → chunk-Q5RM32DR.js} +1 -1
  69. package/chunks/{chunk-AEWOKOJY.js → chunk-QZKYZCN3.js} +1 -1
  70. package/chunks/{chunk-UKZEXS6K.js → chunk-R574ATRM.js} +11 -0
  71. package/chunks/{chunk-OGAARVN7.js → chunk-R5RBXLNC.js} +3 -3
  72. package/chunks/{chunk-5HWAJ4BK.js → chunk-RFUHDCNF.js} +1 -1
  73. package/chunks/{chunk-LSYVASZS.js → chunk-RHTTKJTP.js} +1 -1
  74. package/chunks/{chunk-LYPXNRBX.js → chunk-RK2EE3T7.js} +1 -1
  75. package/chunks/{chunk-CIUUYB23.js → chunk-S7CV4KO6.js} +3 -3
  76. package/chunks/{chunk-4NNR24EP.js → chunk-SKNE3KQC.js} +3 -3
  77. package/chunks/{chunk-JDNWIXHJ.js → chunk-SLSWFHDF.js} +3 -3
  78. package/chunks/{chunk-UWSXFI6E.js → chunk-SQC6K5HI.js} +6 -2
  79. package/chunks/{chunk-P3SLTSNY.js → chunk-SQOMTWQT.js} +4 -4
  80. package/chunks/{chunk-D7QAZ5DF.js → chunk-SUKEUUAA.js} +1 -1
  81. package/chunks/{chunk-WTM5QONI.js → chunk-T4JSA7KU.js} +2 -2
  82. package/chunks/{chunk-I7JDGNG6.js → chunk-T5U6IM4C.js} +6 -2
  83. package/chunks/{chunk-2JBETW4S.js → chunk-TGGEZINK.js} +5 -5
  84. package/chunks/{chunk-C6ARWPCG.js → chunk-TOGZTG4X.js} +2 -2
  85. package/chunks/{chunk-A6SX5TAH.js → chunk-TSERKWCX.js} +6 -2
  86. package/chunks/{chunk-IWGMDSC3.js → chunk-U4AF3QLU.js} +355 -17
  87. package/chunks/{chunk-PDDYAXL2.js → chunk-UGTWD35F.js} +14 -1
  88. package/chunks/{chunk-BWLUCN35.js → chunk-ULPQQSDN.js} +2 -2
  89. package/chunks/{chunk-GEP54CHX.js → chunk-VGFPFM4U.js} +3 -3
  90. package/chunks/{chunk-NLQIEY6W.js → chunk-VNQCPBC2.js} +3 -3
  91. package/chunks/{chunk-K2ETEWG6.js → chunk-VSALQLT7.js} +1 -1
  92. package/chunks/{chunk-YO4JI7B4.js → chunk-W5DXUTXD.js} +12 -6
  93. package/chunks/{chunk-M744OFVE.js → chunk-W7U4ESW2.js} +1 -1
  94. package/chunks/{chunk-TJ56V3AR.js → chunk-WNU7TZTO.js} +4 -4
  95. package/chunks/{chunk-GTM6IHBB.js → chunk-WO2B5E5B.js} +1 -0
  96. package/chunks/chunk-WOJZWRAZ.js +123 -0
  97. package/chunks/{chunk-5XNO4AW7.js → chunk-XA4TMLFN.js} +11 -11
  98. package/chunks/{chunk-GP4IMBX5.js → chunk-XM2O73NC.js} +1696 -476
  99. package/chunks/{chunk-IZ2CMEYO.js → chunk-YMBOEAF4.js} +1 -1
  100. package/chunks/{chunk-QONSRAEV.js → chunk-YP5KH5Y7.js} +1 -1
  101. package/chunks/{chunk-ZLJQIGCH.js → chunk-YZQTA3ID.js} +28 -11
  102. package/chunks/{computer-use-XDOGP2KA.js → computer-use-5HXJ2P4X.js} +11 -10
  103. package/chunks/{config-utils-E3ZQTHGM.js → config-utils-VXD4SPVR.js} +2 -2
  104. package/chunks/{contextCommand-N3LQDCYJ.js → contextCommand-7BEHRX2H.js} +14 -13
  105. package/chunks/{core-runtime-STAFP45W.js → core-runtime-U4VJ5TIV.js} +11 -10
  106. package/chunks/create-sub-session-QZNQY332.js +772 -0
  107. package/chunks/{daemon-CCIX4BMG.js → daemon-YI5RY62O.js} +115 -3
  108. package/chunks/{daemon-status-provider-PPAH3ATF.js → daemon-status-provider-UJUGTDTL.js} +21 -19
  109. package/chunks/{daemon-trust-policy-X6XL3MB4.js → daemon-trust-policy-ZHDD5VYQ.js} +17 -16
  110. package/chunks/{daemon-trust-policy-monitor-M5LBL2HD.js → daemon-trust-policy-monitor-5SHYBDGA.js} +17 -16
  111. package/chunks/{deferred-core-runtime-O54YPTBU.js → deferred-core-runtime-QWAEBTR5.js} +11 -10
  112. package/chunks/discovery-XLHITE74.js +220 -0
  113. package/chunks/{dist-IKGVITP3.js → dist-KS4O2NKE.js} +99 -6
  114. package/chunks/{earlyInputCapture-CBIT2RGT.js → earlyInputCapture-5BMSGKOI.js} +11 -10
  115. package/chunks/{edit-KW2TOC6A.js → edit-IVQQVYYK.js} +11 -10
  116. package/chunks/{enter-worktree-YL34NEU5.js → enter-worktree-P3DF2N6O.js} +11 -10
  117. package/chunks/{enterPlanMode-JFJTDASQ.js → enterPlanMode-KKTDVLAD.js} +11 -10
  118. package/chunks/{environment-IATU5GXG.js → environment-W5TRDM3G.js} +14 -13
  119. package/chunks/{errors-SAVRDE7Q.js → errors-GJJB36IG.js} +14 -13
  120. package/chunks/{exit-worktree-5M43QPBB.js → exit-worktree-LV5RLOCU.js} +11 -10
  121. package/chunks/{exitPlanMode-W4EICZ4N.js → exitPlanMode-TUGOB2LL.js} +11 -10
  122. package/chunks/external-tool-guard-provider-5HTGOPGU.js +273 -0
  123. package/chunks/{fast-path-YQJPIKMP.js → fast-path-2FU23PAQ.js} +5 -5
  124. package/chunks/{gemini-FUF5SSPR.js → gemini-KDULDQPP.js} +70 -55
  125. package/chunks/{geminiContentGenerator-LLLZBOUG.js → geminiContentGenerator-LOCFHNVA.js} +1 -1
  126. package/chunks/{glob-LJFFMN4D.js → glob-Z4NQFKWS.js} +11 -10
  127. package/chunks/{grep-Q64EAM73.js → grep-Z67Z7EN6.js} +11 -10
  128. package/chunks/{handleAutoUpdate-QBMPRTSQ.js → handleAutoUpdate-DFUZE6I6.js} +16 -15
  129. package/chunks/{i18n-LDUW5DMN.js → i18n-R4FMZ7N2.js} +13 -12
  130. package/chunks/{image-gen-G7RLG3KR.js → image-gen-4CQJPQP5.js} +1 -1
  131. package/chunks/{initializer-74A7DMMD.js → initializer-DK672ZVE.js} +17 -16
  132. package/chunks/{installationInfo-OFDYLDFD.js → installationInfo-PO4Z3ES7.js} +12 -11
  133. package/chunks/{list-JA2EWRHJ.js → list-QXQF6C53.js} +20 -19
  134. package/chunks/{loadedSettingsAdapter-2GNJOQ3L.js → loadedSettingsAdapter-4D7GUGW6.js} +17 -16
  135. package/chunks/{loggingContentGenerator-B6B5EGB3.js → loggingContentGenerator-2P3MNACM.js} +4 -3
  136. package/chunks/{managed-npm-update-4YZHLUER.js → managed-npm-update-LWVJQTWO.js} +24 -14
  137. package/chunks/{mcp-LLK5YJVH.js → mcp-GHETAR6V.js} +17 -16
  138. package/chunks/{monitor-NYJPAWVP.js → monitor-4T7W4M6Q.js} +11 -10
  139. package/chunks/{nonInteractiveCli-HZBBBDJD.js → nonInteractiveCli-P4UKCJFM.js} +47 -45
  140. package/chunks/{notebook-edit-LLM6UXFX.js → notebook-edit-OC2V7U5D.js} +11 -10
  141. package/chunks/{openaiContentGenerator-2AEXDN55.js → openaiContentGenerator-RAJUFWQY.js} +5 -4
  142. package/chunks/{pidfile-3JUWX7G2.js → pidfile-HVPYVRLS.js} +11 -10
  143. package/chunks/{processUtils-JLLRVZHT.js → processUtils-VIQ4JHVX.js} +2 -2
  144. package/chunks/{qwenContentGenerator-2FESCF27.js → qwenContentGenerator-2QLCUFNZ.js} +12 -11
  145. package/chunks/{qwenOAuth2-2KKPYA5J.js → qwenOAuth2-J2X3EN43.js} +1 -1
  146. package/chunks/{read-file-5GVXLY74.js → read-file-ZNAN2B26.js} +3 -2
  147. package/chunks/{record-artifact-L3BAHQFN.js → record-artifact-E6AWQU2Z.js} +1 -1
  148. package/chunks/{resumeHistoryUtils-Z4OFBXPM.js → resumeHistoryUtils-RCY7AL5Y.js} +15 -14
  149. package/chunks/{ripGrep-TKOJTIAB.js → ripGrep-C3KMLZM5.js} +11 -10
  150. package/chunks/{run-qwen-serve-K5W6MM6M.js → run-qwen-serve-3JN75CIQ.js} +518 -75
  151. package/chunks/{runtime-IADXMRCY.js → runtime-VUA4WQYD.js} +20 -19
  152. package/chunks/{scheduler-T7AV37LD.js → scheduler-Z4IBXCOY.js} +11 -10
  153. package/chunks/{serve-ROEGMS3I.js → serve-67T3P7XI.js} +18 -16
  154. package/chunks/{server-NGXMRODI.js → server-46ZO2CLV.js} +7556 -397
  155. package/chunks/{session-RCDLDJA4.js → session-B4IFAFC4.js} +50 -48
  156. package/chunks/{settings-E6H3AURD.js → settings-AI2BTBOZ.js} +16 -15
  157. package/chunks/{shell-RHGGJ6BE.js → shell-BKII3B6E.js} +11 -10
  158. package/chunks/{skill-GQ7PBS25.js → skill-6CFOWVGA.js} +4 -3
  159. package/chunks/{skill-settings-E2F7OCBL.js → skill-settings-6BFQWMW4.js} +16 -15
  160. package/chunks/{spawnChannel-Q2IQBHME.js → spawnChannel-FJXW35U7.js} +14 -12
  161. package/chunks/{standalone-update-NYYZEHLD.js → standalone-update-WVINHRNS.js} +14 -13
  162. package/chunks/{startInteractiveUI-IX6I3Y2Z.js → startInteractiveUI-YE57CJ57.js} +140 -138
  163. package/chunks/{stdioHelpers-HGIYTWAY.js → stdioHelpers-7A2EE64Z.js} +5 -3
  164. package/chunks/{task-create-2X4UP4F3.js → task-create-Q727MXHJ.js} +2 -2
  165. package/chunks/{task-list-WOLJPZ64.js → task-list-G6KPQ5JT.js} +1 -1
  166. package/chunks/{task-update-VDUSN36E.js → task-update-YB7PXO4R.js} +2 -2
  167. package/chunks/{team-create-UTRVUEDA.js → team-create-GNC7NFY6.js} +11 -10
  168. package/chunks/{team-delete-D2VMSDOT.js → team-delete-GDO7H2T4.js} +1 -1
  169. package/chunks/{team-plan-approval-YZNB4U5U.js → team-plan-approval-ECALJLIO.js} +11 -10
  170. package/chunks/{terminal-image-renderer-QRSCS2BE.js → terminal-image-renderer-II74TFVW.js} +11 -10
  171. package/chunks/{theme-manager-EKZBY34I.js → theme-manager-2MGEDD22.js} +11 -10
  172. package/chunks/{tool-search-N2R7LVMC.js → tool-search-S6LRRACA.js} +3 -2
  173. package/chunks/{total-session-admission-HBIYARPO.js → total-session-admission-7WVAWQPU.js} +17 -15
  174. package/chunks/{trustedFolders-ZQLYRCSY.js → trustedFolders-NFS4KHO4.js} +13 -12
  175. package/chunks/{update-relaunch-PJWXMPCR.js → update-relaunch-Q5HLZ6UW.js} +6 -6
  176. package/chunks/{updateCheck-ZXRCGY66.js → updateCheck-UOVZSTP7.js} +15 -14
  177. package/chunks/{useAutoAcceptIndicator-ZYQW5SGJ.js → useAutoAcceptIndicator-PC6MOJCO.js} +19 -18
  178. package/chunks/{validateNonInterActiveAuth-M7J7OTRH.js → validateNonInterActiveAuth-YMQP3ZM7.js} +44 -42
  179. package/chunks/{version-2AOHMPK3.js → version-T4AQFZJH.js} +1 -1
  180. package/chunks/{web-fetch-DS34CJ3R.js → web-fetch-JQCJHEEX.js} +3 -2
  181. package/chunks/{web-search-ITFPD7V4.js → web-search-QGZ2KY4G.js} +4 -3
  182. package/chunks/{workflow-LZQ4PGNS.js → workflow-YIT27YWZ.js} +12 -11
  183. package/chunks/{workspace-providers-status-ZPTLKOBM.js → workspace-providers-status-FIDZQ2PL.js} +20 -19
  184. package/chunks/{workspace-registration-store-OTFKSGG7.js → workspace-registration-store-RCSPE4DU.js} +1 -1
  185. package/chunks/{workspace-registry-YZ3OXPHP.js → workspace-registry-5PEUCY6E.js} +17 -15
  186. package/chunks/{workspace-service-OCZXOOSQ.js → workspace-service-LANDVPL7.js} +21 -20
  187. package/chunks/{workspace-skills-status-K2ALGUCD.js → workspace-skills-status-2IQVJNIN.js} +18 -17
  188. package/chunks/{workspace-trust-reconciler-KMRZISJP.js → workspace-trust-reconciler-CZPZZCZC.js} +26 -24
  189. package/chunks/{write-file-AWBI4GJS.js → write-file-G5VNGCOG.js} +11 -10
  190. package/chunks/{zoom-image-NHKN6F77.js → zoom-image-6RBLD7X6.js} +3 -2
  191. package/cli-entry.js +14 -0
  192. package/cli.js +19 -15
  193. package/package.json +3 -3
  194. package/web-shell/assets/{arc-Dpg66jw7.js → arc-B-Vtkp1W.js} +1 -1
  195. package/web-shell/assets/{architectureDiagram-3BPJPVTR-BJ4FIBxN.js → architectureDiagram-3BPJPVTR-qmTXIj64.js} +1 -1
  196. package/web-shell/assets/{blockDiagram-GPEHLZMM-VXmYdtYT.js → blockDiagram-GPEHLZMM-ZlnXEtdP.js} +1 -1
  197. package/web-shell/assets/{c4Diagram-AAUBKEIU-BNLDb8FE.js → c4Diagram-AAUBKEIU-Wyoirf6Z.js} +1 -1
  198. package/web-shell/assets/channel-DXaHnfjS.js +1 -0
  199. package/web-shell/assets/{chunk-2J33WTMH-DR5yHxr0.js → chunk-2J33WTMH-WQwbq9d8.js} +1 -1
  200. package/web-shell/assets/{chunk-4BX2VUAB-Czkq8UZU.js → chunk-4BX2VUAB-DQKnAXC4.js} +1 -1
  201. package/web-shell/assets/{chunk-55IACEB6-DugUgM6s.js → chunk-55IACEB6-DIdgXNcO.js} +1 -1
  202. package/web-shell/assets/{chunk-727SXJPM-Dw6quA1K.js → chunk-727SXJPM-CUwGOLEd.js} +1 -1
  203. package/web-shell/assets/{chunk-AQP2D5EJ-BoVYOTTz.js → chunk-AQP2D5EJ-CCBGZFZ4.js} +1 -1
  204. package/web-shell/assets/{chunk-FMBD7UC4--Amcse-j.js → chunk-FMBD7UC4-DMGXProk.js} +1 -1
  205. package/web-shell/assets/{chunk-ND2GUHAM-ajaEYAC8.js → chunk-ND2GUHAM-yejcFqsh.js} +1 -1
  206. package/web-shell/assets/{chunk-QZHKN3VN-CUNDZ7im.js → chunk-QZHKN3VN-DxCyqTf7.js} +1 -1
  207. package/web-shell/assets/classDiagram-4FO5ZUOK-BigU82A0.js +1 -0
  208. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BigU82A0.js +1 -0
  209. package/web-shell/assets/{cose-bilkent-S5V4N54A-BnfkD-m1.js → cose-bilkent-S5V4N54A-DOrF3cg_.js} +1 -1
  210. package/web-shell/assets/{dagre-BM42HDAG-BuUdFk7Z.js → dagre-BM42HDAG-Be6CdYQ_.js} +1 -1
  211. package/web-shell/assets/{diagram-2AECGRRQ-B2ZXxoab.js → diagram-2AECGRRQ-B_Rjsft2.js} +1 -1
  212. package/web-shell/assets/{diagram-5GNKFQAL-BsgOICzM.js → diagram-5GNKFQAL-BvQbKSm1.js} +1 -1
  213. package/web-shell/assets/{diagram-KO2AKTUF-DTTjG6U-.js → diagram-KO2AKTUF-BsdmMdpS.js} +1 -1
  214. package/web-shell/assets/{diagram-LMA3HP47-temLf1x7.js → diagram-LMA3HP47-CrQlBaNr.js} +1 -1
  215. package/web-shell/assets/{diagram-OG6HWLK6-CRFjScs2.js → diagram-OG6HWLK6-aB1MD_DL.js} +1 -1
  216. package/web-shell/assets/{erDiagram-TEJ5UH35-D4oaY-rQ.js → erDiagram-TEJ5UH35-F-eUUn9n.js} +1 -1
  217. package/web-shell/assets/{flowDiagram-I6XJVG4X-BqG8B49b.js → flowDiagram-I6XJVG4X-DY_d8lUK.js} +1 -1
  218. package/web-shell/assets/{ganttDiagram-6RSMTGT7-DffQBdd5.js → ganttDiagram-6RSMTGT7-Dqu7KBPg.js} +1 -1
  219. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-CMDPfseF.js → gitGraphDiagram-PVQCEYII-2IkU_VEj.js} +1 -1
  220. package/web-shell/assets/{index-qTQR_smP.js → index-BuSbqggh.js} +1 -1
  221. package/web-shell/assets/index-DrfC2e9s.js +1768 -0
  222. package/web-shell/assets/index-QQlUCJGg.css +5 -0
  223. package/web-shell/assets/{infoDiagram-5YYISTIA-Cn3T83MA.js → infoDiagram-5YYISTIA-C4orwzPw.js} +1 -1
  224. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-ijFs7e25.js → ishikawaDiagram-YF4QCWOH-fXUEfef_.js} +1 -1
  225. package/web-shell/assets/{journeyDiagram-JHISSGLW-CINTv8VB.js → journeyDiagram-JHISSGLW-Bs0I1_J5.js} +1 -1
  226. package/web-shell/assets/{kanban-definition-UN3LZRKU-CMGRZCxx.js → kanban-definition-UN3LZRKU-BPRj1dw_.js} +1 -1
  227. package/web-shell/assets/{linear-Co-2_37d.js → linear-DFS6ZDpW.js} +1 -1
  228. package/web-shell/assets/{mermaid.core-DijbyaN5.js → mermaid.core-CZxjWMaO.js} +5 -5
  229. package/web-shell/assets/{mindmap-definition-RKZ34NQL-k_sDYDPZ.js → mindmap-definition-RKZ34NQL-Dsr3PmNs.js} +1 -1
  230. package/web-shell/assets/{pieDiagram-4H26LBE5-CG-oz8V3.js → pieDiagram-4H26LBE5-D5Ngpz5Y.js} +1 -1
  231. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-Baq7HIG2.js → quadrantDiagram-W4KKPZXB-WJK9I25z.js} +1 -1
  232. package/web-shell/assets/{requirementDiagram-4Y6WPE33-CDM3ZvBt.js → requirementDiagram-4Y6WPE33-CmrYcwOH.js} +1 -1
  233. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-C2dJbWKN.js → sankeyDiagram-5OEKKPKP-7SjCc4Mv.js} +1 -1
  234. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-Cf1_h59p.js → sequenceDiagram-3UESZ5HK-Dl9E0IRM.js} +1 -1
  235. package/web-shell/assets/{stateDiagram-AJRCARHV-CI5clUEc.js → stateDiagram-AJRCARHV-CRRio7yV.js} +1 -1
  236. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-1atT7XaU.js +1 -0
  237. package/web-shell/assets/{timeline-definition-PNZ67QCA-B2O8cAZX.js → timeline-definition-PNZ67QCA-DVyXjjfq.js} +1 -1
  238. package/web-shell/assets/{vennDiagram-CIIHVFJN-BLsJ_h9s.js → vennDiagram-CIIHVFJN-Nb2Lckzq.js} +1 -1
  239. package/web-shell/assets/{wardley-L42UT6IY-BlPU4FTA.js → wardley-L42UT6IY-DuL_otIP.js} +1 -1
  240. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-D_U-RdU4.js → wardleyDiagram-YWT4CUSO-DVI9Q4Aa.js} +1 -1
  241. package/web-shell/assets/{xychartDiagram-2RQKCTM6-BynXGSTl.js → xychartDiagram-2RQKCTM6-BNjAm7KD.js} +1 -1
  242. package/web-shell/index.html +2 -2
  243. package/bundled/review/DESIGN.md +0 -724
  244. package/chunks/create-sub-session-2B3JENWD.js +0 -400
  245. package/web-shell/assets/channel-Bd9wOnaA.js +0 -1
  246. package/web-shell/assets/classDiagram-4FO5ZUOK-XhCT8FE3.js +0 -1
  247. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-XhCT8FE3.js +0 -1
  248. package/web-shell/assets/index-2F4RsNzd.js +0 -1756
  249. package/web-shell/assets/index-CaucmEO_.css +0 -5
  250. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BDc8asKD.js +0 -1
@@ -1,5 +1,8 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
+ import {
4
+ defaultModalities
5
+ } from "./chunk-WOJZWRAZ.js";
3
6
  import {
4
7
  Mutex
5
8
  } from "./chunk-VGC4I5JJ.js";
@@ -19,15 +22,12 @@ import {
19
22
  } from "./chunk-D7D7RXIJ.js";
20
23
  import {
21
24
  DEFAULT_QWEN_MODEL
22
- } from "./chunk-XD2PNH3K.js";
25
+ } from "./chunk-BOGOR4HB.js";
23
26
  import {
24
27
  estimateTextTokens,
25
28
  generateLegacyMcpToolName,
26
29
  normalizeToolNameForProvider
27
30
  } from "./chunk-46UV252V.js";
28
- import {
29
- normalize
30
- } from "./chunk-ZBVS26BY.js";
31
31
  import {
32
32
  InstallationManager
33
33
  } from "./chunk-TYERNYH4.js";
@@ -8982,7 +8982,7 @@ async function readTextCursorWindowFromHandle(fileHandle, request2) {
8982
8982
  let truncatedByBytes = false;
8983
8983
  let stop = false;
8984
8984
  let skipRestOfLine = false;
8985
- let sawCrlf = false;
8985
+ let sawCrlf = await precededByCrlfTerminator(fileHandle, startOffset);
8986
8986
  const emit = /* @__PURE__ */ __name((line, hadNewline) => {
8987
8987
  const separator = lines.length > 0 ? 1 : 0;
8988
8988
  const lineBytes = Buffer.byteLength(line, "utf8");
@@ -9069,6 +9069,9 @@ async function readTextCursorWindowFromHandle(fileHandle, request2) {
9069
9069
  true
9070
9070
  );
9071
9071
  consumedBytes = resumeAt - startOffset;
9072
+ if (!sawCrlf) {
9073
+ sawCrlf = await precededByCrlfTerminator(fileHandle, resumeAt);
9074
+ }
9072
9075
  }
9073
9076
  const content = lines.join("\n");
9074
9077
  const nextOffset = startOffset + consumedBytes;
@@ -9085,6 +9088,14 @@ async function readTextCursorWindowFromHandle(fileHandle, request2) {
9085
9088
  __name(readTextCursorWindowFromHandle, "readTextCursorWindowFromHandle");
9086
9089
  var UTF8_BOM_BYTES = 3;
9087
9090
  var LINE_FEED = 10;
9091
+ var CARRIAGE_RETURN = 13;
9092
+ async function precededByCrlfTerminator(fileHandle, startOffset) {
9093
+ if (startOffset < 2) return false;
9094
+ const probe = Buffer.alloc(2);
9095
+ const { bytesRead } = await fileHandle.read(probe, 0, 2, startOffset - 2);
9096
+ return bytesRead === 2 && probe[0] === CARRIAGE_RETURN && probe[1] === LINE_FEED;
9097
+ }
9098
+ __name(precededByCrlfTerminator, "precededByCrlfTerminator");
9088
9099
  async function hasUtf8Bom(fileHandle, fileSize) {
9089
9100
  if (fileSize < UTF8_BOM_BYTES) return false;
9090
9101
  const probe = Buffer.alloc(UTF8_BOM_BYTES);
@@ -14451,6 +14462,9 @@ var DiscoveredMCPToolInvocation = class _DiscoveredMCPToolInvocation extends Bas
14451
14462
  if (isAbortError(error)) {
14452
14463
  return false;
14453
14464
  }
14465
+ if (this.cliConfig?.getToolInvocationGuard?.()) {
14466
+ return false;
14467
+ }
14454
14468
  if (getMCPServerStatus(this.serverName) === "disconnected" /* DISCONNECTED */) {
14455
14469
  return true;
14456
14470
  }
@@ -16086,92 +16100,6 @@ __name(getFileReadDefaultPermission, "getFileReadDefaultPermission");
16086
16100
  // packages/core/src/services/visionBridge/vision-bridge-service.ts
16087
16101
  init_esbuild_shims();
16088
16102
 
16089
- // packages/core/src/core/modalityDefaults.ts
16090
- init_esbuild_shims();
16091
- var FULL_MULTIMODAL = {
16092
- image: true,
16093
- pdf: true,
16094
- audio: true,
16095
- video: true
16096
- };
16097
- var MODALITY_PATTERNS = [
16098
- // -------------------
16099
- // Google Gemini — full multimodal
16100
- // -------------------
16101
- [/^gemini-3/, FULL_MULTIMODAL],
16102
- [/^gemini-/, FULL_MULTIMODAL],
16103
- // -------------------
16104
- // OpenAI — image by default for all gpt/o-series models
16105
- // -------------------
16106
- [/^gpt-5/, { image: true }],
16107
- [/^gpt-/, { image: true }],
16108
- [/^o\d/, { image: true }],
16109
- // -------------------
16110
- // Anthropic Claude — image + pdf
16111
- // -------------------
16112
- [/^claude-/, { image: true, pdf: true }],
16113
- // -------------------
16114
- // Alibaba / Qwen
16115
- // -------------------
16116
- // Qwen Plus models: image + video support
16117
- [/^qwen3\.5-plus/, { image: true, video: true }],
16118
- [/^qwen3\.6-plus/, { image: true, video: true }],
16119
- [/^qwen3\.7-plus/, { image: true, video: true }],
16120
- // Qwen Max models (3.8+): image support
16121
- [/^qwen3\.8-max/, { image: true }],
16122
- [/^coder-model$/, { image: true, video: true }],
16123
- // Qwen VL (vision-language) models: image + video
16124
- [/^qwen-vl-/, { image: true, video: true }],
16125
- [/^qwen3-vl-/, { image: true, video: true }],
16126
- // Qwen coder / text models: text-only
16127
- [/^qwen3-coder-/, {}],
16128
- // Qwen3.6-35B-A3B (local quant variants) — image + video
16129
- [/^qwen3\.6-35b/, { image: true, video: true }],
16130
- [/^qwen/, {}],
16131
- // -------------------
16132
- // DeepSeek — text-only
16133
- // -------------------
16134
- [/^deepseek/, {}],
16135
- // -------------------
16136
- // Zhipu GLM
16137
- // -------------------
16138
- [/^glm-4\.5v/, { image: true }],
16139
- [/^glm-5(?:-|$)/, {}],
16140
- [/^glm-/, {}],
16141
- // -------------------
16142
- // MiniMax — M3 supports image + video input; older models default to text-only
16143
- // -------------------
16144
- [/^minimax-m3/i, { image: true, video: true }],
16145
- [/^minimax-/, {}],
16146
- // -------------------
16147
- // Moonshot / Kimi
16148
- // -------------------
16149
- [/^kimi-k3/, { image: true, video: true }],
16150
- [/^kimi-k2\./, { image: true, video: true }],
16151
- [/^kimi-/, {}],
16152
- // -------------------
16153
- // ByteDance Doubao — Seed-series and *-vision / *-vl models accept image
16154
- // input; other Doubao models (pro / lite / text) are text-only.
16155
- // (QwenLM/qwen-code#4876)
16156
- // -------------------
16157
- // seedance (text→video) and seedream (text→image) are generation models with
16158
- // text-only input — exclude them before the multimodal Seed chat series.
16159
- [/^doubao-seed(ance|ream)/, {}],
16160
- [/^doubao-seed/, { image: true }],
16161
- [/^doubao-.*(vision|vl)/, { image: true }],
16162
- [/^doubao/, {}]
16163
- ];
16164
- function defaultModalities(model) {
16165
- const norm = normalize(model);
16166
- for (const [regex, modalities] of MODALITY_PATTERNS) {
16167
- if (regex.test(norm)) {
16168
- return { ...modalities };
16169
- }
16170
- }
16171
- return {};
16172
- }
16173
- __name(defaultModalities, "defaultModalities");
16174
-
16175
16103
  // packages/core/src/utils/sideQuery.ts
16176
16104
  init_esbuild_shims();
16177
16105
  import { readFile as readFile2 } from "node:fs/promises";
@@ -17025,7 +16953,6 @@ var ReadFileTool = class _ReadFileTool extends BaseDeclarativeTool {
17025
16953
  };
17026
16954
 
17027
16955
  export {
17028
- defaultModalities,
17029
16956
  runSideQuery,
17030
16957
  VISION_BRIDGE_MAX_IMAGES,
17031
16958
  VISION_BRIDGE_MAX_IMAGE_BASE64_BYTES,
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  BaseJsonOutputAdapter
5
- } from "./chunk-N3RERU5N.js";
5
+ } from "./chunk-NGJOAKJY.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-6O5DVH27.js";
6
6
  import {
7
7
  isInternalPromptId
8
- } from "./chunk-ZPGMDT4S.js";
8
+ } from "./chunk-PX5DNLSA.js";
9
9
  import {
10
10
  createDebugLogger
11
11
  } from "./chunk-3RXUYQJI.js";
@@ -3,6 +3,9 @@
3
3
  import {
4
4
  init_esbuild_shims
5
5
  } from "./chunk-5O2XNYP6.js";
6
+ import {
7
+ __name
8
+ } from "./chunk-J2S4EL5Y.js";
6
9
 
7
10
  // packages/acp-bridge/src/bridgeTypes.ts
8
11
  init_esbuild_shims();
@@ -16,6 +19,12 @@ var REQUESTED_SESSION_ID_META_KEY = "qwen-code/sessionId";
16
19
  var CHANNEL_STARTUP_PROFILE_META_KEY = "qwen.daemon.channelStartupProfile";
17
20
  var CHANNEL_STARTUP_PROFILE_VERSION = 1;
18
21
  var WORKTREE_MCP_DEFER_META_KEY = "qwen.session.deferMcpDiscovery";
22
+ var DAEMON_MODEL_PROMPT_META_KEY = "qwen.daemon.modelPrompt";
23
+ var MAX_TRUSTED_MODEL_PROMPT_CHARS = 64 * 1024;
24
+ function isValidTrustedModelPrompt(value) {
25
+ return typeof value === "string" && value.trim().length > 0 && value.length <= MAX_TRUSTED_MODEL_PROMPT_CHARS;
26
+ }
27
+ __name(isValidTrustedModelPrompt, "isValidTrustedModelPrompt");
19
28
  var DAEMON_CHANNEL_DELIVERY_META_KEY = "qwen.daemon.channelDelivery";
20
29
  var MID_TURN_QUEUE_DRAIN_METHOD = "craft/drainMidTurnQueue";
21
30
  var TODO_STOP_GUARD_CONTINUATION_CLAIM_METHOD = "craft/claimTodoStopGuardContinuation";
@@ -34,6 +43,8 @@ export {
34
43
  CHANNEL_STARTUP_PROFILE_META_KEY,
35
44
  CHANNEL_STARTUP_PROFILE_VERSION,
36
45
  WORKTREE_MCP_DEFER_META_KEY,
46
+ DAEMON_MODEL_PROMPT_META_KEY,
47
+ isValidTrustedModelPrompt,
37
48
  DAEMON_CHANNEL_DELIVERY_META_KEY,
38
49
  MID_TURN_QUEUE_DRAIN_METHOD,
39
50
  TODO_STOP_GUARD_CONTINUATION_CLAIM_METHOD,
@@ -8,16 +8,16 @@ import {
8
8
  initializeI18n,
9
9
  resolveLanguageSetting,
10
10
  t
11
- } from "./chunk-K64OI7S7.js";
11
+ } from "./chunk-KHUA3NQV.js";
12
12
  import {
13
13
  IdeClient
14
- } from "./chunk-YLL3SC5S.js";
14
+ } from "./chunk-A4VTILZT.js";
15
15
  import {
16
16
  AuthEvent,
17
17
  IdeConnectionEvent,
18
18
  logAuth,
19
19
  logIdeConnection
20
- } from "./chunk-ZPGMDT4S.js";
20
+ } from "./chunk-PX5DNLSA.js";
21
21
  import {
22
22
  getErrorMessage
23
23
  } from "./chunk-3RXUYQJI.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  t
5
- } from "./chunk-K64OI7S7.js";
5
+ } from "./chunk-KHUA3NQV.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -64,7 +64,7 @@ async function runExitCleanup(options = {}) {
64
64
  }
65
65
  __name(runExitCleanup, "runExitCleanup");
66
66
  async function cleanupCheckpoints() {
67
- const { Storage } = await import("./deferred-core-runtime-O54YPTBU.js");
67
+ const { Storage } = await import("./deferred-core-runtime-QWAEBTR5.js");
68
68
  const storage = new Storage(process.cwd());
69
69
  const tempDir = storage.getProjectTempDir();
70
70
  const checkpointsDir = join(tempDir, "checkpoints");
@@ -8,7 +8,7 @@ import {
8
8
  } from "./chunk-6PEXNQTX.js";
9
9
  import {
10
10
  isWorkspaceTrusted
11
- } from "./chunk-B3EBIZUY.js";
11
+ } from "./chunk-ACZRB7AD.js";
12
12
  import {
13
13
  require_main
14
14
  } from "./chunk-5M6IDOMF.js";
@@ -2,17 +2,17 @@
2
2
  "use strict";
3
3
  import {
4
4
  CLIENT_MCP_OVER_WS_CONFIG_FLAG
5
- } from "./chunk-UKZEXS6K.js";
5
+ } from "./chunk-R574ATRM.js";
6
6
  import {
7
7
  SessionNotFoundError
8
8
  } from "./chunk-J26HHFI5.js";
9
9
  import {
10
10
  ChannelWorkerStartupError
11
- } from "./chunk-FHPKHXHT.js";
11
+ } from "./chunk-MKVZE4ZJ.js";
12
12
  import {
13
13
  ChannelDeliveryError,
14
14
  ChannelWebhookEnqueueError
15
- } from "./chunk-QONSRAEV.js";
15
+ } from "./chunk-YP5KH5Y7.js";
16
16
  import {
17
17
  CHANNEL_LOOP_MCP_SERVER_NAME
18
18
  } from "./chunk-DIEFUBV6.js";
@@ -2,19 +2,19 @@
2
2
  "use strict";
3
3
  import {
4
4
  t
5
- } from "./chunk-K64OI7S7.js";
5
+ } from "./chunk-KHUA3NQV.js";
6
6
  import {
7
7
  computeThresholds,
8
8
  getCoreSystemPrompt,
9
9
  resolveInteractionMode
10
- } from "./chunk-YLL3SC5S.js";
10
+ } from "./chunk-A4VTILZT.js";
11
11
  import {
12
12
  buildSkillLlmContent
13
13
  } from "./chunk-K623ENWT.js";
14
14
  import {
15
15
  DiscoveredMCPTool,
16
16
  uiTelemetryService
17
- } from "./chunk-ZPGMDT4S.js";
17
+ } from "./chunk-PX5DNLSA.js";
18
18
  import {
19
19
  ToolNames
20
20
  } from "./chunk-D7D7RXIJ.js";
@@ -2,13 +2,13 @@
2
2
  "use strict";
3
3
  import {
4
4
  t
5
- } from "./chunk-K64OI7S7.js";
5
+ } from "./chunk-KHUA3NQV.js";
6
6
  import {
7
7
  SessionReferenceService,
8
8
  SessionService,
9
9
  readManyFiles,
10
10
  stripTerminalControlSequences
11
- } from "./chunk-YLL3SC5S.js";
11
+ } from "./chunk-A4VTILZT.js";
12
12
  import {
13
13
  emptyMcpResourceText,
14
14
  formatMcpResourceContents,
@@ -16,7 +16,7 @@ import {
16
16
  } from "./chunk-ZPJWUGCS.js";
17
17
  import {
18
18
  shouldRunVisionBridge
19
- } from "./chunk-ZPGMDT4S.js";
19
+ } from "./chunk-PX5DNLSA.js";
20
20
  import {
21
21
  Storage,
22
22
  getErrorMessage,
@@ -2,7 +2,10 @@
2
2
  "use strict";
3
3
  import {
4
4
  MissingCliEntryError
5
- } from "./chunk-PDDYAXL2.js";
5
+ } from "./chunk-UGTWD35F.js";
6
+ import {
7
+ EXTERNAL_TOOL_GUARD_TOKEN_ENV
8
+ } from "./chunk-BKHCW2BI.js";
6
9
  import {
7
10
  redactLogCredentials
8
11
  } from "./chunk-M5GB774H.js";
@@ -389,7 +392,8 @@ __name(createSpawnChannelFactory, "createSpawnChannelFactory");
389
392
  var defaultSpawnChannelFactory = createSpawnChannelFactory();
390
393
  var SCRUBBED_CHILD_ENV_KEYS = /* @__PURE__ */ new Set([
391
394
  "QWEN_SERVER_TOKEN",
392
- "QWEN_CODE_SIMPLE"
395
+ "QWEN_CODE_SIMPLE",
396
+ EXTERNAL_TOOL_GUARD_TOKEN_ENV
393
397
  ]);
394
398
  function scrubChildEnv(source, scrubbed, overrides) {
395
399
  const childEnv = { ...source };
@@ -3,17 +3,17 @@
3
3
  import {
4
4
  getGitVersion,
5
5
  getNpmVersion
6
- } from "./chunk-IK3RYLAD.js";
6
+ } from "./chunk-K2B3X3E7.js";
7
7
  import {
8
8
  buildEnvStatusFromEnv,
9
9
  snapshotProcessEnv
10
- } from "./chunk-BWLUCN35.js";
10
+ } from "./chunk-ULPQQSDN.js";
11
11
  import {
12
12
  mapDomainErrorToErrorKind
13
- } from "./chunk-PDDYAXL2.js";
13
+ } from "./chunk-UGTWD35F.js";
14
14
  import {
15
15
  canUseRipgrep
16
- } from "./chunk-YLL3SC5S.js";
16
+ } from "./chunk-A4VTILZT.js";
17
17
  import {
18
18
  init_esbuild_shims
19
19
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  runExitCleanup
5
- } from "./chunk-LSYVASZS.js";
5
+ } from "./chunk-RHTTKJTP.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -2,13 +2,13 @@
2
2
  "use strict";
3
3
  import {
4
4
  useKeypress
5
- } from "./chunk-3P4GP4S2.js";
5
+ } from "./chunk-75QMRMO7.js";
6
6
  import {
7
7
  require_react
8
8
  } from "./chunk-5QWWOFGG.js";
9
9
  import {
10
10
  t
11
- } from "./chunk-K64OI7S7.js";
11
+ } from "./chunk-KHUA3NQV.js";
12
12
  import {
13
13
  APPROVAL_MODES
14
14
  } from "./chunk-6WBWIPBF.js";
@@ -75,7 +75,7 @@ var LOCK_OPTIONS = {
75
75
  // Stale locks from crashed processes are expected in multi-agent
76
76
  // scenarios; log at debug level for traceability without noise.
77
77
  onCompromised: /* @__PURE__ */ __name((err) => {
78
- debug.debug("mailbox lock compromised:", err?.message ?? err);
78
+ debug.debug("mailbox lock compromised:", err);
79
79
  }, "onCompromised")
80
80
  };
81
81
  var inboxLocks = /* @__PURE__ */ new Map();
@@ -106,7 +106,11 @@ async function withInboxLock(inboxPath, fn) {
106
106
  try {
107
107
  return await fn();
108
108
  } finally {
109
- await release();
109
+ try {
110
+ await release();
111
+ } catch (error) {
112
+ debug.debug("Failed to release mailbox lock:", error);
113
+ }
110
114
  }
111
115
  });
112
116
  }
@@ -7,19 +7,19 @@ import {
7
7
  parseAcpBaseModelId,
8
8
  resolveCliGenerationConfig,
9
9
  sanitizeProviderBaseUrl
10
- } from "./chunk-WU5NBSLD.js";
10
+ } from "./chunk-5MJGUQU5.js";
11
11
  import {
12
12
  snapshotProcessEnv
13
- } from "./chunk-BWLUCN35.js";
13
+ } from "./chunk-ULPQQSDN.js";
14
14
  import {
15
15
  STATUS_SCHEMA_VERSION
16
- } from "./chunk-PDDYAXL2.js";
16
+ } from "./chunk-UGTWD35F.js";
17
17
  import {
18
18
  loadSettings
19
- } from "./chunk-RM3F46UT.js";
19
+ } from "./chunk-PPUOYL77.js";
20
20
  import {
21
21
  ModelsConfig
22
- } from "./chunk-YLL3SC5S.js";
22
+ } from "./chunk-A4VTILZT.js";
23
23
  import {
24
24
  APPROVAL_MODES
25
25
  } from "./chunk-6WBWIPBF.js";
@@ -5,12 +5,12 @@ import {
5
5
  } from "./chunk-4NFY2S7N.js";
6
6
  import {
7
7
  t
8
- } from "./chunk-K64OI7S7.js";
8
+ } from "./chunk-KHUA3NQV.js";
9
9
  import {
10
10
  fetchGitDiff,
11
11
  findProviderByCredentials,
12
12
  resolveMetadataKey
13
- } from "./chunk-YLL3SC5S.js";
13
+ } from "./chunk-A4VTILZT.js";
14
14
  import {
15
15
  init_esbuild_shims
16
16
  } from "./chunk-5O2XNYP6.js";
@@ -58,7 +58,7 @@ var LOCK_OPTIONS = {
58
58
  },
59
59
  stale: 5e3,
60
60
  onCompromised: /* @__PURE__ */ __name((err) => {
61
- debug.warn("task lock compromised:", err?.message ?? err);
61
+ debug.warn("task lock compromised:", err);
62
62
  }, "onCompromised")
63
63
  };
64
64
  var taskFileLocks = /* @__PURE__ */ new Map();
@@ -83,7 +83,11 @@ async function withTaskFileLock(taskPath, fn, onMissing) {
83
83
  try {
84
84
  return await fn();
85
85
  } finally {
86
- await release();
86
+ try {
87
+ await release();
88
+ } catch (error) {
89
+ debug.warn("Failed to release task lock:", error);
90
+ }
87
91
  }
88
92
  });
89
93
  }