@qwen-code/qwen-code 0.21.7 → 0.21.8
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/README.md +2 -0
- package/bundled/qc-helper/docs/configuration/settings.md +43 -30
- package/bundled/qc-helper/docs/features/channels/dingtalk.md +40 -2
- package/bundled/qc-helper/docs/features/channels/feishu.md +13 -2
- package/bundled/qc-helper/docs/features/channels/github.md +13 -11
- package/bundled/qc-helper/docs/features/channels/gitlab.md +13 -11
- package/bundled/qc-helper/docs/features/channels/overview.md +49 -31
- package/bundled/qc-helper/docs/features/channels/plugins.md +2 -2
- package/bundled/qc-helper/docs/features/channels/qqbot.md +4 -2
- package/bundled/qc-helper/docs/features/channels/telegram.md +4 -2
- package/bundled/qc-helper/docs/features/channels/wecom.md +1 -1
- package/bundled/qc-helper/docs/features/code-review.md +4 -0
- package/bundled/qc-helper/docs/features/commands.md +1 -1
- package/bundled/qc-helper/docs/features/hooks.md +52 -0
- package/bundled/qc-helper/docs/integration-jetbrains.md +1 -0
- package/bundled/qc-helper/docs/qwen-serve.md +4 -1
- package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +50 -36
- package/bundled/review/SKILL.md +28 -5
- package/chunks/{MaxSizedBox-ANWZBPTS.js → MaxSizedBox-7PM6BGJ5.js} +26 -22
- package/chunks/{StandaloneSessionPicker-XKS3VU3A.js → StandaloneSessionPicker-3UQHM7GV.js} +44 -40
- package/chunks/{acp-startup-profiler-ORIQ2CCQ.js → acp-startup-profiler-B5BYAMYQ.js} +2 -2
- package/chunks/{acpAgent-KUAZ3GCZ.js → acpAgent-5UWLFV6V.js} +534 -262
- package/chunks/{agent-T6PTGX5R.js → agent-624T2BLO.js} +26 -22
- package/chunks/{agent-headless-PR7YCB7S.js → agent-headless-2EE5J2KX.js} +26 -22
- package/chunks/{artifact-tool-U4VOZIK5.js → artifact-tool-N652YE4L.js} +1 -1
- package/chunks/{askUserQuestion-XOBQLPFA.js → askUserQuestion-ONW74PKJ.js} +1 -1
- package/chunks/{bridge-NU6YEEHK.js → bridge-JENKGFFP.js} +29 -25
- package/chunks/{ca-NYKNH222.js → ca-ZLKAB4K3.js} +6 -0
- package/chunks/{channel-management-service-FSQ7SHYI.js → channel-management-service-DDWUPHMU.js} +19 -10
- package/chunks/{channel-settings-store-35VQVUVV.js → channel-settings-store-SA6JZSPH.js} +34 -30
- package/chunks/{channel-worker-group-JWQK224X.js → channel-worker-group-E67EN3RV.js} +5 -5
- package/chunks/{channel-worker-manager-77E3OXRQ.js → channel-worker-manager-SW4C45CF.js} +5 -5
- package/chunks/{channel-worker-supervisor-62YWUGP2.js → channel-worker-supervisor-5SRD24FG.js} +3 -3
- package/chunks/{chunk-CJXIIILK.js → chunk-2FRY5CRX.js} +1 -1
- package/chunks/{chunk-ZJ3VGYHK.js → chunk-2ILAOM2I.js} +34 -17
- package/chunks/{chunk-6XJMFJ4D.js → chunk-2M4K4KYS.js} +177 -120
- package/chunks/{chunk-CNIID3TV.js → chunk-2UUMVNYT.js} +1 -1
- package/chunks/{chunk-22NBYCPD.js → chunk-3P2LV43B.js} +1 -1
- package/chunks/{chunk-2U3WZGZG.js → chunk-3PY4LPJF.js} +19 -131
- package/chunks/{chunk-SPMY6CX6.js → chunk-3SE7J4DR.js} +3 -3
- package/chunks/{chunk-6UWFTUQL.js → chunk-3WNQOYHQ.js} +66 -22
- package/chunks/{chunk-KXSDEOFU.js → chunk-4ALIARFY.js} +1 -1
- package/chunks/{chunk-D3UEZIQH.js → chunk-4DU3NCHG.js} +48 -55
- package/chunks/{chunk-BGG4MBYD.js → chunk-4PYCZH2V.js} +4 -187
- package/chunks/{chunk-H2UQ2M5Z.js → chunk-4WU6NY7F.js} +96 -22
- package/chunks/{chunk-TLV2IMHR.js → chunk-5ZGR6RKJ.js} +3 -3
- package/chunks/{chunk-3K7FH2KQ.js → chunk-67N6HB5H.js} +1310 -171
- package/chunks/{chunk-EORNAQDT.js → chunk-6TR7CFXH.js} +1 -1
- package/chunks/{chunk-NG2R4N5O.js → chunk-6ZRFAKXK.js} +1 -1
- package/chunks/{chunk-P2AJ7FTI.js → chunk-757GB46F.js} +1 -1
- package/chunks/{chunk-72LNFGUY.js → chunk-77QVBFCU.js} +3 -3
- package/chunks/{chunk-OH2VKQXH.js → chunk-7DVT4LVV.js} +37 -30
- package/chunks/{chunk-KKJJB5X6.js → chunk-7VUERJHS.js} +1503 -815
- package/chunks/{chunk-VOARQPTA.js → chunk-B52AWKBB.js} +65 -21
- package/chunks/{chunk-Y4EWSQF7.js → chunk-BF224XHL.js} +2 -2
- package/chunks/{chunk-PJOBIWUG.js → chunk-BF52U4XJ.js} +1 -1
- package/chunks/{chunk-55LYDVPU.js → chunk-C5VWPTGT.js} +1 -1
- package/chunks/{chunk-W7U4ESW2.js → chunk-CG3WBKJK.js} +1 -1
- package/chunks/chunk-COBO5EBO.js +135 -0
- package/chunks/chunk-CPG6P4GG.js +82 -0
- package/chunks/{chunk-DIEFUBV6.js → chunk-DIWZNWZT.js} +205 -35
- package/chunks/{chunk-AE77C5ZU.js → chunk-DQSDACD2.js} +1 -1
- package/chunks/{chunk-P3LEG54R.js → chunk-DX5W5AON.js} +2 -2
- package/chunks/{chunk-EUQTXRKZ.js → chunk-E4ZBKMSF.js} +5 -5
- package/chunks/{chunk-FPM27XN4.js → chunk-EIVICVHM.js} +4 -4
- package/chunks/{chunk-YHEEE624.js → chunk-EN2TKTFH.js} +1 -1
- package/chunks/chunk-F6WFNA7U.js +22 -0
- package/chunks/{chunk-FZBZSYKU.js → chunk-FN6YXJOP.js} +1 -1
- package/chunks/{chunk-KR4ZSC7K.js → chunk-FWBXMANW.js} +3 -3
- package/chunks/{chunk-LA7YLSR6.js → chunk-FYAXKJK7.js} +327 -67
- package/chunks/{chunk-CSZEXZBE.js → chunk-GBDINRIL.js} +3 -3
- package/chunks/{chunk-SCI7K3GM.js → chunk-GOEVOFQI.js} +19 -10
- package/chunks/{chunk-LEMXGVEP.js → chunk-GQCEQPYQ.js} +3 -3
- package/chunks/{chunk-Y7E5LNLO.js → chunk-GXSNGY5M.js} +1027 -876
- package/chunks/{chunk-6XU3PH66.js → chunk-HA3SAB64.js} +22 -69
- package/chunks/{chunk-Y4NGLFGJ.js → chunk-HUWENAHO.js} +1 -1
- package/chunks/{chunk-3ULCB3NE.js → chunk-HV76SFIA.js} +1 -1
- package/chunks/{chunk-CB2464BK.js → chunk-HWX5HPUG.js} +14 -4
- package/chunks/{chunk-LZC3B5N2.js → chunk-IA7TGCN2.js} +2 -2
- package/chunks/{chunk-RERATVSK.js → chunk-IBYULW65.js} +6 -6
- package/chunks/{chunk-HYRDKNUY.js → chunk-IUQ52YJK.js} +1 -1
- package/chunks/{chunk-TDXGKHDN.js → chunk-IYES5WOT.js} +2 -2
- package/chunks/{chunk-RGSBTHSU.js → chunk-KAQCJO6Y.js} +131 -4
- package/chunks/{chunk-VWOVHOTT.js → chunk-KJZ26VBX.js} +1 -1
- package/chunks/{chunk-6GONZVLS.js → chunk-KKDVZLGL.js} +1 -1
- package/chunks/{chunk-MKVZE4ZJ.js → chunk-KTJFU7RT.js} +3 -2
- package/chunks/{chunk-R574ATRM.js → chunk-M2PNLYGY.js} +41 -0
- package/chunks/{chunk-6EOI4HOK.js → chunk-M3STHEMM.js} +12 -17
- package/chunks/chunk-NGYI5EF5.js +244 -0
- package/chunks/{chunk-ALGGS7UH.js → chunk-NPQ5ZKRP.js} +82 -1
- package/chunks/{chunk-HQB2KUAN.js → chunk-NPUXXRJI.js} +1 -1
- package/chunks/{chunk-QETYKPMG.js → chunk-NVRDQFCX.js} +1 -1
- package/chunks/{chunk-PQBHU2IA.js → chunk-OHKJVAKG.js} +10 -10
- package/chunks/{chunk-CYR3HI5X.js → chunk-OQTXYMKW.js} +2 -2
- package/chunks/{chunk-DBOFL3LQ.js → chunk-PG62DFWD.js} +10 -10
- package/chunks/{chunk-2VSTGY6M.js → chunk-PJRW65JO.js} +1 -1
- package/chunks/{chunk-33ACCIIY.js → chunk-PLFATELK.js} +1 -1
- package/chunks/{chunk-IC4Z6LX6.js → chunk-PYQADEFD.js} +5 -0
- package/chunks/{chunk-MAJS7AT4.js → chunk-QGHSP65Z.js} +2 -2
- package/chunks/{chunk-OHJLEW5J.js → chunk-QQWD7LZV.js} +4 -4
- package/chunks/{chunk-ZXU5UHMI.js → chunk-QXVSWG66.js} +2 -2
- package/chunks/{chunk-E33LOKRA.js → chunk-RPWVIXDB.js} +18 -1
- package/chunks/{chunk-TYKC75AX.js → chunk-S3Y3GBFD.js} +1 -1
- package/chunks/{chunk-7UFKAV7Y.js → chunk-S6HYI3MF.js} +2 -2
- package/chunks/chunk-SAH4BD2J.js +92 -0
- package/chunks/{chunk-OMKQH5C5.js → chunk-SNRT2TJJ.js} +6 -23
- package/chunks/chunk-SR7RZ4MS.js +202 -0
- package/chunks/{chunk-CXE7E23H.js → chunk-TE3ZAJE7.js} +45 -17
- package/chunks/{chunk-S7CV4KO6.js → chunk-TKSZJ5BV.js} +3 -3
- package/chunks/{chunk-3NB7TSE2.js → chunk-U5SLIG7E.js} +1 -1
- package/chunks/chunk-UA5H3DS2.js +203 -0
- package/chunks/{chunk-24ER7UV4.js → chunk-UFALT4LK.js} +1 -1
- package/chunks/{chunk-YJQCUTT2.js → chunk-VWMUDKLC.js} +3 -3
- package/chunks/{chunk-RMH5OWLD.js → chunk-VXZ5HAOV.js} +1 -1
- package/chunks/{chunk-BVWVWGLE.js → chunk-WAUGQKUU.js} +4 -64
- package/chunks/{chunk-SHZYHGQH.js → chunk-WG6542MA.js} +1 -1
- package/chunks/{chunk-5KH532V7.js → chunk-WV5J6Q6N.js} +1 -1
- package/chunks/{chunk-RNVQB725.js → chunk-XHD7CRP2.js} +2 -2
- package/chunks/{chunk-W4B7UBUS.js → chunk-XZKQT2B2.js} +5 -5
- package/chunks/{chunk-6HVUFDS2.js → chunk-Y4TETC74.js} +22 -13
- package/chunks/{chunk-RZHU3ILK.js → chunk-YEF7XEO2.js} +4 -4
- package/chunks/{chunk-RUL4S3K3.js → chunk-YHJFF7KH.js} +146 -45
- package/chunks/{chunk-23RZCH76.js → chunk-YOM7DEGB.js} +3 -3
- package/chunks/{chunk-OFI7IGST.js → chunk-ZCLLJARV.js} +9 -9
- package/chunks/{chunk-GSS34377.js → chunk-ZHA242R4.js} +2 -2
- package/chunks/{chunk-TRLYP7OF.js → chunk-ZPLALRXZ.js} +17 -9
- package/chunks/{chunk-WUC6ZFXO.js → chunk-ZWBUH5UP.js} +1 -1
- package/chunks/{computer-use-KEAPATUY.js → computer-use-ESQYJ3JY.js} +26 -22
- package/chunks/{config-utils-K7SCOWHD.js → config-utils-XQHBJP7G.js} +4 -4
- package/chunks/{contextCommand-ZJA6A5K5.js → contextCommand-CX3YF4ZE.js} +28 -24
- package/chunks/{core-runtime-QMJPWHCI.js → core-runtime-DIAU7JMG.js} +30 -26
- package/chunks/{create-sub-session-DJE6XICH.js → create-sub-session-HDPD6HOA.js} +26 -22
- package/chunks/{create-sub-session-E4PBYXV5.js → create-sub-session-QIDZUOPU.js} +1 -1
- package/chunks/{cron-create-GRBWYMIJ.js → cron-create-VONA5JYY.js} +1 -1
- package/chunks/{cron-delete-4CMKBR2M.js → cron-delete-5JXSP2MI.js} +1 -1
- package/chunks/{cron-list-W7K4ASOA.js → cron-list-KE4F2CIR.js} +1 -1
- package/chunks/{daemon-SCTQMM7Z.js → daemon-VZBGJUNL.js} +30 -0
- package/chunks/{daemon-status-provider-FSWDPE2G.js → daemon-status-provider-H6O4UQ4F.js} +33 -29
- package/chunks/{daemon-trust-policy-P5L5VFAY.js → daemon-trust-policy-BNUXG6MT.js} +33 -29
- package/chunks/{daemon-trust-policy-monitor-73JYN6ET.js → daemon-trust-policy-monitor-E4EQ7GF4.js} +33 -29
- package/chunks/{de-VL76CPLV.js → de-LIW4XVLN.js} +5 -0
- package/chunks/{deferred-core-runtime-BWRCCFTE.js → deferred-core-runtime-CBMSHPAU.js} +26 -22
- package/chunks/{display-image-O2XFPQTC.js → display-image-NQRSIBXM.js} +2 -2
- package/chunks/{dist-DPPHJAVL.js → dist-EEEQGCZA.js} +918 -142
- package/chunks/{dist-K4WWQBHS.js → dist-HIACTZEK.js} +55 -15
- package/chunks/{dist-3BMEUGTG.js → dist-IRL7WA5Z.js} +1 -1
- package/chunks/{dist-HVBMEYWK.js → dist-KVISB2O2.js} +1 -1
- package/chunks/{dist-KS4O2NKE.js → dist-MBF3I5MX.js} +14 -8
- package/chunks/{dist-SFQ34F4M.js → dist-MKX5OSFF.js} +5 -4
- package/chunks/{dist-7JGAAQSC.js → dist-RCH3I7SS.js} +2 -2
- package/chunks/{dist-C5U4LJKW.js → dist-TUSWNE2I.js} +5 -4
- package/chunks/{earlyInputCapture-L5ST23A6.js → earlyInputCapture-UIOP7OIN.js} +26 -22
- package/chunks/{edit-LHHRFNFK.js → edit-ITMZYFKA.js} +26 -22
- package/chunks/{en-IRJ2WN5T.js → en-SY5GTIGX.js} +6 -0
- package/chunks/{enter-worktree-6NXCRZPF.js → enter-worktree-S4PL5UV6.js} +26 -22
- package/chunks/{enterPlanMode-ZVQT4U7D.js → enterPlanMode-YV52NNJT.js} +26 -22
- package/chunks/{environment-GJ2HWJOS.js → environment-NGOWPRZV.js} +30 -26
- package/chunks/{errors-6RLH3XXC.js → errors-BU26DTDX.js} +28 -24
- package/chunks/{exit-worktree-I2YLUHHY.js → exit-worktree-XRM6LH5F.js} +26 -22
- package/chunks/{exitPlanMode-7CCWKO7I.js → exitPlanMode-ZLI5F7KR.js} +26 -22
- package/chunks/{fast-path-DVFD4HQD.js → fast-path-UJWORIED.js} +23 -3
- package/chunks/{fast-path-settings-WQJU2LAT.js → fast-path-settings-37WQD5B2.js} +6 -3
- package/chunks/{fr-GK3HQYVB.js → fr-RQFO7U4P.js} +5 -0
- package/chunks/{gemini-7FWGOYD4.js → gemini-ZSKNDUMU.js} +77 -65
- package/chunks/{geminiContentGenerator-V2WVLIXU.js → geminiContentGenerator-YGEXOEKD.js} +1 -1
- package/chunks/{glob-3N6GGI75.js → glob-7KZG44BR.js} +26 -22
- package/chunks/{goal-tools-APOW6UXL.js → goal-tools-PXWN5VK3.js} +4 -2
- package/chunks/{grep-V43ILZVX.js → grep-6ZFC7RJ5.js} +26 -22
- package/chunks/{handleAutoUpdate-A5WFVWIA.js → handleAutoUpdate-KSEL3TQS.js} +30 -26
- package/chunks/{i18n-PLVQ4FBZ.js → i18n-ZIUXBW5V.js} +27 -23
- package/chunks/{image-gen-7C6IK6DC.js → image-gen-AUIZJJNK.js} +7 -5
- package/chunks/{initializer-CVAIKZYL.js → initializer-7AHY3N6Q.js} +33 -29
- package/chunks/{installationInfo-J6QDHNTK.js → installationInfo-VGBXMYLY.js} +27 -23
- package/chunks/{ja-3FA46IKD.js → ja-KOZKHJHZ.js} +5 -0
- package/chunks/{list-ZZ4OUUWV.js → list-PSFKQHLB.js} +36 -32
- package/chunks/{list-agents-KFFIIS2G.js → list-agents-Z4WABFDZ.js} +1 -1
- package/chunks/{loadedSettingsAdapter-QRYRJSWL.js → loadedSettingsAdapter-FTMRCTOF.js} +33 -29
- package/chunks/{loggingContentGenerator-OJCO75HM.js → loggingContentGenerator-MZAN52UV.js} +7 -5
- package/chunks/{loop-wakeup-TLMJPMMP.js → loop-wakeup-UZ5RL5Y2.js} +2 -2
- package/chunks/{ls-UVVE2XGE.js → ls-TVHDGIES.js} +1 -1
- package/chunks/{lsp-QMEA2VLB.js → lsp-CVN6OQPI.js} +1 -1
- package/chunks/{managed-npm-update-PCOSCP2N.js → managed-npm-update-O4NHK45X.js} +27 -23
- package/chunks/{mcp-M3WKKWKY.js → mcp-6CFP2AYQ.js} +33 -29
- package/chunks/{monitor-GN24FH6C.js → monitor-DAKD6OU4.js} +26 -22
- package/chunks/{nonInteractiveCli-KPTU3VSQ.js → nonInteractiveCli-RC7VIUZL.js} +66 -60
- package/chunks/{notebook-edit-4YM65BBO.js → notebook-edit-474DPMRL.js} +34 -22
- package/chunks/{openaiContentGenerator-EDQT6GTV.js → openaiContentGenerator-2NFY2MWO.js} +19 -9
- package/chunks/{pidfile-JOIIRN2C.js → pidfile-KBFVDNQP.js} +26 -22
- package/chunks/{process-registry-2CHQBXH5.js → process-registry-PMJOA5CO.js} +15 -0
- package/chunks/{processUtils-5SV4MX3Q.js → processUtils-6GRYH4Y3.js} +2 -2
- package/chunks/{pt-3AOBKPIJ.js → pt-U6AOCTMF.js} +5 -0
- package/chunks/{qwenContentGenerator-ODRJSUGR.js → qwenContentGenerator-KAHU6IZY.js} +33 -28
- package/chunks/{qwenOAuth2-NESCMZ47.js → qwenOAuth2-RRQTCP4W.js} +7 -5
- package/chunks/{read-file-HPSODLPK.js → read-file-3M6WXDXP.js} +6 -4
- package/chunks/{read-mcp-resource-2TNSJTC3.js → read-mcp-resource-PZ4ZF6YL.js} +1 -1
- package/chunks/{record-artifact-RAON52FC.js → record-artifact-P4HFMS7X.js} +2 -2
- package/chunks/{resumeHistoryUtils-TXCOFFMQ.js → resumeHistoryUtils-D6TAY3HX.js} +30 -26
- package/chunks/{ripGrep-ZKQGTQAO.js → ripGrep-PLPENT3E.js} +26 -22
- package/chunks/{ru-VJRAMC4W.js → ru-CMX4UMYP.js} +5 -0
- package/chunks/{run-qwen-serve-ZPKPKECF.js → run-qwen-serve-ZAFIJKJC.js} +168 -54
- package/chunks/{runtime-2FLNNM36.js → runtime-ZED7CYOZ.js} +38 -34
- package/chunks/{scheduler-365PJHNR.js → scheduler-MD3AL2W5.js} +26 -22
- package/chunks/{send-message-ZM7MRUGP.js → send-message-CAMSLG2L.js} +4 -3
- package/chunks/{serve-QD2RNLKJ.js → serve-E3VUDRZN.js} +33 -29
- package/chunks/{server-XLJVLTYM.js → server-OWMEMAKR.js} +450 -231
- package/chunks/{session-3VTUHH4Q.js → session-HZ57QK7K.js} +158 -97
- package/chunks/{settings-KULVPCQC.js → settings-V7BR3RKP.js} +32 -28
- package/chunks/{shell-3SWW22MH.js → shell-23OMNMW6.js} +26 -22
- package/chunks/{skill-KDHWYS7W.js → skill-6HBDYZRS.js} +7 -5
- package/chunks/{skill-settings-NMY4JEJC.js → skill-settings-HWJLTU7M.js} +32 -28
- package/chunks/{spawnChannel-ZKS4Q5OU.js → spawnChannel-N6KKUW5B.js} +27 -23
- package/chunks/{standalone-update-7CXPGAQ4.js → standalone-update-QGIKHATD.js} +28 -24
- package/chunks/{startInteractiveUI-2QQLEKM6.js → startInteractiveUI-GX2CRL42.js} +365 -155
- package/chunks/{syntheticOutput-ZLCUTKO2.js → syntheticOutput-PEBJQYJV.js} +2 -2
- package/chunks/{task-create-CQP5UEA3.js → task-create-5NWCQSJF.js} +5 -4
- package/chunks/{task-list-XLEZOJXP.js → task-list-53265TRZ.js} +1 -1
- package/chunks/{task-stop-7ZQM5CFF.js → task-stop-FPCOIRYX.js} +1 -1
- package/chunks/{task-update-JA75U2SN.js → task-update-5HN577LS.js} +5 -4
- package/chunks/{team-create-2WTNGAOX.js → team-create-CFFKU7KL.js} +26 -22
- package/chunks/{team-delete-MHY3UZGY.js → team-delete-MMQB4OSC.js} +1 -1
- package/chunks/{team-plan-approval-LZTYLEG4.js → team-plan-approval-6EFOKR6A.js} +26 -22
- package/chunks/{terminal-image-renderer-R5HHAFJN.js → terminal-image-renderer-TLDNACQY.js} +28 -24
- package/chunks/{theme-manager-PAUCSJFF.js → theme-manager-5LJ3H7VO.js} +26 -22
- package/chunks/{todoWrite-UPVOHYGD.js → todoWrite-JGV6VLOX.js} +1 -1
- package/chunks/{tool-search-2BFCGLI6.js → tool-search-UJV3A24H.js} +9 -6
- package/chunks/{total-session-admission-MK4SINFK.js → total-session-admission-D63QYXGO.js} +29 -25
- package/chunks/{trustedFolders-TJ5S26N7.js → trustedFolders-KZCOB53W.js} +30 -24
- package/chunks/{update-relaunch-N7AYLARF.js → update-relaunch-IFILM3SA.js} +5 -5
- package/chunks/{updateCheck-QRZ3DVT5.js → updateCheck-YZ2CRCFC.js} +29 -25
- package/chunks/{useAutoAcceptIndicator-DBJ7Y5AF.js → useAutoAcceptIndicator-AXEVNA3Q.js} +35 -31
- package/chunks/{validateNonInterActiveAuth-6ZQWUDS3.js → validateNonInterActiveAuth-3WTOJFWA.js} +61 -57
- package/chunks/{version-AJQGQWXC.js → version-GXK7OHZY.js} +1 -1
- package/chunks/{web-fetch-QWJYRXFL.js → web-fetch-ILB4GAVR.js} +12 -8
- package/chunks/{web-search-2AOXJGHU.js → web-search-HKRPGPZZ.js} +8 -6
- package/chunks/{workflow-ERH3SJG2.js → workflow-FXIPRQQA.js} +750 -147
- package/chunks/{workspace-providers-status-HZ474RA4.js → workspace-providers-status-NYHC7HSR.js} +35 -31
- package/chunks/{workspace-registration-store-6EUP4JXG.js → workspace-registration-store-AKEB7OMW.js} +1 -1
- package/chunks/{workspace-registry-R4APRRNC.js → workspace-registry-CDAS5TVZ.js} +29 -25
- package/chunks/{workspace-service-HFIFDMU7.js → workspace-service-PAMUKMAV.js} +36 -32
- package/chunks/{workspace-skills-status-HAHEIHGK.js → workspace-skills-status-YQSHCCMS.js} +33 -29
- package/chunks/{workspace-trust-reconciler-65GTAGDK.js → workspace-trust-reconciler-RPTXOIY2.js} +36 -32
- package/chunks/{write-file-B34CDELV.js → write-file-CGS57TS4.js} +26 -22
- package/chunks/{zh-ARWDLDLR.js → zh-AGL2FVBI.js} +6 -0
- package/chunks/{zh-TW-Y4RGI3P7.js → zh-TW-KI66MHQY.js} +6 -0
- package/chunks/{zoom-image-HPRBZHSS.js → zoom-image-E7D72GYV.js} +6 -4
- package/cli.js +13 -13
- package/locales/ca.js +10 -0
- package/locales/de.js +9 -0
- package/locales/en.js +10 -0
- package/locales/fr.js +9 -0
- package/locales/ja.js +9 -0
- package/locales/pt.js +9 -0
- package/locales/ru.js +9 -0
- package/locales/zh-TW.js +10 -0
- package/locales/zh.js +10 -0
- package/package.json +3 -3
- package/web-shell/assets/{arc-Ip-FFDJ0.js → arc-DybZaz32.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-CChqgwIb.js → architectureDiagram-3BPJPVTR-jN3qBd19.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-BHN-Tfss.js → blockDiagram-GPEHLZMM-Ct5DZPrj.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-BhyjzDjN.js → c4Diagram-AAUBKEIU-CUAFMlUG.js} +1 -1
- package/web-shell/assets/channel-BMwLrwLW.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-BB9eyHrx.js → chunk-2J33WTMH-CuV8n90B.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-BeV7ce_J.js → chunk-4BX2VUAB-BUzl_kls.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-DO7kXDiV.js → chunk-55IACEB6-BnDBLX6A.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-B27MPznD.js → chunk-727SXJPM-B83uTOjm.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-DHIjqjD_.js → chunk-AQP2D5EJ-DM3HLgpT.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-DabMqyN2.js → chunk-FMBD7UC4-CSQ5hgyb.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-Dw7Nnnxc.js → chunk-ND2GUHAM-BWOF4SxX.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-DdaZew1Q.js → chunk-QZHKN3VN-BsOH9LMi.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-BGDv98jY.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BGDv98jY.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-CgBpCYH5.js → cose-bilkent-S5V4N54A-IENqH2iJ.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-BB4IU8G0.js → dagre-BM42HDAG--dyzDTGo.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-BcUTHU37.js → diagram-2AECGRRQ-BE7Dcqof.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-B6Lyihyv.js → diagram-5GNKFQAL-Cr8-5OTj.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-CRIJOjpG.js → diagram-KO2AKTUF-Bzey3uAY.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-DdNiwWWT.js → diagram-LMA3HP47-sErl28Xb.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-Dz4b32Do.js → diagram-OG6HWLK6-Dq30ATIo.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-D-8NGw77.js → erDiagram-TEJ5UH35-BkCoEfVW.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-Dun26LyM.js → flowDiagram-I6XJVG4X-DHwO0rrI.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-F10Hu1Gc.js → ganttDiagram-6RSMTGT7-s7vAPxWq.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-Bf8Ez6-D.js → gitGraphDiagram-PVQCEYII-CQxhwPOU.js} +1 -1
- package/web-shell/assets/index-Bckpjr-I.css +5 -0
- package/web-shell/assets/{index-BXqw-nGq.js → index-CF4wApWp.js} +1 -1
- package/web-shell/assets/index-DwEr9HEW.js +1768 -0
- package/web-shell/assets/{infoDiagram-5YYISTIA-DVgTMLvj.js → infoDiagram-5YYISTIA-BnFrD0bq.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-uT-KepvK.js → ishikawaDiagram-YF4QCWOH-Bf9zK5NK.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-Vg_XadQf.js → journeyDiagram-JHISSGLW-CyGAhsxi.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-Dyv1ESBE.js → kanban-definition-UN3LZRKU-CbsK5akB.js} +1 -1
- package/web-shell/assets/{linear-BMIepYX3.js → linear-cQsF4P8D.js} +1 -1
- package/web-shell/assets/{mermaid.core-zA8pJ9ag.js → mermaid.core-Z4HVqrKY.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-BCW_BZ_5.js → mindmap-definition-RKZ34NQL-CYnrBo_f.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-DseNEGp2.js → pieDiagram-4H26LBE5-CBzOfhrs.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-6Z7wr1Fi.js → quadrantDiagram-W4KKPZXB-D4LK1Ebn.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-CVOlCRPf.js → requirementDiagram-4Y6WPE33-Bzti2Lcj.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-CGhgrUJZ.js → sankeyDiagram-5OEKKPKP-yTBw5Z2s.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-dlqmpLuQ.js → sequenceDiagram-3UESZ5HK-D07UVRiZ.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-B9EW10Xb.js → stateDiagram-AJRCARHV-UE_lHsTn.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DC6xgXjX.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-BBRh0mgZ.js → timeline-definition-PNZ67QCA-DRvYdiTs.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-B8Gs-REP.js → vennDiagram-CIIHVFJN-CQLIXs0u.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-D_y80Ur7.js → wardley-L42UT6IY-JZz_Xqse.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-D-CNfHJ-.js → wardleyDiagram-YWT4CUSO--i7BiJwB.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-DQ5CvELo.js → xychartDiagram-2RQKCTM6-Bkc-bW0S.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/chunk-6PEXNQTX.js +0 -68
- package/chunks/chunk-IUFV6FYU.js +0 -81
- package/web-shell/assets/channel-Cu8qd6OB.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-BI3KrXhq.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BI3KrXhq.js +0 -1
- package/web-shell/assets/index-QQlUCJGg.css +0 -5
- package/web-shell/assets/index-hcgjV7vS.js +0 -1768
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CJTZJJ5X.js +0 -1
- package/chunks/{anthropicContentGenerator-DTMVEL5M.js → anthropicContentGenerator-SSFE2753.js} +9 -9
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
// Force strict mode and setup for ESM
|
|
2
|
+
"use strict";
|
|
3
|
+
import {
|
|
4
|
+
init_esbuild_shims
|
|
5
|
+
} from "./chunk-5O2XNYP6.js";
|
|
6
|
+
import {
|
|
7
|
+
__name
|
|
8
|
+
} from "./chunk-J2S4EL5Y.js";
|
|
9
|
+
|
|
10
|
+
// packages/core/src/core/openaiContentGenerator/prefix-caching.ts
|
|
11
|
+
init_esbuild_shims();
|
|
12
|
+
var CACHE_KEY_PREFIX = "qwen-code:";
|
|
13
|
+
var EXPLICIT_BREAKPOINT_COUNT = 2;
|
|
14
|
+
function supportsOpenAIPrefixCaching(contentGeneratorConfig) {
|
|
15
|
+
return contentGeneratorConfig.authType === "openai" /* USE_OPENAI */ || contentGeneratorConfig.authType === "qwen-oauth" /* QWEN_OAUTH */;
|
|
16
|
+
}
|
|
17
|
+
__name(supportsOpenAIPrefixCaching, "supportsOpenAIPrefixCaching");
|
|
18
|
+
function isOfficialOpenAIEndpoint(contentGeneratorConfig) {
|
|
19
|
+
if (contentGeneratorConfig.authType !== "openai" /* USE_OPENAI */) return false;
|
|
20
|
+
const { baseUrl } = contentGeneratorConfig;
|
|
21
|
+
if (!baseUrl) return false;
|
|
22
|
+
try {
|
|
23
|
+
return new URL(baseUrl).hostname.toLowerCase() === "api.openai.com";
|
|
24
|
+
} catch {
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
__name(isOfficialOpenAIEndpoint, "isOfficialOpenAIEndpoint");
|
|
29
|
+
function supportsExplicitOpenAIPromptCaching(model) {
|
|
30
|
+
const match = /^gpt-(\d+)(?:\.(\d+))?(?:[-.]|$)/i.exec(model);
|
|
31
|
+
if (!match) return false;
|
|
32
|
+
const major = Number(match[1]);
|
|
33
|
+
const minor = Number(match[2] ?? 0);
|
|
34
|
+
return major > 5 || major === 5 && minor >= 6;
|
|
35
|
+
}
|
|
36
|
+
__name(supportsExplicitOpenAIPromptCaching, "supportsExplicitOpenAIPromptCaching");
|
|
37
|
+
function withCacheBreakpoint(message) {
|
|
38
|
+
if (message.role !== "user" && message.role !== "tool") return void 0;
|
|
39
|
+
const marker = { prompt_cache_breakpoint: { mode: "explicit" } };
|
|
40
|
+
if (typeof message.content === "string") {
|
|
41
|
+
return {
|
|
42
|
+
...message,
|
|
43
|
+
content: [{ type: "text", text: message.content, ...marker }]
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
if (!Array.isArray(message.content) || message.content.length === 0) {
|
|
47
|
+
return void 0;
|
|
48
|
+
}
|
|
49
|
+
const content = [...message.content];
|
|
50
|
+
const lastIndex = content.length - 1;
|
|
51
|
+
content[lastIndex] = { ...content[lastIndex], ...marker };
|
|
52
|
+
return { ...message, content };
|
|
53
|
+
}
|
|
54
|
+
__name(withCacheBreakpoint, "withCacheBreakpoint");
|
|
55
|
+
function applyOfficialOpenAIPromptCaching(request, sessionId, cacheSharing, cacheKeyPartition) {
|
|
56
|
+
const result = { ...request };
|
|
57
|
+
if (sessionId && !result.prompt_cache_key) {
|
|
58
|
+
const partition = cacheKeyPartition ? `:${cacheKeyPartition}` : "";
|
|
59
|
+
result.prompt_cache_key = `${CACHE_KEY_PREFIX}${sessionId}${partition}`;
|
|
60
|
+
}
|
|
61
|
+
if (!cacheSharing || !supportsExplicitOpenAIPromptCaching(request.model)) {
|
|
62
|
+
return result;
|
|
63
|
+
}
|
|
64
|
+
const messages = [...request.messages];
|
|
65
|
+
let marked = 0;
|
|
66
|
+
for (let index = messages.length - 2; index >= 0 && marked < EXPLICIT_BREAKPOINT_COUNT; index -= 1) {
|
|
67
|
+
const message = messages[index];
|
|
68
|
+
const updated = message ? withCacheBreakpoint(message) : void 0;
|
|
69
|
+
if (!updated) continue;
|
|
70
|
+
messages[index] = updated;
|
|
71
|
+
marked += 1;
|
|
72
|
+
}
|
|
73
|
+
if (marked === 0) return result;
|
|
74
|
+
result.messages = messages;
|
|
75
|
+
result.prompt_cache_options = {
|
|
76
|
+
...result.prompt_cache_options,
|
|
77
|
+
mode: "explicit"
|
|
78
|
+
};
|
|
79
|
+
return result;
|
|
80
|
+
}
|
|
81
|
+
__name(applyOfficialOpenAIPromptCaching, "applyOfficialOpenAIPromptCaching");
|
|
82
|
+
|
|
83
|
+
export {
|
|
84
|
+
supportsOpenAIPrefixCaching,
|
|
85
|
+
isOfficialOpenAIEndpoint,
|
|
86
|
+
applyOfficialOpenAIPromptCaching
|
|
87
|
+
};
|
|
88
|
+
/**
|
|
89
|
+
* @license
|
|
90
|
+
* Copyright 2025 Qwen
|
|
91
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
92
|
+
*/
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import {
|
|
4
4
|
getUserSettingsPath,
|
|
5
5
|
v1ToV2Migration
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-OHKJVAKG.js";
|
|
7
7
|
import {
|
|
8
8
|
getSystemDefaultsPath,
|
|
9
9
|
getSystemSettingsPath
|
|
@@ -11,17 +11,18 @@ import {
|
|
|
11
11
|
import {
|
|
12
12
|
LoadedTrustedFolders,
|
|
13
13
|
TrustLevel,
|
|
14
|
+
getExplicitTrustLevel,
|
|
14
15
|
getTrustedFoldersPath
|
|
15
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-HA3SAB64.js";
|
|
16
17
|
import {
|
|
17
18
|
require_strip_json_comments
|
|
18
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-NPQ5ZKRP.js";
|
|
19
20
|
import {
|
|
20
21
|
arePathsEquivalent
|
|
21
22
|
} from "./chunk-MR3PXB6E.js";
|
|
22
23
|
import {
|
|
23
24
|
ideContextStore
|
|
24
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-GXSNGY5M.js";
|
|
25
26
|
import {
|
|
26
27
|
init_esbuild_shims
|
|
27
28
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -235,25 +236,7 @@ async function readDaemonTrustPolicySnapshot() {
|
|
|
235
236
|
}
|
|
236
237
|
__name(readDaemonTrustPolicySnapshot, "readDaemonTrustPolicySnapshot");
|
|
237
238
|
function explicitTrustLevel(snapshot, workspaceCwd) {
|
|
238
|
-
|
|
239
|
-
{
|
|
240
|
-
path: getTrustedFoldersPath(),
|
|
241
|
-
config: { ...snapshot.trustedFolders }
|
|
242
|
-
},
|
|
243
|
-
[]
|
|
244
|
-
);
|
|
245
|
-
const effective = folders.isPathTrusted(workspaceCwd);
|
|
246
|
-
if (effective === void 0) return null;
|
|
247
|
-
for (const [rulePath, trustLevel] of Object.entries(
|
|
248
|
-
snapshot.trustedFolders
|
|
249
|
-
)) {
|
|
250
|
-
const preview = new LoadedTrustedFolders(
|
|
251
|
-
{ path: getTrustedFoldersPath(), config: { [rulePath]: trustLevel } },
|
|
252
|
-
[]
|
|
253
|
-
).isPathTrusted(workspaceCwd);
|
|
254
|
-
if (preview === effective) return trustLevel;
|
|
255
|
-
}
|
|
256
|
-
return null;
|
|
239
|
+
return getExplicitTrustLevel(snapshot.trustedFolders, workspaceCwd);
|
|
257
240
|
}
|
|
258
241
|
__name(explicitTrustLevel, "explicitTrustLevel");
|
|
259
242
|
function evaluateDaemonWorkspaceTrust(snapshot, workspaceCwd, processCwd = process.cwd()) {
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
// Force strict mode and setup for ESM
|
|
2
|
+
"use strict";
|
|
3
|
+
import {
|
|
4
|
+
getRateLimitErrorDetails,
|
|
5
|
+
isQwenQuotaExceededError,
|
|
6
|
+
isRateLimitError
|
|
7
|
+
} from "./chunk-M6HMMKVG.js";
|
|
8
|
+
import {
|
|
9
|
+
isAbortError
|
|
10
|
+
} from "./chunk-OIVKILPI.js";
|
|
11
|
+
import {
|
|
12
|
+
init_esbuild_shims
|
|
13
|
+
} from "./chunk-5O2XNYP6.js";
|
|
14
|
+
import {
|
|
15
|
+
__name
|
|
16
|
+
} from "./chunk-J2S4EL5Y.js";
|
|
17
|
+
|
|
18
|
+
// packages/core/src/utils/retryErrorClassification.ts
|
|
19
|
+
init_esbuild_shims();
|
|
20
|
+
function classifyRetryError(error, context = {}) {
|
|
21
|
+
if (isRetryAbortError(error)) {
|
|
22
|
+
return {
|
|
23
|
+
kind: "abort",
|
|
24
|
+
diagnosis: "fail-fast",
|
|
25
|
+
reason: "aborted"
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
const details = getRateLimitErrorDetails(error);
|
|
29
|
+
const statusCode = details.statusCode;
|
|
30
|
+
const providerFields = getProviderFields(error);
|
|
31
|
+
const providerCode = details.providerCode ?? providerFields.providerCode;
|
|
32
|
+
const providerMessage = details.providerMessage ?? providerFields.providerMessage;
|
|
33
|
+
const requestId = details.requestId ?? providerFields.requestId;
|
|
34
|
+
const common = {
|
|
35
|
+
...statusCode !== void 0 ? { statusCode } : {},
|
|
36
|
+
...providerCode !== void 0 ? { providerCode } : {},
|
|
37
|
+
...providerMessage !== void 0 ? { providerMessage } : {},
|
|
38
|
+
...requestId !== void 0 ? { requestId } : {}
|
|
39
|
+
};
|
|
40
|
+
if (context.authType === "qwen-oauth" /* QWEN_OAUTH */ && isQwenQuotaExceededError(error)) {
|
|
41
|
+
return {
|
|
42
|
+
kind: "provider-business",
|
|
43
|
+
diagnosis: "fail-fast",
|
|
44
|
+
reason: "qwen-oauth-free-tier-quota",
|
|
45
|
+
...common
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
if (isAllocatedQuotaExceeded(providerCode)) {
|
|
49
|
+
return {
|
|
50
|
+
kind: "provider-business",
|
|
51
|
+
diagnosis: "fail-fast",
|
|
52
|
+
reason: "allocated-quota-exceeded",
|
|
53
|
+
...common
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
if (isRateLimitError(error, context.extraRetryErrorCodes)) {
|
|
57
|
+
const kind = details.transport === "sse" ? "sse-provider" : statusCode !== void 0 ? "http" : "provider";
|
|
58
|
+
return {
|
|
59
|
+
kind,
|
|
60
|
+
diagnosis: "retryable",
|
|
61
|
+
reason: "rate-limit",
|
|
62
|
+
...common
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
const transportCode = getTransportCode(error);
|
|
66
|
+
if (transportCode !== void 0 && (statusCode === void 0 || statusCode >= 500)) {
|
|
67
|
+
return {
|
|
68
|
+
kind: "transport",
|
|
69
|
+
diagnosis: "retryable",
|
|
70
|
+
reason: "transport-error",
|
|
71
|
+
transportCode,
|
|
72
|
+
...statusCode !== void 0 ? { statusCode } : {}
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
if (statusCode !== void 0) {
|
|
76
|
+
const kind = details.transport === "sse" ? "sse-provider" : "http";
|
|
77
|
+
if (statusCode === 529) {
|
|
78
|
+
return {
|
|
79
|
+
kind,
|
|
80
|
+
diagnosis: "retryable",
|
|
81
|
+
reason: "capacity-overload",
|
|
82
|
+
...common
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
if (statusCode === 401 || statusCode === 403) {
|
|
86
|
+
return {
|
|
87
|
+
kind,
|
|
88
|
+
diagnosis: "fail-fast",
|
|
89
|
+
reason: "auth-error",
|
|
90
|
+
...common
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
if (statusCode >= 400 && statusCode < 500) {
|
|
94
|
+
return {
|
|
95
|
+
kind,
|
|
96
|
+
diagnosis: "fail-fast",
|
|
97
|
+
reason: "client-error",
|
|
98
|
+
...common
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
if (statusCode >= 500 && statusCode < 600) {
|
|
102
|
+
return {
|
|
103
|
+
kind,
|
|
104
|
+
diagnosis: "retryable",
|
|
105
|
+
reason: "server-error",
|
|
106
|
+
...common
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
return {
|
|
110
|
+
kind,
|
|
111
|
+
diagnosis: "unknown",
|
|
112
|
+
reason: "http-status",
|
|
113
|
+
...common
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
return {
|
|
117
|
+
kind: "unknown",
|
|
118
|
+
diagnosis: "unknown",
|
|
119
|
+
reason: "unclassified",
|
|
120
|
+
...common
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
__name(classifyRetryError, "classifyRetryError");
|
|
124
|
+
function isRetryAbortError(error) {
|
|
125
|
+
if (isAbortError(error)) {
|
|
126
|
+
return true;
|
|
127
|
+
}
|
|
128
|
+
return error instanceof Error && error.name === "CanceledError";
|
|
129
|
+
}
|
|
130
|
+
__name(isRetryAbortError, "isRetryAbortError");
|
|
131
|
+
var MAX_TRANSPORT_CAUSE_DEPTH = 4;
|
|
132
|
+
function getTransportCode(error) {
|
|
133
|
+
let current = error;
|
|
134
|
+
for (let depth = 0; depth <= MAX_TRANSPORT_CAUSE_DEPTH; depth++) {
|
|
135
|
+
if (typeof current !== "object" || current === null) {
|
|
136
|
+
return void 0;
|
|
137
|
+
}
|
|
138
|
+
const code = current.code;
|
|
139
|
+
if (typeof code === "string" && isTransportCode(code)) {
|
|
140
|
+
return code;
|
|
141
|
+
}
|
|
142
|
+
current = current instanceof Error ? current.cause : void 0;
|
|
143
|
+
}
|
|
144
|
+
return void 0;
|
|
145
|
+
}
|
|
146
|
+
__name(getTransportCode, "getTransportCode");
|
|
147
|
+
function isTransportCode(code) {
|
|
148
|
+
return TRANSPORT_ERROR_CODES.has(code);
|
|
149
|
+
}
|
|
150
|
+
__name(isTransportCode, "isTransportCode");
|
|
151
|
+
var TRANSPORT_ERROR_CODES = /* @__PURE__ */ new Set([
|
|
152
|
+
"EAI_AGAIN",
|
|
153
|
+
"ECONNABORTED",
|
|
154
|
+
"ECONNREFUSED",
|
|
155
|
+
"ECONNRESET",
|
|
156
|
+
"EHOSTUNREACH",
|
|
157
|
+
"ENETUNREACH",
|
|
158
|
+
"ENOTFOUND",
|
|
159
|
+
"EPIPE",
|
|
160
|
+
"ETIMEDOUT",
|
|
161
|
+
"UND_ERR_BODY_TIMEOUT",
|
|
162
|
+
"UND_ERR_CONNECT_TIMEOUT",
|
|
163
|
+
"UND_ERR_HEADERS_TIMEOUT",
|
|
164
|
+
"UND_ERR_SOCKET"
|
|
165
|
+
]);
|
|
166
|
+
function isAllocatedQuotaExceeded(providerCode) {
|
|
167
|
+
return providerCode === "Throttling.AllocationQuota";
|
|
168
|
+
}
|
|
169
|
+
__name(isAllocatedQuotaExceeded, "isAllocatedQuotaExceeded");
|
|
170
|
+
function getProviderFields(error) {
|
|
171
|
+
if (typeof error !== "object" || error === null) {
|
|
172
|
+
return {};
|
|
173
|
+
}
|
|
174
|
+
const source = error;
|
|
175
|
+
const rawCode = typeof source.code === "string" || typeof source.code === "number" ? String(source.code) : void 0;
|
|
176
|
+
const isHttpStatusEcho = typeof source.code === "number" && source.code >= 100 && source.code < 600;
|
|
177
|
+
const providerCode = error instanceof Error && rawCode?.startsWith("ERR_") || isHttpStatusEcho ? void 0 : rawCode;
|
|
178
|
+
const requestId = typeof source.request_id === "string" ? source.request_id : typeof source.requestId === "string" ? source.requestId : void 0;
|
|
179
|
+
const providerMessage = typeof source.message === "string" && (!(error instanceof Error) || providerCode !== void 0 || requestId !== void 0) ? source.message : void 0;
|
|
180
|
+
return {
|
|
181
|
+
...providerCode !== void 0 ? { providerCode } : {},
|
|
182
|
+
...providerMessage !== void 0 ? { providerMessage } : {},
|
|
183
|
+
...requestId !== void 0 ? { requestId } : {}
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
__name(getProviderFields, "getProviderFields");
|
|
187
|
+
var FALLBACK_ELIGIBLE_STATUS_CODES = /* @__PURE__ */ new Set([429, 503, 529]);
|
|
188
|
+
function isFallbackEligible(classification) {
|
|
189
|
+
return classification.kind !== "transport" && classification.statusCode !== void 0 && FALLBACK_ELIGIBLE_STATUS_CODES.has(classification.statusCode) && classification.diagnosis !== "fail-fast" && classification.diagnosis !== "unknown";
|
|
190
|
+
}
|
|
191
|
+
__name(isFallbackEligible, "isFallbackEligible");
|
|
192
|
+
|
|
193
|
+
export {
|
|
194
|
+
classifyRetryError,
|
|
195
|
+
getTransportCode,
|
|
196
|
+
isFallbackEligible
|
|
197
|
+
};
|
|
198
|
+
/**
|
|
199
|
+
* @license
|
|
200
|
+
* Copyright 2026 Google LLC
|
|
201
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
202
|
+
*/
|
|
@@ -4,37 +4,50 @@ import {
|
|
|
4
4
|
DashScopeOpenAICompatibleProvider,
|
|
5
5
|
DefaultOpenAICompatibleProvider
|
|
6
6
|
} from "./chunk-IIJEYBNH.js";
|
|
7
|
-
import {
|
|
8
|
-
RequestTokenizer
|
|
9
|
-
} from "./chunk-B2GJNDTV.js";
|
|
10
|
-
import {
|
|
11
|
-
DEFAULT_STREAM_IDLE_TIMEOUT_MS,
|
|
12
|
-
DEFAULT_STREAM_MAX_LIFETIME_MS,
|
|
13
|
-
MAX_STREAM_GUARD_TIMEOUT_MS,
|
|
14
|
-
QWEN_STREAM_IDLE_TIMEOUT_MS_ENV,
|
|
15
|
-
QWEN_STREAM_MAX_LIFETIME_MS_ENV
|
|
16
|
-
} from "./chunk-AXMWHKXA.js";
|
|
17
|
-
import {
|
|
18
|
-
createChildAbortController
|
|
19
|
-
} from "./chunk-DJ2GSRLV.js";
|
|
20
7
|
import {
|
|
21
8
|
OpenAIContentConverter,
|
|
22
9
|
TaggedThinkingParser,
|
|
23
10
|
openaiRequestCaptureContext
|
|
24
11
|
} from "./chunk-DREZZAZM.js";
|
|
12
|
+
import {
|
|
13
|
+
applyOfficialOpenAIPromptCaching,
|
|
14
|
+
isOfficialOpenAIEndpoint
|
|
15
|
+
} from "./chunk-SAH4BD2J.js";
|
|
16
|
+
import {
|
|
17
|
+
getCurrentAgentId
|
|
18
|
+
} from "./chunk-CPG6P4GG.js";
|
|
25
19
|
import {
|
|
26
20
|
InvalidStreamError
|
|
27
21
|
} from "./chunk-2J3OJGTL.js";
|
|
22
|
+
import {
|
|
23
|
+
isInForkExecution
|
|
24
|
+
} from "./chunk-IA7TGCN2.js";
|
|
25
|
+
import {
|
|
26
|
+
getTransportCode
|
|
27
|
+
} from "./chunk-SR7RZ4MS.js";
|
|
28
28
|
import {
|
|
29
29
|
getRateLimitErrorDetails
|
|
30
30
|
} from "./chunk-M6HMMKVG.js";
|
|
31
|
+
import {
|
|
32
|
+
RequestTokenizer
|
|
33
|
+
} from "./chunk-B2GJNDTV.js";
|
|
31
34
|
import {
|
|
32
35
|
safeJsonParse
|
|
33
36
|
} from "./chunk-CKASRHZI.js";
|
|
37
|
+
import {
|
|
38
|
+
DEFAULT_STREAM_IDLE_TIMEOUT_MS,
|
|
39
|
+
DEFAULT_STREAM_MAX_LIFETIME_MS,
|
|
40
|
+
MAX_STREAM_GUARD_TIMEOUT_MS,
|
|
41
|
+
QWEN_STREAM_IDLE_TIMEOUT_MS_ENV,
|
|
42
|
+
QWEN_STREAM_MAX_LIFETIME_MS_ENV
|
|
43
|
+
} from "./chunk-AXMWHKXA.js";
|
|
34
44
|
import {
|
|
35
45
|
getToolCallPreparations,
|
|
36
46
|
runtimeDiagnostics
|
|
37
47
|
} from "./chunk-GLCZKT5V.js";
|
|
48
|
+
import {
|
|
49
|
+
createChildAbortController
|
|
50
|
+
} from "./chunk-DJ2GSRLV.js";
|
|
38
51
|
import {
|
|
39
52
|
reportOpenAiChunk,
|
|
40
53
|
reportOpenAiRequest,
|
|
@@ -43,7 +56,7 @@ import {
|
|
|
43
56
|
import {
|
|
44
57
|
ProtocolTagSanitizedEvent,
|
|
45
58
|
logProtocolTagSanitized
|
|
46
|
-
} from "./chunk-
|
|
59
|
+
} from "./chunk-3PY4LPJF.js";
|
|
47
60
|
import {
|
|
48
61
|
isQwenFamilyWireModel,
|
|
49
62
|
isTieredEffortWireModel
|
|
@@ -1479,10 +1492,18 @@ var ContentGenerationPipeline = class {
|
|
|
1479
1492
|
baseRequest["tool_choice"] = "none";
|
|
1480
1493
|
}
|
|
1481
1494
|
}
|
|
1482
|
-
|
|
1495
|
+
let providerRequest = this.config.provider.buildRequest(
|
|
1483
1496
|
baseRequest,
|
|
1484
1497
|
userPromptId
|
|
1485
1498
|
);
|
|
1499
|
+
if (this.contentGeneratorConfig.enableCacheControl !== false && isOfficialOpenAIEndpoint(this.contentGeneratorConfig)) {
|
|
1500
|
+
providerRequest = applyOfficialOpenAIPromptCaching(
|
|
1501
|
+
providerRequest,
|
|
1502
|
+
this.config.cliConfig.getSessionId?.(),
|
|
1503
|
+
request.promptCacheSharing === true,
|
|
1504
|
+
isInForkExecution() ? void 0 : getCurrentAgentId() ?? void 0
|
|
1505
|
+
);
|
|
1506
|
+
}
|
|
1486
1507
|
const model = (context.model ?? "").toLowerCase();
|
|
1487
1508
|
const isDashScope = DashScopeOpenAICompatibleProvider.isDashScopeProvider(
|
|
1488
1509
|
this.contentGeneratorConfig
|
|
@@ -1710,11 +1731,18 @@ var EnhancedErrorHandler = class {
|
|
|
1710
1731
|
);
|
|
1711
1732
|
}
|
|
1712
1733
|
if (isTimeoutError) {
|
|
1713
|
-
|
|
1734
|
+
const timeoutError = new Error(
|
|
1714
1735
|
`${errorMessage}
|
|
1715
1736
|
|
|
1716
|
-
${this.getTimeoutTroubleshootingTips()}
|
|
1737
|
+
${this.getTimeoutTroubleshootingTips()}`,
|
|
1738
|
+
{ cause: redactedError }
|
|
1717
1739
|
);
|
|
1740
|
+
const status = getErrorStatus(redactedError);
|
|
1741
|
+
const transportCode = getTransportCode(redactedError);
|
|
1742
|
+
throw Object.assign(timeoutError, {
|
|
1743
|
+
...status !== void 0 ? { status } : {},
|
|
1744
|
+
...status === void 0 && transportCode === void 0 ? { code: "ETIMEDOUT" } : {}
|
|
1745
|
+
});
|
|
1718
1746
|
}
|
|
1719
1747
|
throw redactedError;
|
|
1720
1748
|
}
|
|
@@ -2,20 +2,20 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
CLIENT_MCP_OVER_WS_CONFIG_FLAG
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-M2PNLYGY.js";
|
|
6
6
|
import {
|
|
7
7
|
SessionNotFoundError
|
|
8
8
|
} from "./chunk-J26HHFI5.js";
|
|
9
9
|
import {
|
|
10
10
|
ChannelWorkerStartupError
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-KTJFU7RT.js";
|
|
12
12
|
import {
|
|
13
13
|
ChannelDeliveryError,
|
|
14
14
|
ChannelWebhookEnqueueError
|
|
15
15
|
} from "./chunk-YP5KH5Y7.js";
|
|
16
16
|
import {
|
|
17
17
|
CHANNEL_LOOP_MCP_SERVER_NAME
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-DIWZNWZT.js";
|
|
19
19
|
import {
|
|
20
20
|
init_esbuild_shims
|
|
21
21
|
} from "./chunk-5O2XNYP6.js";
|