@qwen-code/qwen-code 0.20.1 → 0.20.2-gdpval-vl-agent.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.
- package/bundled/qc-helper/docs/integration-github-action.md +9 -9
- package/chunks/{MaxSizedBox-4WZYPSRU.js → MaxSizedBox-KYNG7EN7.js} +10 -11
- package/chunks/{StandaloneSessionPicker-PE4JAIFA.js → StandaloneSessionPicker-7XN4WVVG.js} +25 -26
- package/chunks/{acpAgent-BVIKGJ2C.js → acpAgent-FTFFYP5G.js} +121 -80
- package/chunks/{agent-DHLFAOUV.js → agent-Y76LTTOT.js} +10 -11
- package/chunks/{agent-headless-ZP5WTNXZ.js → agent-headless-IVAEQPK6.js} +10 -11
- package/chunks/{anthropicContentGenerator-NMSS7IMV.js → anthropicContentGenerator-HGWAHO24.js} +6 -8
- package/chunks/{bridge-XAK7JKMD.js → bridge-4M77KUEV.js} +14 -15
- package/chunks/{channel-worker-group-LFBT7K64.js → channel-worker-group-QZV2SP5U.js} +3 -3
- package/chunks/{channel-worker-manager-3RUPERG2.js → channel-worker-manager-3GMAU45H.js} +3 -3
- package/chunks/{channel-worker-supervisor-A3KVATD3.js → channel-worker-supervisor-QCXSXCRY.js} +2 -2
- package/chunks/{chunk-TXRKCFWS.js → chunk-2HGTVAOW.js} +1 -1
- package/chunks/{chunk-7LH6CHKG.js → chunk-2P6CNEHB.js} +1 -1
- package/chunks/{chunk-CHXKGIMK.js → chunk-3IABAQR6.js} +1 -1
- package/chunks/chunk-3Z43GZUQ.js +32 -0
- package/chunks/{chunk-KDPIV6WC.js → chunk-4CTP6VR6.js} +1 -1
- package/chunks/{chunk-BKZEHVPV.js → chunk-5G3ZVADU.js} +148 -47
- package/chunks/{chunk-BZAEENUV.js → chunk-6GEJX3LE.js} +2 -2
- package/chunks/{chunk-JHFVJQRO.js → chunk-6HOCJNO5.js} +1 -1
- package/chunks/{chunk-5EA5NVXS.js → chunk-A3TAEAHX.js} +1 -1
- package/chunks/{chunk-KQQ757OQ.js → chunk-ACW3VNUE.js} +1 -1
- package/chunks/{chunk-3SXF4GMQ.js → chunk-AVQ6EX4J.js} +1 -1
- package/chunks/{chunk-4DSBFQMI.js → chunk-BK6UOUJ2.js} +2 -2
- package/chunks/{chunk-GEB2CGUV.js → chunk-BLAEKN6K.js} +1368 -984
- package/chunks/{chunk-M7WBGLYP.js → chunk-BULDBTYC.js} +2 -0
- package/chunks/{chunk-PPIHLGNE.js → chunk-C3EXYVFX.js} +1 -1
- package/chunks/{chunk-6PRNSLMB.js → chunk-C54UTDOC.js} +16 -17
- package/chunks/{chunk-JYS55H6Z.js → chunk-CBOQ3HY7.js} +400 -3
- package/chunks/{chunk-LPMBFOWH.js → chunk-CGZ5SV23.js} +33 -33
- package/chunks/{chunk-N5ARKAVE.js → chunk-COAARUPK.js} +6 -6
- package/chunks/{chunk-JO7FGOSY.js → chunk-E2ZK5M4P.js} +3 -3
- package/chunks/{chunk-766HLFAG.js → chunk-EEFRJ5CT.js} +3 -3
- package/chunks/{chunk-BWQRDISK.js → chunk-ESQHGKPJ.js} +1 -1
- package/chunks/{chunk-X7XWGRDT.js → chunk-FJ2IUWNQ.js} +3 -3
- package/chunks/{chunk-G6LRTI62.js → chunk-FQI7LT7T.js} +4 -4
- package/chunks/{chunk-Q2V2ADXF.js → chunk-FTNI3D7D.js} +4 -4
- package/chunks/{chunk-QD6BRERJ.js → chunk-GHRSKGHF.js} +1 -1
- package/chunks/{chunk-7SWFAKVH.js → chunk-GWM4PDYK.js} +10 -10
- package/chunks/{chunk-JTUAAVUT.js → chunk-HCJQORKC.js} +2 -2
- package/chunks/{chunk-QSJ6JIF5.js → chunk-HDATOR4J.js} +3 -3
- package/chunks/{chunk-JIBBZH37.js → chunk-HIYP7IR4.js} +23 -25
- package/chunks/{chunk-R3BCL5XW.js → chunk-HL6AKUGD.js} +3 -3
- package/chunks/{chunk-Q3GGJDYN.js → chunk-HPQFGWOD.js} +3 -3
- package/chunks/{chunk-76OFFG6L.js → chunk-IFUNDCQ6.js} +1 -1
- package/chunks/{chunk-KSZZBDVD.js → chunk-IFVECEIK.js} +25 -25
- package/chunks/{chunk-JKFHJK5U.js → chunk-IKP54WUL.js} +4 -4
- package/chunks/{chunk-27CLX4FV.js → chunk-ISMD2AB3.js} +1 -1
- package/chunks/{chunk-3KQSDUK3.js → chunk-KF6CTNTJ.js} +7 -8
- package/chunks/{chunk-PIHKWN7M.js → chunk-L5F3T6TQ.js} +1 -1
- package/chunks/{chunk-OUDZVU7H.js → chunk-L7ASZD66.js} +7 -5
- package/chunks/{chunk-JJEFX6U5.js → chunk-LESHKUWF.js} +2 -4
- package/chunks/{chunk-QUHJRRUA.js → chunk-LKB5YL5T.js} +29 -18
- package/chunks/{chunk-DPRMI6NU.js → chunk-LU3RXCM7.js} +1 -1
- package/chunks/{chunk-EFIOE2EH.js → chunk-M3EQ3GZC.js} +1 -1
- package/chunks/{chunk-TPR35HHZ.js → chunk-M4VFMLQK.js} +3 -3
- package/chunks/{chunk-6NHK6HS7.js → chunk-MDZTPSXO.js} +1 -1
- package/chunks/{chunk-D53NR4GO.js → chunk-MJPBB2GK.js} +66 -52
- package/chunks/{chunk-RYSMKY43.js → chunk-NAXEEGJU.js} +4 -4
- package/chunks/{chunk-D6ZOVZLF.js → chunk-O4OT3DM3.js} +1 -1
- package/chunks/{chunk-PBED7USE.js → chunk-OPDZT2VG.js} +1 -1
- package/chunks/{chunk-Y2DAH52F.js → chunk-P6PBZL3N.js} +4 -4
- package/chunks/{chunk-AZD6KAV7.js → chunk-PRAUGUNM.js} +3 -3
- package/chunks/{chunk-S3YQCNJE.js → chunk-PVT6E3ZI.js} +1 -1
- package/chunks/{chunk-4BRH6FP5.js → chunk-Q22WWVR6.js} +4 -4
- package/chunks/{chunk-EWXXMRMP.js → chunk-RC7A7SSL.js} +2 -2
- package/chunks/{chunk-IS2SBY6T.js → chunk-RCUEYZDE.js} +36 -2
- package/chunks/{chunk-R7MPKABX.js → chunk-RMY5SX7S.js} +70 -36
- package/chunks/{chunk-SP32MK6J.js → chunk-RTQSXHS7.js} +1 -1
- package/chunks/{chunk-PSVSP2OS.js → chunk-S333CBIA.js} +3 -3
- package/chunks/{chunk-WML6JOGQ.js → chunk-TA4S377U.js} +5 -7
- package/chunks/{chunk-5G2SK2OO.js → chunk-U6TQGUNB.js} +192 -105
- package/chunks/{chunk-MTSYH4MB.js → chunk-UKU3NGW6.js} +2 -2
- package/chunks/{chunk-3LH5Q2AR.js → chunk-UVFCANV5.js} +4 -4
- package/chunks/{chunk-NNFK277W.js → chunk-V4AKJQ26.js} +1 -1
- package/chunks/{chunk-EC2ET5ZZ.js → chunk-VJPRLNLR.js} +1 -1
- package/chunks/{chunk-7NDXG4MB.js → chunk-VTXX72XS.js} +7 -7
- package/chunks/{chunk-LYEKAAEH.js → chunk-WOWQQGGN.js} +3 -3
- package/chunks/{chunk-WCFTQD7H.js → chunk-YLSB23Y2.js} +1 -1
- package/chunks/{chunk-52T5UHAZ.js → chunk-YNWJAOPL.js} +1 -1
- package/chunks/{chunk-DRIXALGM.js → chunk-ZKFJKN23.js} +2 -2
- package/chunks/{computer-use-MV4K6WJM.js → computer-use-UKQBH7UM.js} +10 -11
- package/chunks/{config-utils-WYUQ7II4.js → config-utils-FYTBZLCJ.js} +1 -1
- package/chunks/{contextCommand-TQD36VNX.js → contextCommand-ESHGAVWX.js} +12 -13
- package/chunks/{create-sub-session-JOW4BKMC.js → create-sub-session-574EPZUU.js} +10 -11
- package/chunks/{daemon-KLPTQIE4.js → daemon-GJRFILYS.js} +185 -18
- package/chunks/{daemon-status-provider-TII4SMCZ.js → daemon-status-provider-GZXZP3NU.js} +18 -19
- package/chunks/{earlyInputCapture-2V57RG6H.js → earlyInputCapture-GI3HGQIT.js} +10 -11
- package/chunks/{edit-TTUH7PWR.js → edit-EBJK74B3.js} +10 -11
- package/chunks/{enter-worktree-D4IVCXYB.js → enter-worktree-2ETY5CSV.js} +10 -11
- package/chunks/{enterPlanMode-WRUJTVYN.js → enterPlanMode-NY4U2727.js} +10 -11
- package/chunks/{environment-SEPKXB2C.js → environment-33IR3NOU.js} +12 -13
- package/chunks/{errors-YSVGBLBU.js → errors-2OCY23IC.js} +12 -13
- package/chunks/{exit-worktree-MZ4JSSP6.js → exit-worktree-Y4ULJ45U.js} +10 -11
- package/chunks/{exitPlanMode-HAZLSSOJ.js → exitPlanMode-SECI2EQ6.js} +10 -11
- package/chunks/{fast-path-EVBVIE2U.js → fast-path-6Z7RW5J5.js} +3 -3
- package/chunks/{fast-path-settings-XB3CPUJT.js → fast-path-settings-DAOVFADC.js} +2 -2
- package/chunks/{gemini-APQ76464.js → gemini-XLGLUGSU.js} +53 -54
- package/chunks/{geminiContentGenerator-LB4MA2LI.js → geminiContentGenerator-NNZZDH24.js} +1 -1
- package/chunks/{glob-LABYMYKG.js → glob-KZA64SSV.js} +10 -11
- package/chunks/{grep-HKIKJCAS.js → grep-ONHQMY3V.js} +10 -11
- package/chunks/{handleAutoUpdate-RWAAL2UM.js → handleAutoUpdate-PRTJISXQ.js} +15 -16
- package/chunks/{i18n-ZUVDAJIJ.js → i18n-ZTKKG5R5.js} +11 -12
- package/chunks/{initializer-7YUHIC36.js → initializer-FPPZGBYN.js} +16 -17
- package/chunks/{installationInfo-DVEOMWDE.js → installationInfo-DV2C27HT.js} +11 -12
- package/chunks/{list-WHCZSIR2.js → list-KEHCNUAK.js} +19 -20
- package/chunks/{loadedSettingsAdapter-YCWN6AK3.js → loadedSettingsAdapter-7RZ6M3WH.js} +16 -17
- package/chunks/{managed-npm-update-PG3463CJ.js → managed-npm-update-EBKNOG37.js} +11 -12
- package/chunks/{mcp-VLHDCKAN.js → mcp-NHXKZRRP.js} +16 -17
- package/chunks/{monitor-GG4F4YM6.js → monitor-FMUAIFFH.js} +10 -11
- package/chunks/{nonInteractiveCli-UYXYV4YX.js → nonInteractiveCli-I2GPZNTP.js} +46 -47
- package/chunks/{notebook-edit-US4VLN6Q.js → notebook-edit-V7RNXKVL.js} +10 -11
- package/chunks/{openaiContentGenerator-CVEDTMDB.js → openaiContentGenerator-IBVUUZDH.js} +7 -8
- package/chunks/{pidfile-QQ45OIOY.js → pidfile-AMTGL2H2.js} +10 -11
- package/chunks/{processUtils-3WMHLQE5.js → processUtils-3ZT2JF6D.js} +2 -2
- package/chunks/{qwenContentGenerator-Y2GRNYZQ.js → qwenContentGenerator-E72VVWS3.js} +15 -16
- package/chunks/{qwenOAuth2-J2X6E5VO.js → qwenOAuth2-YCC3HP24.js} +7 -8
- package/chunks/{read-file-C7Z266CU.js → read-file-5EWNGUXN.js} +4 -4
- package/chunks/{resumeHistoryUtils-KBQWX77U.js → resumeHistoryUtils-IH4RNB76.js} +13 -14
- package/chunks/{ripGrep-RW26MTQ3.js → ripGrep-B6A6N7GI.js} +10 -11
- package/chunks/{run-qwen-serve-MXFMOMEL.js → run-qwen-serve-6PKSMF6Z.js} +67 -48
- package/chunks/{runtime-APNO3V6D.js → runtime-ASRANXO6.js} +18 -19
- package/chunks/{scheduler-L6FYCGVO.js → scheduler-IABM76UZ.js} +10 -11
- package/chunks/{sdk-exporters-http-IDGLRBGP.js → sdk-exporters-http-6MCQH335.js} +2 -2
- package/chunks/{sdk-impl-5ESZBGJQ.js → sdk-impl-HOLWAXC6.js} +9 -2
- package/chunks/{send-message-PYIJ2PZL.js → send-message-KBO6X4ZS.js} +1 -1
- package/chunks/{serve-6QBXDVWT.js → serve-A4DT5D32.js} +16 -17
- package/chunks/{server-5TJJEMVQ.js → server-DZ5ZSVRE.js} +1322 -178
- package/chunks/{session-BWEUHKQB.js → session-G2R3CYU6.js} +49 -50
- package/chunks/{settings-O7IUQNRR.js → settings-7TNSXUTO.js} +18 -19
- package/chunks/{shell-R5L4NQYY.js → shell-5BRFGEMK.js} +10 -11
- package/chunks/{skill-ITEOSNW6.js → skill-3SWYEK7M.js} +4 -4
- package/chunks/{spawnChannel-E7NTWSGW.js → spawnChannel-GGN2WVWW.js} +12 -13
- package/chunks/{src-FFXGUTNL.js → src-5BPBNQ5S.js} +45 -33
- package/chunks/{standalone-update-JCJOXW4P.js → standalone-update-AHOZ56LS.js} +13 -14
- package/chunks/{startInteractiveUI-IJSBLZFO.js → startInteractiveUI-TLGOQVV7.js} +150 -144
- package/chunks/{team-create-OVSZTJZO.js → team-create-XHDF7UKM.js} +10 -11
- package/chunks/{team-plan-approval-SLEVDLT5.js → team-plan-approval-XKSBXWMH.js} +10 -11
- package/chunks/{theme-manager-V6ZQISHM.js → theme-manager-6ZKLBFAN.js} +10 -11
- package/chunks/{tool-search-KYIF6C6E.js → tool-search-UDNJCXYS.js} +4 -4
- package/chunks/{total-session-admission-EU77XTL7.js → total-session-admission-VWRCCDYM.js} +14 -15
- package/chunks/{tree-sitter-4D7QS7F6.js → tree-sitter-L5BFT64K.js} +1 -1
- package/chunks/{tree-sitter-bash-VEJGF5XF.js → tree-sitter-bash-ZKDNQGID.js} +1 -1
- package/chunks/{trustedFolders-DDEF3ADH.js → trustedFolders-TJI6OLAN.js} +11 -12
- package/chunks/{chunk-5I5BM454.js → undici-3FJYTMOF.js} +24 -399
- package/chunks/{chunk-L573Z2QZ.js → undici-PYHBDDPN.js} +1 -5
- package/chunks/{update-relaunch-XEZTDP6K.js → update-relaunch-RS5GB74A.js} +5 -5
- package/chunks/{updateCheck-KZ5LZ545.js → updateCheck-T4EEA5YR.js} +13 -14
- package/chunks/{useAutoAcceptIndicator-47EZERGQ.js → useAutoAcceptIndicator-LLWMXC7F.js} +18 -19
- package/chunks/{validateNonInterActiveAuth-J2DM4LWZ.js → validateNonInterActiveAuth-OJ3KYXAR.js} +43 -44
- package/chunks/{version-PN7WYXHP.js → version-ZCEUV5DO.js} +1 -1
- package/chunks/{web-fetch-WRI5QRFR.js → web-fetch-KQF4YFCI.js} +6 -7
- package/chunks/{web-search-2HCXNAVX.js → web-search-QDDGFGKI.js} +13 -12
- package/chunks/{workflow-U5XBPGQZ.js → workflow-GIRKCX4P.js} +11 -12
- package/chunks/{workspace-providers-status-2T54GIJZ.js → workspace-providers-status-UTMAVTNE.js} +19 -20
- package/chunks/{workspace-registration-store-F3V4KBIW.js → workspace-registration-store-EYJMJFZU.js} +1 -1
- package/chunks/{workspace-registry-U6QVZ5BU.js → workspace-registry-4W4UW6MY.js} +14 -15
- package/chunks/{workspace-service-734D36QD.js → workspace-service-DJCPY6ZN.js} +21 -22
- package/chunks/{workspace-skills-status-5ABUKOAQ.js → workspace-skills-status-VQ2LKXXX.js} +17 -18
- package/chunks/{write-file-CIH4I4CS.js → write-file-PLK6RQ7M.js} +10 -11
- package/cli.js +12 -12
- package/package.json +3 -3
- package/web-shell/assets/{arc-ByltRugA.js → arc-DIQrcXXh.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-CCRTto5d.js → architectureDiagram-3BPJPVTR-CbPd-DSw.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-Jfy36u1L.js → blockDiagram-GPEHLZMM-yzBIVhMX.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-4d5FfEZ0.js → c4Diagram-AAUBKEIU-B88Swcsu.js} +1 -1
- package/web-shell/assets/channel-BaTMUesZ.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-BPwxCEro.js → chunk-2J33WTMH-BbOLo6NX.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-jY7ZmJWY.js → chunk-4BX2VUAB-Bg6in0r0.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-C98HgCsS.js → chunk-55IACEB6-Bv9QRyLI.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-cDu-ge-q.js → chunk-727SXJPM-CFokiv61.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-BKdJwxXK.js → chunk-AQP2D5EJ-DS2Oxf6L.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-DnuxqwMu.js → chunk-FMBD7UC4-D2NkHD3B.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-C4fZNPv0.js → chunk-ND2GUHAM-BsT_UC5B.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-Cf4XWOmz.js → chunk-QZHKN3VN-tnJo3zln.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-CyBPzWud.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CyBPzWud.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-C82mFiqj.js → cose-bilkent-S5V4N54A-BTMa6DAZ.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-Df8KACER.js → dagre-BM42HDAG-ujGX7Owg.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-EzNs7s_2.js → diagram-2AECGRRQ-fU4-dbPa.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-BRLNvreg.js → diagram-5GNKFQAL-Bdm-TYSA.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-2HLYHRjC.js → diagram-KO2AKTUF-Bkhz85Z9.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-DeH0NzSp.js → diagram-LMA3HP47-Bzu3q26p.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-k5Gn47-G.js → diagram-OG6HWLK6-CZrXbG5Q.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-gPHFo79f.js → erDiagram-TEJ5UH35-BjozEAYu.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-DYBOiTRW.js → flowDiagram-I6XJVG4X-B3a2I8c-.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-cxjAuic9.js → ganttDiagram-6RSMTGT7-CIMn9fNm.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-3nPqpmCP.js → gitGraphDiagram-PVQCEYII-DlFy9KRx.js} +1 -1
- package/web-shell/assets/{index-Cl8d-1bK.js → index-BODUAzQA.js} +1 -1
- package/web-shell/assets/index-C54DNMF7.js +1209 -0
- package/web-shell/assets/index-lWqBfc78.css +5 -0
- package/web-shell/assets/{infoDiagram-5YYISTIA-Dph21pR5.js → infoDiagram-5YYISTIA-BmKjQgCy.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-Cjg1hSaG.js → ishikawaDiagram-YF4QCWOH-BrQEMZz2.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-CR-IzvnU.js → journeyDiagram-JHISSGLW-D-2r7Xrt.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-BYmuybuC.js → kanban-definition-UN3LZRKU-CndsFHCX.js} +1 -1
- package/web-shell/assets/{linear-CngEEoy8.js → linear-D-IwNnKx.js} +1 -1
- package/web-shell/assets/{mermaid.core-G6fbZRPf.js → mermaid.core-4ll09sri.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-BtnqnUwJ.js → mindmap-definition-RKZ34NQL-maMRIxjo.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-XTq6UHIA.js → pieDiagram-4H26LBE5-aunUDhrJ.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-D1J5PrsS.js → quadrantDiagram-W4KKPZXB-D3K0P1NZ.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-CLcBUy3t.js → requirementDiagram-4Y6WPE33-CX2X9HRc.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-iwKV02_6.js → sankeyDiagram-5OEKKPKP-CDroWk7l.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-7NFYQcEX.js → sequenceDiagram-3UESZ5HK-DTk-2b16.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-Bvm4Wih6.js → stateDiagram-AJRCARHV-Cud64hQr.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-g-uUpecT.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-B4FZFE9O.js → timeline-definition-PNZ67QCA-DfD5okf_.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-CvMBpmtL.js → vennDiagram-CIIHVFJN-BYl8ay25.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-E3ag2327.js → wardley-L42UT6IY-BZFAt10J.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-BEXWlgxC.js → wardleyDiagram-YWT4CUSO-BIWn0GA7.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-CICK05gI.js → xychartDiagram-2RQKCTM6-1_H4xblT.js} +1 -1
- package/web-shell/index.html +2 -2
- package/web-shell/assets/channel-4N2UIFcG.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-Q4dYOtsh.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-Q4dYOtsh.js +0 -1
- package/web-shell/assets/index-B7jzUZ_s.css +0 -5
- package/web-shell/assets/index-gE8OWwj_.js +0 -1197
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-xXU_zO2Z.js +0 -1
- package/chunks/{chunk-D7WXIW7H.js → chunk-H24SOJIQ.js} +3 -3
- package/chunks/{chunk-QZJY47IE.js → chunk-PEJWA3QQ.js} +5 -5
- package/chunks/{dist-HMU6CYS4.js → dist-XBJVSWS2.js} +1 -1
|
@@ -57,6 +57,7 @@ var EVENT_ARENA_SESSION_ENDED = "qwen-code.arena_session_ended";
|
|
|
57
57
|
var EVENT_MEMORY_EXTRACT = "qwen-code.memory.extract";
|
|
58
58
|
var EVENT_MEMORY_DREAM = "qwen-code.memory.dream";
|
|
59
59
|
var EVENT_MEMORY_RECALL = "qwen-code.memory.recall";
|
|
60
|
+
var EVENT_MEMORY_RECALL_DELIVERY = "qwen-code.memory.recall.delivery";
|
|
60
61
|
var SPAN_INTERACTION = "qwen-code.interaction";
|
|
61
62
|
var SPAN_LLM_REQUEST = "qwen-code.llm_request";
|
|
62
63
|
var SPAN_TOOL = "qwen-code.tool";
|
|
@@ -135,6 +136,7 @@ export {
|
|
|
135
136
|
EVENT_MEMORY_EXTRACT,
|
|
136
137
|
EVENT_MEMORY_DREAM,
|
|
137
138
|
EVENT_MEMORY_RECALL,
|
|
139
|
+
EVENT_MEMORY_RECALL_DELIVERY,
|
|
138
140
|
SPAN_INTERACTION,
|
|
139
141
|
SPAN_LLM_REQUEST,
|
|
140
142
|
SPAN_TOOL,
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
// Force strict mode and setup for ESM
|
|
2
2
|
"use strict";
|
|
3
|
+
import {
|
|
4
|
+
formatHistoryGapNotice
|
|
5
|
+
} from "./chunk-V4AKJQ26.js";
|
|
3
6
|
import {
|
|
4
7
|
sanitizeTerminalText
|
|
5
8
|
} from "./chunk-RS7MT2QG.js";
|
|
6
|
-
import {
|
|
7
|
-
formatHistoryGapNotice
|
|
8
|
-
} from "./chunk-NNFK277W.js";
|
|
9
9
|
import {
|
|
10
10
|
isGoalStatusKind,
|
|
11
11
|
isTerminalGoalStatusKind
|
|
12
12
|
} from "./chunk-QTERJVPZ.js";
|
|
13
13
|
import {
|
|
14
|
-
|
|
15
|
-
} from "./chunk-
|
|
14
|
+
loadUndici
|
|
15
|
+
} from "./chunk-3Z43GZUQ.js";
|
|
16
16
|
import {
|
|
17
17
|
writeStderrLine,
|
|
18
18
|
writeStderrLineSafe
|
|
@@ -23,12 +23,12 @@ import {
|
|
|
23
23
|
setGoalTerminalObserver,
|
|
24
24
|
setLastGoalTerminal,
|
|
25
25
|
unregisterGoalHook
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-BLAEKN6K.js";
|
|
27
27
|
import {
|
|
28
28
|
apiActivityTracker,
|
|
29
29
|
formatVisionBridgeNoticeDisplay,
|
|
30
30
|
isVisionBridgeNoticeDisplay
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-U6TQGUNB.js";
|
|
32
32
|
import {
|
|
33
33
|
ToolNames
|
|
34
34
|
} from "./chunk-YM3SZTH4.js";
|
|
@@ -39,8 +39,7 @@ import {
|
|
|
39
39
|
init_esbuild_shims
|
|
40
40
|
} from "./chunk-5O2XNYP6.js";
|
|
41
41
|
import {
|
|
42
|
-
__name
|
|
43
|
-
__toESM
|
|
42
|
+
__name
|
|
44
43
|
} from "./chunk-J2S4EL5Y.js";
|
|
45
44
|
|
|
46
45
|
// packages/cli/src/ui/utils/restoreGoal.ts
|
|
@@ -234,13 +233,11 @@ __name(restoreGoalFromHistory, "restoreGoalFromHistory");
|
|
|
234
233
|
|
|
235
234
|
// packages/cli/src/services/setup-github.ts
|
|
236
235
|
init_esbuild_shims();
|
|
237
|
-
var import_undici2 = __toESM(require_undici(), 1);
|
|
238
236
|
import { promises as fsp } from "node:fs";
|
|
239
237
|
import * as path from "node:path";
|
|
240
238
|
|
|
241
239
|
// packages/cli/src/utils/gitUtils.ts
|
|
242
240
|
init_esbuild_shims();
|
|
243
|
-
var import_undici = __toESM(require_undici(), 1);
|
|
244
241
|
import * as childProcess from "node:child_process";
|
|
245
242
|
var debugLogger = createDebugLogger("GIT");
|
|
246
243
|
async function runGit(args, opts = {}) {
|
|
@@ -300,6 +297,7 @@ var getLatestGitHubRelease = /* @__PURE__ */ __name(async (proxy) => {
|
|
|
300
297
|
try {
|
|
301
298
|
const controller = new AbortController();
|
|
302
299
|
const endpoint = `https://api.github.com/repos/QwenLM/qwen-code-action/releases/latest`;
|
|
300
|
+
const dispatcher = proxy ? new (await loadUndici()).ProxyAgent(proxy) : void 0;
|
|
303
301
|
const response = await fetch(endpoint, {
|
|
304
302
|
method: "GET",
|
|
305
303
|
headers: {
|
|
@@ -307,7 +305,7 @@ var getLatestGitHubRelease = /* @__PURE__ */ __name(async (proxy) => {
|
|
|
307
305
|
"Content-Type": "application/json",
|
|
308
306
|
"X-GitHub-Api-Version": "2022-11-28"
|
|
309
307
|
},
|
|
310
|
-
dispatcher
|
|
308
|
+
dispatcher,
|
|
311
309
|
signal: AbortSignal.any([AbortSignal.timeout(3e4), controller.signal])
|
|
312
310
|
});
|
|
313
311
|
if (!response.ok) {
|
|
@@ -584,7 +582,7 @@ __name(updateGitignore, "updateGitignore");
|
|
|
584
582
|
async function downloadWorkflows(options) {
|
|
585
583
|
const internalAbort = new AbortController();
|
|
586
584
|
try {
|
|
587
|
-
const dispatcher = options.proxy ? new
|
|
585
|
+
const dispatcher = options.proxy ? new (await loadUndici()).ProxyAgent(options.proxy) : void 0;
|
|
588
586
|
return await Promise.all(
|
|
589
587
|
GITHUB_WORKFLOW_PATHS.map(async (workflow) => {
|
|
590
588
|
const endpoint = `https://raw.githubusercontent.com/QwenLM/qwen-code-action/refs/tags/${options.releaseTag}/examples/workflows/${workflow}`;
|
|
@@ -679,9 +677,6 @@ async function realpathOrResolve(input) {
|
|
|
679
677
|
}
|
|
680
678
|
__name(realpathOrResolve, "realpathOrResolve");
|
|
681
679
|
|
|
682
|
-
// packages/cli/src/acp-integration/session/emitters/MessageEmitter.ts
|
|
683
|
-
init_esbuild_shims();
|
|
684
|
-
|
|
685
680
|
// packages/acp-bridge/src/transcript-replay.ts
|
|
686
681
|
init_esbuild_shims();
|
|
687
682
|
var MISSING_TRANSCRIPT_TOOL_RESULT_MESSAGE = "Tool result missing from saved history; the previous run likely ended before this tool completed.";
|
|
@@ -1537,6 +1532,9 @@ function dedupeStrings(values) {
|
|
|
1537
1532
|
}
|
|
1538
1533
|
__name(dedupeStrings, "dedupeStrings");
|
|
1539
1534
|
|
|
1535
|
+
// packages/cli/src/acp-integration/session/emitters/MessageEmitter.ts
|
|
1536
|
+
init_esbuild_shims();
|
|
1537
|
+
|
|
1540
1538
|
// packages/cli/src/acp-integration/session/emitters/base-emitter.ts
|
|
1541
1539
|
init_esbuild_shims();
|
|
1542
1540
|
var BaseEmitter = class {
|
|
@@ -2498,7 +2496,7 @@ async function extractMetadata(conversation, config) {
|
|
|
2498
2496
|
const gitBranch = firstRecord?.gitBranch;
|
|
2499
2497
|
let gitRepo;
|
|
2500
2498
|
if (cwd) {
|
|
2501
|
-
const { getGitRepoName } = await import("./src-
|
|
2499
|
+
const { getGitRepoName } = await import("./src-5BPBNQ5S.js");
|
|
2502
2500
|
gitRepo = getGitRepoName(cwd);
|
|
2503
2501
|
}
|
|
2504
2502
|
let model;
|
|
@@ -3353,6 +3351,7 @@ export {
|
|
|
3353
3351
|
GITHUB_WORKFLOW_PATHS,
|
|
3354
3352
|
SetupGithubError,
|
|
3355
3353
|
setupGithub,
|
|
3354
|
+
createTranscriptMessageUpdate,
|
|
3356
3355
|
MessageEmitter,
|
|
3357
3356
|
PlanEmitter,
|
|
3358
3357
|
ToolCallEmitter,
|
|
@@ -676,6 +676,390 @@ function asOptionalRecord(value) {
|
|
|
676
676
|
}
|
|
677
677
|
__name(asOptionalRecord, "asOptionalRecord");
|
|
678
678
|
|
|
679
|
+
// packages/core/src/utils/runtimeFetchOptions.ts
|
|
680
|
+
init_esbuild_shims();
|
|
681
|
+
var debugLogger = createDebugLogger("RUNTIME_FETCH");
|
|
682
|
+
var undiciModule;
|
|
683
|
+
var undiciModulePromise;
|
|
684
|
+
async function loadUndici() {
|
|
685
|
+
undiciModulePromise ??= import("./undici-3FJYTMOF.js").then((mod) => {
|
|
686
|
+
const keys = Object.keys(mod);
|
|
687
|
+
if (keys.length === 1 && keys[0] === "default") {
|
|
688
|
+
return mod.default;
|
|
689
|
+
}
|
|
690
|
+
return mod;
|
|
691
|
+
});
|
|
692
|
+
return undiciModulePromise;
|
|
693
|
+
}
|
|
694
|
+
__name(loadUndici, "loadUndici");
|
|
695
|
+
async function preloadRuntimeFetchModule() {
|
|
696
|
+
if (undiciModule) return;
|
|
697
|
+
undiciModule = await loadUndici();
|
|
698
|
+
}
|
|
699
|
+
__name(preloadRuntimeFetchModule, "preloadRuntimeFetchModule");
|
|
700
|
+
function requireUndici() {
|
|
701
|
+
if (!undiciModule) {
|
|
702
|
+
throw new Error(
|
|
703
|
+
"undici is not loaded yet; await preloadRuntimeFetchModule() before building runtime fetch options or dispatchers"
|
|
704
|
+
);
|
|
705
|
+
}
|
|
706
|
+
return undiciModule;
|
|
707
|
+
}
|
|
708
|
+
__name(requireUndici, "requireUndici");
|
|
709
|
+
function isTlsVerificationDisabled() {
|
|
710
|
+
const flag = process.env["QWEN_TLS_INSECURE"];
|
|
711
|
+
if (flag !== void 0 && /^(1|true|yes|on)$/i.test(flag.trim())) {
|
|
712
|
+
return true;
|
|
713
|
+
}
|
|
714
|
+
return process.env["NODE_TLS_REJECT_UNAUTHORIZED"] === "0";
|
|
715
|
+
}
|
|
716
|
+
__name(isTlsVerificationDisabled, "isTlsVerificationDisabled");
|
|
717
|
+
function detectRuntime() {
|
|
718
|
+
if (typeof process !== "undefined" && process.versions?.["bun"]) {
|
|
719
|
+
return "bun";
|
|
720
|
+
}
|
|
721
|
+
if (typeof process !== "undefined" && process.versions?.node) {
|
|
722
|
+
return "node";
|
|
723
|
+
}
|
|
724
|
+
return "unknown";
|
|
725
|
+
}
|
|
726
|
+
__name(detectRuntime, "detectRuntime");
|
|
727
|
+
function buildRuntimeFetchOptions(sdkType, proxyUrl) {
|
|
728
|
+
const runtime = detectRuntime();
|
|
729
|
+
switch (runtime) {
|
|
730
|
+
case "bun": {
|
|
731
|
+
if (sdkType === "openai") {
|
|
732
|
+
return {
|
|
733
|
+
fetchOptions: {
|
|
734
|
+
timeout: false
|
|
735
|
+
}
|
|
736
|
+
};
|
|
737
|
+
} else {
|
|
738
|
+
const bunFetch = /* @__PURE__ */ __name(async (input, init) => {
|
|
739
|
+
const bunFetchOptions = {
|
|
740
|
+
...init,
|
|
741
|
+
// @ts-expect-error - Bun-specific timeout option
|
|
742
|
+
timeout: false
|
|
743
|
+
};
|
|
744
|
+
return fetch(input, bunFetchOptions);
|
|
745
|
+
}, "bunFetch");
|
|
746
|
+
return {
|
|
747
|
+
fetch: bunFetch
|
|
748
|
+
};
|
|
749
|
+
}
|
|
750
|
+
}
|
|
751
|
+
case "node": {
|
|
752
|
+
return buildFetchOptionsWithDispatcher(sdkType, proxyUrl);
|
|
753
|
+
}
|
|
754
|
+
default: {
|
|
755
|
+
return buildFetchOptionsWithDispatcher(sdkType, proxyUrl);
|
|
756
|
+
}
|
|
757
|
+
}
|
|
758
|
+
}
|
|
759
|
+
__name(buildRuntimeFetchOptions, "buildRuntimeFetchOptions");
|
|
760
|
+
var dispatcherCache = /* @__PURE__ */ new Map();
|
|
761
|
+
var proxyFailureCounts = /* @__PURE__ */ new Map();
|
|
762
|
+
var NO_DISPATCHER_FALLBACK = {
|
|
763
|
+
openai: void 0,
|
|
764
|
+
anthropic: {}
|
|
765
|
+
};
|
|
766
|
+
function getOrCreateSharedDispatcher(proxyUrl, insecure = isTlsVerificationDisabled()) {
|
|
767
|
+
const cacheKey = insecure ? `${proxyUrl}#insecure` : proxyUrl;
|
|
768
|
+
const cached = dispatcherCache.get(cacheKey);
|
|
769
|
+
if (cached) {
|
|
770
|
+
return cached;
|
|
771
|
+
}
|
|
772
|
+
const { EnvHttpProxyAgent } = requireUndici();
|
|
773
|
+
const dispatcher = new EnvHttpProxyAgent({
|
|
774
|
+
httpProxy: proxyUrl,
|
|
775
|
+
httpsProxy: proxyUrl,
|
|
776
|
+
headersTimeout: 0,
|
|
777
|
+
bodyTimeout: 0,
|
|
778
|
+
keepAliveTimeout: 6e4,
|
|
779
|
+
// EnvHttpProxyAgent can dispatch either directly or through a proxy.
|
|
780
|
+
// `connect` covers a direct NO_PROXY connection, `requestTls` covers the
|
|
781
|
+
// origin through a proxy, and `proxyTls` covers an HTTPS proxy itself.
|
|
782
|
+
...insecure ? {
|
|
783
|
+
connect: { rejectUnauthorized: false },
|
|
784
|
+
requestTls: { rejectUnauthorized: false },
|
|
785
|
+
proxyTls: { rejectUnauthorized: false }
|
|
786
|
+
} : {}
|
|
787
|
+
});
|
|
788
|
+
dispatcherCache.set(cacheKey, dispatcher);
|
|
789
|
+
return dispatcher;
|
|
790
|
+
}
|
|
791
|
+
__name(getOrCreateSharedDispatcher, "getOrCreateSharedDispatcher");
|
|
792
|
+
function extractHostnameFromProxyUrl(proxyUrl) {
|
|
793
|
+
try {
|
|
794
|
+
const url = new URL(proxyUrl);
|
|
795
|
+
if (url.hostname) {
|
|
796
|
+
return url.port ? `${url.hostname}:${url.port}` : url.hostname;
|
|
797
|
+
}
|
|
798
|
+
} catch {
|
|
799
|
+
}
|
|
800
|
+
const match = proxyUrl.match(/@([^:/\s]+)(:\d+)?/);
|
|
801
|
+
return match ? match[1] + (match[2] ?? "") : redactProxyCredentials(proxyUrl);
|
|
802
|
+
}
|
|
803
|
+
__name(extractHostnameFromProxyUrl, "extractHostnameFromProxyUrl");
|
|
804
|
+
function hasPlausibleProxyPort(host) {
|
|
805
|
+
const portMatch = host.match(/:(\d{1,5})$/);
|
|
806
|
+
if (!portMatch) {
|
|
807
|
+
return false;
|
|
808
|
+
}
|
|
809
|
+
const port = Number(portMatch[1]);
|
|
810
|
+
return port >= 80 && port <= 65535;
|
|
811
|
+
}
|
|
812
|
+
__name(hasPlausibleProxyPort, "hasPlausibleProxyPort");
|
|
813
|
+
function hasLocalOrProxyLikeHost(host) {
|
|
814
|
+
const hostWithoutPort = host.replace(/:\d{1,5}$/, "").toLowerCase();
|
|
815
|
+
if (hostWithoutPort === "localhost") {
|
|
816
|
+
return true;
|
|
817
|
+
}
|
|
818
|
+
if (/^\d{1,3}(\.\d{1,3}){3}$/.test(hostWithoutPort)) {
|
|
819
|
+
return true;
|
|
820
|
+
}
|
|
821
|
+
return hostWithoutPort.split(/[.-]/).some((label) => /^(proxy|gateway|gw|squid)\d*$/.test(label));
|
|
822
|
+
}
|
|
823
|
+
__name(hasLocalOrProxyLikeHost, "hasLocalOrProxyLikeHost");
|
|
824
|
+
function hasNetworkErrorContext(message, offset) {
|
|
825
|
+
const context = message.slice(Math.max(0, offset - 80), offset).toLowerCase();
|
|
826
|
+
return /\b(connect|dispatcher|econnrefused|econnreset|enotfound|etimedout|proxy|tunnel)\b/.test(
|
|
827
|
+
context
|
|
828
|
+
);
|
|
829
|
+
}
|
|
830
|
+
__name(hasNetworkErrorContext, "hasNetworkErrorContext");
|
|
831
|
+
function shouldRedactTokenOnlyCredential(host, message, offset) {
|
|
832
|
+
return hasPlausibleProxyPort(host) && (hasLocalOrProxyLikeHost(host) || hasNetworkErrorContext(message, offset));
|
|
833
|
+
}
|
|
834
|
+
__name(shouldRedactTokenOnlyCredential, "shouldRedactTokenOnlyCredential");
|
|
835
|
+
function redactProxyCredentials(message) {
|
|
836
|
+
let result = message.replace(/\/\/[^/\s]*@/g, "//<redacted>@");
|
|
837
|
+
result = result.replace(
|
|
838
|
+
/(^|[\s([=:])([^\s/@()[\]=]+@[^@\s/()[\]=]+)/g,
|
|
839
|
+
(match, prefix, candidate, offset, message2) => {
|
|
840
|
+
const atIndex = candidate.indexOf("@");
|
|
841
|
+
const userInfo = candidate.slice(0, atIndex);
|
|
842
|
+
const host = candidate.slice(atIndex + 1);
|
|
843
|
+
if (!userInfo.includes(":") && !shouldRedactTokenOnlyCredential(host, message2, offset)) {
|
|
844
|
+
return match;
|
|
845
|
+
}
|
|
846
|
+
return `${prefix}<redacted>@${host}`;
|
|
847
|
+
}
|
|
848
|
+
);
|
|
849
|
+
return result;
|
|
850
|
+
}
|
|
851
|
+
__name(redactProxyCredentials, "redactProxyCredentials");
|
|
852
|
+
function redactProxyError(error) {
|
|
853
|
+
return redactProxyErrorValue(error, /* @__PURE__ */ new WeakMap());
|
|
854
|
+
}
|
|
855
|
+
__name(redactProxyError, "redactProxyError");
|
|
856
|
+
function redactProxyErrorValue(error, seen) {
|
|
857
|
+
if (typeof error === "string") {
|
|
858
|
+
return redactProxyCredentials(error);
|
|
859
|
+
}
|
|
860
|
+
if (!error || typeof error !== "object") {
|
|
861
|
+
return error;
|
|
862
|
+
}
|
|
863
|
+
if (seen.has(error)) {
|
|
864
|
+
return seen.get(error);
|
|
865
|
+
}
|
|
866
|
+
const errorRecord = error;
|
|
867
|
+
const needsClone = shouldCloneForRedaction(error, errorRecord);
|
|
868
|
+
const redactedMessage = typeof errorRecord.message === "string" ? redactProxyCredentials(errorRecord.message) : void 0;
|
|
869
|
+
const redactedStack = typeof errorRecord.stack === "string" ? redactProxyCredentials(errorRecord.stack) : void 0;
|
|
870
|
+
let redactedCause = errorRecord.cause;
|
|
871
|
+
let redactedErrors = errorRecord.errors;
|
|
872
|
+
if (needsClone) {
|
|
873
|
+
const clone = Object.create(Object.getPrototypeOf(error));
|
|
874
|
+
seen.set(error, clone);
|
|
875
|
+
if (errorRecord.cause !== void 0) {
|
|
876
|
+
redactedCause = redactProxyErrorValue(errorRecord.cause, seen);
|
|
877
|
+
}
|
|
878
|
+
if (errorRecord.errors !== void 0) {
|
|
879
|
+
redactedErrors = redactProxyErrorCollection(errorRecord.errors, seen);
|
|
880
|
+
}
|
|
881
|
+
cloneErrorWithRedactedFields(
|
|
882
|
+
error,
|
|
883
|
+
clone,
|
|
884
|
+
redactedMessage,
|
|
885
|
+
redactedStack,
|
|
886
|
+
redactedCause,
|
|
887
|
+
redactedErrors
|
|
888
|
+
);
|
|
889
|
+
return clone;
|
|
890
|
+
}
|
|
891
|
+
seen.set(error, error);
|
|
892
|
+
try {
|
|
893
|
+
if (redactedMessage !== void 0) {
|
|
894
|
+
errorRecord.message = redactedMessage;
|
|
895
|
+
}
|
|
896
|
+
if (redactedStack !== void 0) {
|
|
897
|
+
errorRecord.stack = redactedStack;
|
|
898
|
+
}
|
|
899
|
+
if (errorRecord.cause !== void 0) {
|
|
900
|
+
redactedCause = redactProxyErrorValue(errorRecord.cause, seen);
|
|
901
|
+
errorRecord.cause = redactedCause;
|
|
902
|
+
}
|
|
903
|
+
if (errorRecord.errors !== void 0) {
|
|
904
|
+
redactedErrors = redactProxyErrorCollection(errorRecord.errors, seen);
|
|
905
|
+
errorRecord.errors = redactedErrors;
|
|
906
|
+
}
|
|
907
|
+
return error;
|
|
908
|
+
} catch {
|
|
909
|
+
const clone = Object.create(Object.getPrototypeOf(error));
|
|
910
|
+
seen.set(error, clone);
|
|
911
|
+
if (errorRecord.cause !== void 0) {
|
|
912
|
+
redactedCause = redactProxyErrorValue(errorRecord.cause, seen);
|
|
913
|
+
}
|
|
914
|
+
if (errorRecord.errors !== void 0) {
|
|
915
|
+
redactedErrors = redactProxyErrorCollection(errorRecord.errors, seen);
|
|
916
|
+
}
|
|
917
|
+
cloneErrorWithRedactedFields(
|
|
918
|
+
error,
|
|
919
|
+
clone,
|
|
920
|
+
redactedMessage,
|
|
921
|
+
redactedStack,
|
|
922
|
+
redactedCause,
|
|
923
|
+
redactedErrors
|
|
924
|
+
);
|
|
925
|
+
return clone;
|
|
926
|
+
}
|
|
927
|
+
}
|
|
928
|
+
__name(redactProxyErrorValue, "redactProxyErrorValue");
|
|
929
|
+
function redactProxyErrorCollection(errors, seen) {
|
|
930
|
+
if (!Array.isArray(errors)) {
|
|
931
|
+
return redactProxyErrorValue(errors, seen);
|
|
932
|
+
}
|
|
933
|
+
if (seen.has(errors)) {
|
|
934
|
+
return seen.get(errors);
|
|
935
|
+
}
|
|
936
|
+
const redactedErrors = [];
|
|
937
|
+
seen.set(errors, redactedErrors);
|
|
938
|
+
for (const error of errors) {
|
|
939
|
+
redactedErrors.push(redactProxyErrorValue(error, seen));
|
|
940
|
+
}
|
|
941
|
+
return redactedErrors;
|
|
942
|
+
}
|
|
943
|
+
__name(redactProxyErrorCollection, "redactProxyErrorCollection");
|
|
944
|
+
function shouldCloneForRedaction(error, errorRecord) {
|
|
945
|
+
return typeof errorRecord.message === "string" && !canAssignProperty(error, "message") || typeof errorRecord.stack === "string" && !canAssignProperty(error, "stack") || errorRecord.cause !== void 0 && !canAssignProperty(error, "cause") || errorRecord.errors !== void 0 && !canAssignProperty(error, "errors");
|
|
946
|
+
}
|
|
947
|
+
__name(shouldCloneForRedaction, "shouldCloneForRedaction");
|
|
948
|
+
function canAssignProperty(target, key) {
|
|
949
|
+
let current = target;
|
|
950
|
+
while (current) {
|
|
951
|
+
const descriptor = Object.getOwnPropertyDescriptor(current, key);
|
|
952
|
+
if (descriptor) {
|
|
953
|
+
if ("writable" in descriptor) {
|
|
954
|
+
return descriptor.writable === true;
|
|
955
|
+
}
|
|
956
|
+
return typeof descriptor.set === "function";
|
|
957
|
+
}
|
|
958
|
+
current = Object.getPrototypeOf(current);
|
|
959
|
+
}
|
|
960
|
+
return Object.isExtensible(target);
|
|
961
|
+
}
|
|
962
|
+
__name(canAssignProperty, "canAssignProperty");
|
|
963
|
+
function cloneErrorWithRedactedFields(error, clone, redactedMessage, redactedStack, redactedCause, redactedErrors) {
|
|
964
|
+
const copiedKeys = /* @__PURE__ */ new Set();
|
|
965
|
+
for (const key of Reflect.ownKeys(error)) {
|
|
966
|
+
const descriptor = Object.getOwnPropertyDescriptor(error, key);
|
|
967
|
+
if (!descriptor) {
|
|
968
|
+
continue;
|
|
969
|
+
}
|
|
970
|
+
copiedKeys.add(key);
|
|
971
|
+
const updatedDescriptor = getRedactedPropertyDescriptor(
|
|
972
|
+
key,
|
|
973
|
+
descriptor,
|
|
974
|
+
redactedMessage,
|
|
975
|
+
redactedStack,
|
|
976
|
+
redactedCause,
|
|
977
|
+
redactedErrors
|
|
978
|
+
);
|
|
979
|
+
try {
|
|
980
|
+
Object.defineProperty(clone, key, updatedDescriptor);
|
|
981
|
+
} catch {
|
|
982
|
+
}
|
|
983
|
+
}
|
|
984
|
+
defineMissingRedactedValue(clone, copiedKeys, "message", redactedMessage);
|
|
985
|
+
defineMissingRedactedValue(clone, copiedKeys, "stack", redactedStack);
|
|
986
|
+
defineMissingRedactedValue(clone, copiedKeys, "cause", redactedCause);
|
|
987
|
+
defineMissingRedactedValue(clone, copiedKeys, "errors", redactedErrors);
|
|
988
|
+
}
|
|
989
|
+
__name(cloneErrorWithRedactedFields, "cloneErrorWithRedactedFields");
|
|
990
|
+
function getRedactedPropertyDescriptor(key, descriptor, redactedMessage, redactedStack, redactedCause, redactedErrors) {
|
|
991
|
+
const redactedValue = key === "message" ? redactedMessage : key === "stack" ? redactedStack : key === "cause" ? redactedCause : key === "errors" ? redactedErrors : void 0;
|
|
992
|
+
if (redactedValue === void 0) {
|
|
993
|
+
return { ...descriptor };
|
|
994
|
+
}
|
|
995
|
+
if ("value" in descriptor) {
|
|
996
|
+
return { ...descriptor, value: redactedValue };
|
|
997
|
+
}
|
|
998
|
+
return {
|
|
999
|
+
configurable: descriptor.configurable,
|
|
1000
|
+
enumerable: descriptor.enumerable,
|
|
1001
|
+
value: redactedValue,
|
|
1002
|
+
writable: true
|
|
1003
|
+
};
|
|
1004
|
+
}
|
|
1005
|
+
__name(getRedactedPropertyDescriptor, "getRedactedPropertyDescriptor");
|
|
1006
|
+
function defineMissingRedactedValue(target, copiedKeys, key, value) {
|
|
1007
|
+
if (value === void 0 || copiedKeys.has(key)) {
|
|
1008
|
+
return;
|
|
1009
|
+
}
|
|
1010
|
+
try {
|
|
1011
|
+
Object.defineProperty(target, key, {
|
|
1012
|
+
configurable: true,
|
|
1013
|
+
enumerable: false,
|
|
1014
|
+
value,
|
|
1015
|
+
writable: true
|
|
1016
|
+
});
|
|
1017
|
+
} catch {
|
|
1018
|
+
}
|
|
1019
|
+
}
|
|
1020
|
+
__name(defineMissingRedactedValue, "defineMissingRedactedValue");
|
|
1021
|
+
function recordProxyFailure(hostname) {
|
|
1022
|
+
const failureCount = (proxyFailureCounts.get(hostname) ?? 0) + 1;
|
|
1023
|
+
proxyFailureCounts.set(hostname, failureCount);
|
|
1024
|
+
return failureCount;
|
|
1025
|
+
}
|
|
1026
|
+
__name(recordProxyFailure, "recordProxyFailure");
|
|
1027
|
+
function buildFetchOptionsWithDispatcher(sdkType, proxyUrl) {
|
|
1028
|
+
const insecure = isTlsVerificationDisabled();
|
|
1029
|
+
const { Agent, fetch: undiciFetch } = requireUndici();
|
|
1030
|
+
if (!proxyUrl) {
|
|
1031
|
+
const NO_PROXY_KEY = insecure ? "__no_proxy__#insecure" : "__no_proxy__";
|
|
1032
|
+
let dispatcher = dispatcherCache.get(NO_PROXY_KEY);
|
|
1033
|
+
if (!dispatcher) {
|
|
1034
|
+
dispatcher = new Agent({
|
|
1035
|
+
headersTimeout: 0,
|
|
1036
|
+
bodyTimeout: 0,
|
|
1037
|
+
keepAliveTimeout: 6e4,
|
|
1038
|
+
// For a direct (non-proxy) Agent, `connect` options flow straight to
|
|
1039
|
+
// the TLS connector, so this disables upstream cert verification.
|
|
1040
|
+
...insecure ? { connect: { rejectUnauthorized: false } } : {}
|
|
1041
|
+
});
|
|
1042
|
+
dispatcherCache.set(NO_PROXY_KEY, dispatcher);
|
|
1043
|
+
}
|
|
1044
|
+
return { fetchOptions: { dispatcher }, fetch: undiciFetch };
|
|
1045
|
+
}
|
|
1046
|
+
try {
|
|
1047
|
+
const dispatcher = getOrCreateSharedDispatcher(proxyUrl, insecure);
|
|
1048
|
+
return { fetchOptions: { dispatcher }, fetch: undiciFetch };
|
|
1049
|
+
} catch (error) {
|
|
1050
|
+
const hostname = extractHostnameFromProxyUrl(proxyUrl);
|
|
1051
|
+
const failureCount = recordProxyFailure(hostname);
|
|
1052
|
+
const failureLabel = failureCount === 1 ? "first failure" : `failure #${failureCount}`;
|
|
1053
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
1054
|
+
const redactedMessage = redactProxyCredentials(errorMessage);
|
|
1055
|
+
const logMessage = `Failed to create proxy dispatcher for ${hostname} (${failureLabel}), falling back to direct connection: ${redactedMessage}`;
|
|
1056
|
+
debugLogger.warn(logMessage);
|
|
1057
|
+
console.error(`[RUNTIME_FETCH] ${logMessage}`);
|
|
1058
|
+
return NO_DISPATCHER_FALLBACK[sdkType];
|
|
1059
|
+
}
|
|
1060
|
+
}
|
|
1061
|
+
__name(buildFetchOptionsWithDispatcher, "buildFetchOptionsWithDispatcher");
|
|
1062
|
+
|
|
679
1063
|
// packages/core/src/utils/tool-name-utils.ts
|
|
680
1064
|
init_esbuild_shims();
|
|
681
1065
|
var MAX_TOOL_NAME_LENGTH = 63;
|
|
@@ -1443,7 +1827,7 @@ function atEndOfBlockComment(text, i) {
|
|
|
1443
1827
|
__name(atEndOfBlockComment, "atEndOfBlockComment");
|
|
1444
1828
|
|
|
1445
1829
|
// packages/core/src/utils/safeJsonParse.ts
|
|
1446
|
-
var
|
|
1830
|
+
var debugLogger2 = createDebugLogger("JSON_PARSE");
|
|
1447
1831
|
function safeJsonParse(jsonString, fallbackValue = {}) {
|
|
1448
1832
|
if (!jsonString || typeof jsonString !== "string") {
|
|
1449
1833
|
return fallbackValue;
|
|
@@ -1455,7 +1839,7 @@ function safeJsonParse(jsonString, fallbackValue = {}) {
|
|
|
1455
1839
|
const repairedJson = jsonrepair(jsonString);
|
|
1456
1840
|
return JSON.parse(repairedJson);
|
|
1457
1841
|
} catch (repairError) {
|
|
1458
|
-
|
|
1842
|
+
debugLogger2.error("Failed to parse JSON even with jsonrepair:", {
|
|
1459
1843
|
originalError: error,
|
|
1460
1844
|
repairError,
|
|
1461
1845
|
jsonString
|
|
@@ -1603,7 +1987,15 @@ export {
|
|
|
1603
1987
|
RuntimeDiagnosticsCollector,
|
|
1604
1988
|
runtimeDiagnostics,
|
|
1605
1989
|
summarizeOpenAIWireRequest,
|
|
1606
|
-
summarizeAnthropicWireRequest
|
|
1990
|
+
summarizeAnthropicWireRequest,
|
|
1991
|
+
loadUndici,
|
|
1992
|
+
preloadRuntimeFetchModule,
|
|
1993
|
+
isTlsVerificationDisabled,
|
|
1994
|
+
detectRuntime,
|
|
1995
|
+
buildRuntimeFetchOptions,
|
|
1996
|
+
getOrCreateSharedDispatcher,
|
|
1997
|
+
redactProxyCredentials,
|
|
1998
|
+
redactProxyError
|
|
1607
1999
|
};
|
|
1608
2000
|
/**
|
|
1609
2001
|
* @license
|
|
@@ -1620,3 +2012,8 @@ export {
|
|
|
1620
2012
|
* Copyright 2026 Qwen
|
|
1621
2013
|
* SPDX-License-Identifier: Apache-2.0
|
|
1622
2014
|
*/
|
|
2015
|
+
/**
|
|
2016
|
+
* @license
|
|
2017
|
+
* Copyright 2025 Qwen Team
|
|
2018
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
2019
|
+
*/
|