@qwen-code/qwen-code 0.20.1 → 0.20.2-gdpval-vl-bridge.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-LJXM44LM.js} +10 -11
- package/chunks/{StandaloneSessionPicker-PE4JAIFA.js → StandaloneSessionPicker-PJL4SUNJ.js} +25 -26
- package/chunks/{acpAgent-BVIKGJ2C.js → acpAgent-QILHBOVE.js} +121 -80
- package/chunks/{agent-DHLFAOUV.js → agent-MITS5NNF.js} +10 -11
- package/chunks/{agent-headless-ZP5WTNXZ.js → agent-headless-CSKMTZYT.js} +10 -11
- package/chunks/{anthropicContentGenerator-NMSS7IMV.js → anthropicContentGenerator-HGWAHO24.js} +6 -8
- package/chunks/{bridge-XAK7JKMD.js → bridge-OTBUREJB.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-76OFFG6L.js → chunk-2DGTZXPP.js} +1 -1
- package/chunks/{chunk-BWQRDISK.js → chunk-2M6SP3YW.js} +1 -1
- package/chunks/chunk-3Z43GZUQ.js +32 -0
- package/chunks/{chunk-N5ARKAVE.js → chunk-4I7Z3D2K.js} +6 -6
- package/chunks/{chunk-EFIOE2EH.js → chunk-4WI3O5SO.js} +1 -1
- package/chunks/{chunk-27CLX4FV.js → chunk-54ABO2GD.js} +1 -1
- package/chunks/{chunk-BKZEHVPV.js → chunk-5G3ZVADU.js} +148 -47
- package/chunks/{chunk-PIHKWN7M.js → chunk-5IDR6XE4.js} +1 -1
- package/chunks/{chunk-Q3GGJDYN.js → chunk-5VLWDXVW.js} +3 -3
- package/chunks/{chunk-3KQSDUK3.js → chunk-5ZJ76VN7.js} +7 -8
- package/chunks/{chunk-R7MPKABX.js → chunk-6KTYB3BL.js} +70 -36
- package/chunks/{chunk-4DSBFQMI.js → chunk-6KWPAL2Y.js} +2 -2
- package/chunks/{chunk-PSVSP2OS.js → chunk-6PMESZR4.js} +3 -3
- package/chunks/{chunk-TXRKCFWS.js → chunk-7UOLRSUW.js} +1 -1
- package/chunks/{chunk-DRIXALGM.js → chunk-7Z3BQV36.js} +2 -2
- package/chunks/{chunk-KQQ757OQ.js → chunk-ACW3VNUE.js} +1 -1
- package/chunks/{chunk-TPR35HHZ.js → chunk-AIAHTIQX.js} +3 -3
- package/chunks/{chunk-KSZZBDVD.js → chunk-AWRZQTYG.js} +25 -25
- package/chunks/{chunk-PPIHLGNE.js → chunk-B3QY5TAE.js} +1 -1
- package/chunks/{chunk-M7WBGLYP.js → chunk-BULDBTYC.js} +2 -0
- package/chunks/{chunk-JYS55H6Z.js → chunk-CBOQ3HY7.js} +400 -3
- package/chunks/{chunk-6PRNSLMB.js → chunk-CNXESX7W.js} +16 -17
- package/chunks/{chunk-S3YQCNJE.js → chunk-DZDM2LCO.js} +1 -1
- package/chunks/{chunk-JKFHJK5U.js → chunk-ENTIQ7PN.js} +4 -4
- package/chunks/{chunk-7SWFAKVH.js → chunk-ERCSSQY3.js} +10 -10
- package/chunks/{chunk-3LH5Q2AR.js → chunk-EXVVHNPJ.js} +4 -4
- package/chunks/{chunk-JTUAAVUT.js → chunk-FFDPKCID.js} +2 -2
- package/chunks/{chunk-CHXKGIMK.js → chunk-FLLYXUZE.js} +1 -1
- package/chunks/{chunk-X7XWGRDT.js → chunk-GCEE2HJ5.js} +3 -3
- package/chunks/{chunk-7LH6CHKG.js → chunk-GHERLCN5.js} +1 -1
- package/chunks/{chunk-QD6BRERJ.js → chunk-GHRSKGHF.js} +1 -1
- package/chunks/{chunk-5G2SK2OO.js → chunk-IGAR75ZK.js} +192 -105
- package/chunks/{chunk-AZD6KAV7.js → chunk-ISOHMBTV.js} +3 -3
- package/chunks/{chunk-JO7FGOSY.js → chunk-JIK3TDIA.js} +3 -3
- package/chunks/{chunk-EWXXMRMP.js → chunk-JJEBXTZW.js} +2 -2
- package/chunks/{chunk-QUHJRRUA.js → chunk-KCJDKAVN.js} +29 -18
- package/chunks/{chunk-G6LRTI62.js → chunk-KXFNYTHD.js} +4 -4
- package/chunks/{chunk-OUDZVU7H.js → chunk-LCKGROQ7.js} +7 -5
- package/chunks/{chunk-JJEFX6U5.js → chunk-LESHKUWF.js} +2 -4
- package/chunks/{chunk-WCFTQD7H.js → chunk-LX4HOTPK.js} +1 -1
- package/chunks/{chunk-6NHK6HS7.js → chunk-MDZTPSXO.js} +1 -1
- package/chunks/{chunk-MTSYH4MB.js → chunk-MQCQ2RPF.js} +2 -2
- package/chunks/{chunk-R3BCL5XW.js → chunk-NOXG3VV4.js} +3 -3
- package/chunks/{chunk-QSJ6JIF5.js → chunk-OBGWF32G.js} +3 -3
- package/chunks/{chunk-BZAEENUV.js → chunk-PCW6IHMC.js} +2 -2
- package/chunks/{chunk-KDPIV6WC.js → chunk-PFSXIGJ4.js} +1 -1
- package/chunks/{chunk-766HLFAG.js → chunk-QOXNPPAQ.js} +3 -3
- package/chunks/{chunk-GEB2CGUV.js → chunk-QPYT2PMU.js} +1368 -984
- package/chunks/{chunk-IS2SBY6T.js → chunk-RCUEYZDE.js} +36 -2
- package/chunks/{chunk-JIBBZH37.js → chunk-RWAYXN3M.js} +23 -25
- package/chunks/{chunk-5EA5NVXS.js → chunk-RXIGY3Z7.js} +1 -1
- package/chunks/{chunk-NNFK277W.js → chunk-RXXCWIIT.js} +1 -1
- package/chunks/{chunk-SP32MK6J.js → chunk-S5OLFBI4.js} +1 -1
- package/chunks/{chunk-LPMBFOWH.js → chunk-SD4BYEST.js} +33 -33
- package/chunks/{chunk-DPRMI6NU.js → chunk-SJFV5DCS.js} +1 -1
- package/chunks/{chunk-PBED7USE.js → chunk-SJYO564B.js} +1 -1
- package/chunks/{chunk-4BRH6FP5.js → chunk-TQOHIH3J.js} +4 -4
- package/chunks/{chunk-3SXF4GMQ.js → chunk-TSHDJIHT.js} +1 -1
- package/chunks/{chunk-Q2V2ADXF.js → chunk-TZD76DW5.js} +4 -4
- package/chunks/{chunk-7NDXG4MB.js → chunk-VMK4GQ7U.js} +7 -7
- package/chunks/{chunk-52T5UHAZ.js → chunk-VO6WUB5V.js} +1 -1
- package/chunks/{chunk-LYEKAAEH.js → chunk-VV6A6GOJ.js} +3 -3
- package/chunks/{chunk-EC2ET5ZZ.js → chunk-WO7ZDMC3.js} +1 -1
- package/chunks/{chunk-WML6JOGQ.js → chunk-WUK6EDXF.js} +5 -7
- package/chunks/{chunk-JHFVJQRO.js → chunk-XP4OZD4C.js} +1 -1
- package/chunks/{chunk-Y2DAH52F.js → chunk-YLBIIEB3.js} +4 -4
- package/chunks/{chunk-RYSMKY43.js → chunk-Z4CVMZDO.js} +4 -4
- package/chunks/{chunk-D6ZOVZLF.js → chunk-Z4KOWJRT.js} +1 -1
- package/chunks/{chunk-D53NR4GO.js → chunk-ZLEQDVBN.js} +66 -52
- package/chunks/{computer-use-MV4K6WJM.js → computer-use-XH5KVSRK.js} +10 -11
- package/chunks/{config-utils-WYUQ7II4.js → config-utils-FYTBZLCJ.js} +1 -1
- package/chunks/{contextCommand-TQD36VNX.js → contextCommand-TLVGNAYE.js} +12 -13
- package/chunks/{create-sub-session-JOW4BKMC.js → create-sub-session-EJ6CRFF2.js} +10 -11
- package/chunks/{daemon-KLPTQIE4.js → daemon-GJRFILYS.js} +185 -18
- package/chunks/{daemon-status-provider-TII4SMCZ.js → daemon-status-provider-KOO2M6UX.js} +18 -19
- package/chunks/{earlyInputCapture-2V57RG6H.js → earlyInputCapture-XQBXXREG.js} +10 -11
- package/chunks/{edit-TTUH7PWR.js → edit-KYBZLIFH.js} +10 -11
- package/chunks/{enter-worktree-D4IVCXYB.js → enter-worktree-4QGJGFEV.js} +10 -11
- package/chunks/{enterPlanMode-WRUJTVYN.js → enterPlanMode-JVGORNU6.js} +10 -11
- package/chunks/{environment-SEPKXB2C.js → environment-BHBI5AZ6.js} +12 -13
- package/chunks/{errors-YSVGBLBU.js → errors-JEUC6I3K.js} +12 -13
- package/chunks/{exit-worktree-MZ4JSSP6.js → exit-worktree-CWTHMB5Z.js} +10 -11
- package/chunks/{exitPlanMode-HAZLSSOJ.js → exitPlanMode-BBSMHTLY.js} +10 -11
- package/chunks/{fast-path-EVBVIE2U.js → fast-path-TKXQ2N7L.js} +3 -3
- package/chunks/{fast-path-settings-XB3CPUJT.js → fast-path-settings-DAOVFADC.js} +2 -2
- package/chunks/{gemini-APQ76464.js → gemini-TZWFMMSH.js} +53 -54
- package/chunks/{geminiContentGenerator-LB4MA2LI.js → geminiContentGenerator-WWGEJKFB.js} +1 -1
- package/chunks/{glob-LABYMYKG.js → glob-CUK5IVAR.js} +10 -11
- package/chunks/{grep-HKIKJCAS.js → grep-5KK7VUB2.js} +10 -11
- package/chunks/{handleAutoUpdate-RWAAL2UM.js → handleAutoUpdate-7VWATKG6.js} +15 -16
- package/chunks/{i18n-ZUVDAJIJ.js → i18n-S3SUCYS6.js} +11 -12
- package/chunks/{initializer-7YUHIC36.js → initializer-4TGXLN4W.js} +16 -17
- package/chunks/{installationInfo-DVEOMWDE.js → installationInfo-HP345PUE.js} +11 -12
- package/chunks/{list-WHCZSIR2.js → list-Z4B2PADO.js} +19 -20
- package/chunks/{loadedSettingsAdapter-YCWN6AK3.js → loadedSettingsAdapter-HPSBPLTA.js} +16 -17
- package/chunks/{managed-npm-update-PG3463CJ.js → managed-npm-update-MIAA4DVB.js} +11 -12
- package/chunks/{mcp-VLHDCKAN.js → mcp-SRDAT3US.js} +16 -17
- package/chunks/{monitor-GG4F4YM6.js → monitor-WXB5MY4U.js} +10 -11
- package/chunks/{nonInteractiveCli-UYXYV4YX.js → nonInteractiveCli-2GFHBH47.js} +46 -47
- package/chunks/{notebook-edit-US4VLN6Q.js → notebook-edit-A22GKYUC.js} +10 -11
- package/chunks/{openaiContentGenerator-CVEDTMDB.js → openaiContentGenerator-ZQ6CYL4U.js} +7 -8
- package/chunks/{pidfile-QQ45OIOY.js → pidfile-PBV63DT4.js} +10 -11
- package/chunks/{processUtils-3WMHLQE5.js → processUtils-D3F5NRBV.js} +2 -2
- package/chunks/{qwenContentGenerator-Y2GRNYZQ.js → qwenContentGenerator-2N24PNP3.js} +15 -16
- package/chunks/{qwenOAuth2-J2X6E5VO.js → qwenOAuth2-YFFJOT4S.js} +7 -8
- package/chunks/{read-file-C7Z266CU.js → read-file-PJ6S7IGJ.js} +4 -4
- package/chunks/{resumeHistoryUtils-KBQWX77U.js → resumeHistoryUtils-RQUWKOKB.js} +13 -14
- package/chunks/{ripGrep-RW26MTQ3.js → ripGrep-I5FH2I7V.js} +10 -11
- package/chunks/{run-qwen-serve-MXFMOMEL.js → run-qwen-serve-4VHQN3CF.js} +67 -48
- package/chunks/{runtime-APNO3V6D.js → runtime-K4BTMDOK.js} +18 -19
- package/chunks/{scheduler-L6FYCGVO.js → scheduler-YLNOB2ZX.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-CNPQK3RE.js} +16 -17
- package/chunks/{server-5TJJEMVQ.js → server-YMIGPXOS.js} +1322 -178
- package/chunks/{session-BWEUHKQB.js → session-ZJHIJ6XL.js} +49 -50
- package/chunks/{settings-O7IUQNRR.js → settings-IJECFRXI.js} +18 -19
- package/chunks/{shell-R5L4NQYY.js → shell-LFSMRD3H.js} +10 -11
- package/chunks/{skill-ITEOSNW6.js → skill-HOUMVQOO.js} +4 -4
- package/chunks/{spawnChannel-E7NTWSGW.js → spawnChannel-H5V2VAS4.js} +12 -13
- package/chunks/{src-FFXGUTNL.js → src-PT66JDFR.js} +45 -33
- package/chunks/{standalone-update-JCJOXW4P.js → standalone-update-BELF5IPT.js} +13 -14
- package/chunks/{startInteractiveUI-IJSBLZFO.js → startInteractiveUI-POZD5EYR.js} +150 -144
- package/chunks/{team-create-OVSZTJZO.js → team-create-IXRXGMLS.js} +10 -11
- package/chunks/{team-plan-approval-SLEVDLT5.js → team-plan-approval-4LIT4KTC.js} +10 -11
- package/chunks/{theme-manager-V6ZQISHM.js → theme-manager-5POAFV4H.js} +10 -11
- package/chunks/{tool-search-KYIF6C6E.js → tool-search-TDETP5WK.js} +4 -4
- package/chunks/{total-session-admission-EU77XTL7.js → total-session-admission-E7DO4SAC.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-TYGSOWS6.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-IWFT5NLP.js} +5 -5
- package/chunks/{updateCheck-KZ5LZ545.js → updateCheck-5EGA5DYR.js} +13 -14
- package/chunks/{useAutoAcceptIndicator-47EZERGQ.js → useAutoAcceptIndicator-SD44HHNK.js} +18 -19
- package/chunks/{validateNonInterActiveAuth-J2DM4LWZ.js → validateNonInterActiveAuth-5NAZUFHP.js} +43 -44
- package/chunks/{version-PN7WYXHP.js → version-ZSU7UBMZ.js} +1 -1
- package/chunks/{web-fetch-WRI5QRFR.js → web-fetch-QGHG72G2.js} +6 -7
- package/chunks/{web-search-2HCXNAVX.js → web-search-F6CEDF53.js} +13 -12
- package/chunks/{workflow-U5XBPGQZ.js → workflow-DWUUO6GZ.js} +11 -12
- package/chunks/{workspace-providers-status-2T54GIJZ.js → workspace-providers-status-XOINT6H3.js} +19 -20
- package/chunks/{workspace-registration-store-F3V4KBIW.js → workspace-registration-store-WMR4IVHM.js} +1 -1
- package/chunks/{workspace-registry-U6QVZ5BU.js → workspace-registry-E3R2OXHI.js} +14 -15
- package/chunks/{workspace-service-734D36QD.js → workspace-service-46DNRBIV.js} +21 -22
- package/chunks/{workspace-skills-status-5ABUKOAQ.js → workspace-skills-status-ENBQGA5A.js} +17 -18
- package/chunks/{write-file-CIH4I4CS.js → write-file-RVSFV5UL.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
|
@@ -15,11 +15,12 @@ import {
|
|
|
15
15
|
normalize,
|
|
16
16
|
normalizeMcpToolName,
|
|
17
17
|
normalizeToolNameForProvider,
|
|
18
|
+
preloadRuntimeFetchModule,
|
|
18
19
|
relaxSchemaForFunctionCalling,
|
|
19
20
|
runtimeDiagnostics,
|
|
20
21
|
safeJsonParse,
|
|
21
22
|
setToolCallPreparations
|
|
22
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-CBOQ3HY7.js";
|
|
23
24
|
import {
|
|
24
25
|
require_lib
|
|
25
26
|
} from "./chunk-A4UCTEB5.js";
|
|
@@ -56,6 +57,7 @@ import {
|
|
|
56
57
|
recordFileOperationMetric,
|
|
57
58
|
recordMemoryDreamMetrics,
|
|
58
59
|
recordMemoryExtractMetrics,
|
|
60
|
+
recordMemoryRecallDeliveryMetrics,
|
|
59
61
|
recordMemoryRecallMetrics,
|
|
60
62
|
recordModelSlashCommand,
|
|
61
63
|
recordSubagentExecutionMetrics,
|
|
@@ -63,7 +65,7 @@ import {
|
|
|
63
65
|
recordToolCallMetrics,
|
|
64
66
|
startLLMRequestSpan,
|
|
65
67
|
truncateSpanError
|
|
66
|
-
} from "./chunk-
|
|
68
|
+
} from "./chunk-RCUEYZDE.js";
|
|
67
69
|
import {
|
|
68
70
|
require_src
|
|
69
71
|
} from "./chunk-HTR4WV6U.js";
|
|
@@ -94,6 +96,7 @@ import {
|
|
|
94
96
|
EVENT_MEMORY_DREAM,
|
|
95
97
|
EVENT_MEMORY_EXTRACT,
|
|
96
98
|
EVENT_MEMORY_RECALL,
|
|
99
|
+
EVENT_MEMORY_RECALL_DELIVERY,
|
|
97
100
|
EVENT_MODEL_SLASH_COMMAND,
|
|
98
101
|
EVENT_NEXT_SPEAKER_CHECK,
|
|
99
102
|
EVENT_PROMPT_SUGGESTION,
|
|
@@ -114,7 +117,7 @@ import {
|
|
|
114
117
|
SERVICE_NAME,
|
|
115
118
|
isValidSensitiveSpanAttributeMaxLength,
|
|
116
119
|
safeJsonStringify
|
|
117
|
-
} from "./chunk-
|
|
120
|
+
} from "./chunk-BULDBTYC.js";
|
|
118
121
|
import {
|
|
119
122
|
SemanticAttributes,
|
|
120
123
|
init_esm as init_esm2
|
|
@@ -10725,6 +10728,75 @@ function getAllMCPServerStatuses() {
|
|
|
10725
10728
|
}
|
|
10726
10729
|
__name(getAllMCPServerStatuses, "getAllMCPServerStatuses");
|
|
10727
10730
|
|
|
10731
|
+
// packages/core/src/services/visionBridge/image-part-utils.ts
|
|
10732
|
+
init_esbuild_shims();
|
|
10733
|
+
function normalizeParts(input) {
|
|
10734
|
+
if (typeof input === "string") {
|
|
10735
|
+
return [{ text: input }];
|
|
10736
|
+
}
|
|
10737
|
+
if (Array.isArray(input)) {
|
|
10738
|
+
return input.map(
|
|
10739
|
+
(part) => typeof part === "string" ? { text: part } : part
|
|
10740
|
+
);
|
|
10741
|
+
}
|
|
10742
|
+
return [input];
|
|
10743
|
+
}
|
|
10744
|
+
__name(normalizeParts, "normalizeParts");
|
|
10745
|
+
function isImagePart(part) {
|
|
10746
|
+
const mimeType = part.inlineData?.mimeType;
|
|
10747
|
+
const data = part.inlineData?.data;
|
|
10748
|
+
return typeof mimeType === "string" && mimeType.startsWith("image/") && typeof data === "string" && data.length > 0;
|
|
10749
|
+
}
|
|
10750
|
+
__name(isImagePart, "isImagePart");
|
|
10751
|
+
function hasImageParts(input) {
|
|
10752
|
+
return normalizeParts(input).some(isImagePart);
|
|
10753
|
+
}
|
|
10754
|
+
__name(hasImageParts, "hasImageParts");
|
|
10755
|
+
function splitImageParts(input) {
|
|
10756
|
+
const imageParts = [];
|
|
10757
|
+
const nonImageParts = [];
|
|
10758
|
+
for (const part of normalizeParts(input)) {
|
|
10759
|
+
if (isImagePart(part)) {
|
|
10760
|
+
imageParts.push(part);
|
|
10761
|
+
} else {
|
|
10762
|
+
nonImageParts.push(part);
|
|
10763
|
+
}
|
|
10764
|
+
}
|
|
10765
|
+
return { imageParts, nonImageParts };
|
|
10766
|
+
}
|
|
10767
|
+
__name(splitImageParts, "splitImageParts");
|
|
10768
|
+
function replaceImagesWithText(input, text) {
|
|
10769
|
+
const result = [];
|
|
10770
|
+
let replaced = false;
|
|
10771
|
+
for (const part of normalizeParts(input)) {
|
|
10772
|
+
if (isImagePart(part)) {
|
|
10773
|
+
if (!replaced) {
|
|
10774
|
+
result.push({ text });
|
|
10775
|
+
replaced = true;
|
|
10776
|
+
}
|
|
10777
|
+
continue;
|
|
10778
|
+
}
|
|
10779
|
+
result.push(part);
|
|
10780
|
+
}
|
|
10781
|
+
if (!replaced) {
|
|
10782
|
+
result.push({ text });
|
|
10783
|
+
}
|
|
10784
|
+
return result;
|
|
10785
|
+
}
|
|
10786
|
+
__name(replaceImagesWithText, "replaceImagesWithText");
|
|
10787
|
+
function isUsableImagePart(part) {
|
|
10788
|
+
const data = part.inlineData?.data;
|
|
10789
|
+
if (typeof data !== "string" || data.length === 0) {
|
|
10790
|
+
return false;
|
|
10791
|
+
}
|
|
10792
|
+
return data.length <= VISION_BRIDGE_MAX_IMAGE_BASE64_BYTES;
|
|
10793
|
+
}
|
|
10794
|
+
__name(isUsableImagePart, "isUsableImagePart");
|
|
10795
|
+
function collectText(parts) {
|
|
10796
|
+
return parts.map((part) => typeof part.text === "string" ? part.text : "").filter((text) => text.length > 0).join("\n").trim();
|
|
10797
|
+
}
|
|
10798
|
+
__name(collectText, "collectText");
|
|
10799
|
+
|
|
10728
10800
|
// packages/core/src/tools/mcp-tool.ts
|
|
10729
10801
|
var debugLogger4 = createDebugLogger("MCP_TOOL");
|
|
10730
10802
|
var MCP_CONNECTION_ERROR_PATTERNS = [
|
|
@@ -10938,18 +11010,11 @@ var DiscoveredMCPToolInvocation = class _DiscoveredMCPToolInvocation extends Bas
|
|
|
10938
11010
|
callToolResult
|
|
10939
11011
|
);
|
|
10940
11012
|
if (this.isMCPToolError(rawResponseParts)) {
|
|
10941
|
-
const
|
|
11013
|
+
const errorResult = await this.buildMcpToolError(rawResponseParts, {
|
|
10942
11014
|
name: this.serverToolName,
|
|
10943
11015
|
args: this.params
|
|
10944
|
-
})
|
|
10945
|
-
return
|
|
10946
|
-
llmContent: errorMessage2,
|
|
10947
|
-
returnDisplay: `Error: MCP tool '${this.serverToolName}' reported an error.`,
|
|
10948
|
-
error: {
|
|
10949
|
-
message: errorMessage2,
|
|
10950
|
-
type: "mcp_tool_error" /* MCP_TOOL_ERROR */
|
|
10951
|
-
}
|
|
10952
|
-
};
|
|
11016
|
+
});
|
|
11017
|
+
return errorResult;
|
|
10953
11018
|
}
|
|
10954
11019
|
const transformedParts = transformMcpContentToParts(rawResponseParts);
|
|
10955
11020
|
const truncated = await this.truncateTextParts(transformedParts);
|
|
@@ -11007,17 +11072,11 @@ var DiscoveredMCPToolInvocation = class _DiscoveredMCPToolInvocation extends Bas
|
|
|
11007
11072
|
});
|
|
11008
11073
|
});
|
|
11009
11074
|
if (this.isMCPToolError(rawResponseParts)) {
|
|
11010
|
-
const
|
|
11075
|
+
const errorResult = await this.buildMcpToolError(
|
|
11076
|
+
rawResponseParts,
|
|
11011
11077
|
functionCalls[0]
|
|
11012
|
-
)
|
|
11013
|
-
return
|
|
11014
|
-
llmContent: errorMessage2,
|
|
11015
|
-
returnDisplay: `Error: MCP tool '${this.serverToolName}' reported an error.`,
|
|
11016
|
-
error: {
|
|
11017
|
-
message: errorMessage2,
|
|
11018
|
-
type: "mcp_tool_error" /* MCP_TOOL_ERROR */
|
|
11019
|
-
}
|
|
11020
|
-
};
|
|
11078
|
+
);
|
|
11079
|
+
return errorResult;
|
|
11021
11080
|
}
|
|
11022
11081
|
const transformedParts = transformMcpContentToParts(rawResponseParts);
|
|
11023
11082
|
const truncated = await this.truncateTextParts(transformedParts);
|
|
@@ -11033,6 +11092,34 @@ var DiscoveredMCPToolInvocation = class _DiscoveredMCPToolInvocation extends Bas
|
|
|
11033
11092
|
return this.handleReconnectOnError(error, signal);
|
|
11034
11093
|
}
|
|
11035
11094
|
}
|
|
11095
|
+
async buildMcpToolError(rawResponseParts, functionCall) {
|
|
11096
|
+
const imageContent = getMcpErrorImageContent(rawResponseParts);
|
|
11097
|
+
let llmContent;
|
|
11098
|
+
let errorMessage2;
|
|
11099
|
+
let persistedOutputFiles;
|
|
11100
|
+
if (imageContent) {
|
|
11101
|
+
const truncatedContent = await this.truncateTextParts(imageContent);
|
|
11102
|
+
llmContent = truncatedContent.parts;
|
|
11103
|
+
persistedOutputFiles = truncatedContent.persistedOutputFiles;
|
|
11104
|
+
errorMessage2 = `MCP tool '${this.serverToolName}' reported tool error for function call: ${safeJsonStringify(
|
|
11105
|
+
functionCall
|
|
11106
|
+
)} with response: ${getDisplayFromParts(truncatedContent.parts)}`;
|
|
11107
|
+
} else {
|
|
11108
|
+
errorMessage2 = `MCP tool '${this.serverToolName}' reported tool error for function call: ${safeJsonStringify(
|
|
11109
|
+
functionCall
|
|
11110
|
+
)} with response: ${safeJsonStringify(rawResponseParts)}`;
|
|
11111
|
+
llmContent = errorMessage2;
|
|
11112
|
+
}
|
|
11113
|
+
return {
|
|
11114
|
+
llmContent,
|
|
11115
|
+
returnDisplay: `Error: MCP tool '${this.serverToolName}' reported an error.`,
|
|
11116
|
+
error: {
|
|
11117
|
+
message: errorMessage2,
|
|
11118
|
+
type: "mcp_tool_error" /* MCP_TOOL_ERROR */
|
|
11119
|
+
},
|
|
11120
|
+
...persistedOutputFiles !== void 0 ? { persistedOutputFiles } : {}
|
|
11121
|
+
};
|
|
11122
|
+
}
|
|
11036
11123
|
/**
|
|
11037
11124
|
* Truncates text parts in the transformed result if they exceed the
|
|
11038
11125
|
* configured threshold. Non-text parts (images, audio, etc.) are preserved.
|
|
@@ -11283,6 +11370,11 @@ function transformMcpContentToParts(sdkResponse) {
|
|
|
11283
11370
|
return transformed.filter((part) => part !== null);
|
|
11284
11371
|
}
|
|
11285
11372
|
__name(transformMcpContentToParts, "transformMcpContentToParts");
|
|
11373
|
+
function getMcpErrorImageContent(rawResponseParts) {
|
|
11374
|
+
const transformedParts = transformMcpContentToParts(rawResponseParts);
|
|
11375
|
+
return transformedParts.some(isImagePart) ? transformedParts : void 0;
|
|
11376
|
+
}
|
|
11377
|
+
__name(getMcpErrorImageContent, "getMcpErrorImageContent");
|
|
11286
11378
|
function getDisplayFromParts(parts) {
|
|
11287
11379
|
if (parts.length === 0) {
|
|
11288
11380
|
return "";
|
|
@@ -12412,6 +12504,29 @@ var MemoryRecallEvent = class {
|
|
|
12412
12504
|
this.duration_ms = params.duration_ms;
|
|
12413
12505
|
}
|
|
12414
12506
|
};
|
|
12507
|
+
var MemoryRecallDeliveryEvent = class {
|
|
12508
|
+
static {
|
|
12509
|
+
__name(this, "MemoryRecallDeliveryEvent");
|
|
12510
|
+
}
|
|
12511
|
+
"event.name";
|
|
12512
|
+
"event.timestamp";
|
|
12513
|
+
phase;
|
|
12514
|
+
delivery_point;
|
|
12515
|
+
discard_reason;
|
|
12516
|
+
strategy;
|
|
12517
|
+
docs_selected;
|
|
12518
|
+
latency_ms;
|
|
12519
|
+
constructor(params) {
|
|
12520
|
+
this["event.name"] = "qwen-code.memory.recall.delivery";
|
|
12521
|
+
this["event.timestamp"] = (/* @__PURE__ */ new Date()).toISOString();
|
|
12522
|
+
this.phase = params.phase;
|
|
12523
|
+
this.delivery_point = params.delivery_point;
|
|
12524
|
+
this.discard_reason = params.discard_reason;
|
|
12525
|
+
this.strategy = params.strategy;
|
|
12526
|
+
this.docs_selected = params.docs_selected;
|
|
12527
|
+
this.latency_ms = params.latency_ms;
|
|
12528
|
+
}
|
|
12529
|
+
};
|
|
12415
12530
|
|
|
12416
12531
|
// packages/core/src/utils/subagentNameContext.ts
|
|
12417
12532
|
init_esbuild_shims();
|
|
@@ -16714,14 +16829,15 @@ async function createContentGenerator(generatorConfig, config, isInitialAuth) {
|
|
|
16714
16829
|
if (!authType) {
|
|
16715
16830
|
throw new Error("ContentGeneratorConfig must have an authType");
|
|
16716
16831
|
}
|
|
16832
|
+
await preloadRuntimeFetchModule();
|
|
16717
16833
|
let baseGenerator;
|
|
16718
16834
|
try {
|
|
16719
16835
|
if (authType === "openai" /* USE_OPENAI */) {
|
|
16720
|
-
const { createOpenAIContentGenerator } = await import("./openaiContentGenerator-
|
|
16836
|
+
const { createOpenAIContentGenerator } = await import("./openaiContentGenerator-ZQ6CYL4U.js");
|
|
16721
16837
|
baseGenerator = createOpenAIContentGenerator(generatorConfig, config);
|
|
16722
16838
|
} else if (authType === "qwen-oauth" /* QWEN_OAUTH */) {
|
|
16723
|
-
const { getQwenOAuthClient: getQwenOauthClient } = await import("./qwenOAuth2-
|
|
16724
|
-
const { QwenContentGenerator } = await import("./qwenContentGenerator-
|
|
16839
|
+
const { getQwenOAuthClient: getQwenOauthClient } = await import("./qwenOAuth2-YFFJOT4S.js");
|
|
16840
|
+
const { QwenContentGenerator } = await import("./qwenContentGenerator-2N24PNP3.js");
|
|
16725
16841
|
try {
|
|
16726
16842
|
const qwenClient = await getQwenOauthClient(
|
|
16727
16843
|
config,
|
|
@@ -16739,10 +16855,10 @@ async function createContentGenerator(generatorConfig, config, isInitialAuth) {
|
|
|
16739
16855
|
throw new Error(error instanceof Error ? error.message : String(error));
|
|
16740
16856
|
}
|
|
16741
16857
|
} else if (authType === "anthropic" /* USE_ANTHROPIC */) {
|
|
16742
|
-
const { createAnthropicContentGenerator } = await import("./anthropicContentGenerator-
|
|
16858
|
+
const { createAnthropicContentGenerator } = await import("./anthropicContentGenerator-HGWAHO24.js");
|
|
16743
16859
|
baseGenerator = createAnthropicContentGenerator(generatorConfig, config);
|
|
16744
16860
|
} else if (authType === "gemini" /* USE_GEMINI */ || authType === "vertex-ai" /* USE_VERTEX_AI */) {
|
|
16745
|
-
const { createGeminiContentGenerator } = await import("./geminiContentGenerator-
|
|
16861
|
+
const { createGeminiContentGenerator } = await import("./geminiContentGenerator-WWGEJKFB.js");
|
|
16746
16862
|
baseGenerator = createGeminiContentGenerator(generatorConfig, config);
|
|
16747
16863
|
} else {
|
|
16748
16864
|
throw new Error(
|
|
@@ -19228,6 +19344,34 @@ function logMemoryRecall(config, event) {
|
|
|
19228
19344
|
});
|
|
19229
19345
|
}
|
|
19230
19346
|
__name(logMemoryRecall, "logMemoryRecall");
|
|
19347
|
+
function logMemoryRecallDelivery(config, event) {
|
|
19348
|
+
if (!isTelemetrySdkInitialized()) return;
|
|
19349
|
+
const attributes = {
|
|
19350
|
+
...getCommonAttributes(config),
|
|
19351
|
+
"event.name": EVENT_MEMORY_RECALL_DELIVERY,
|
|
19352
|
+
"event.timestamp": event["event.timestamp"],
|
|
19353
|
+
phase: event.phase,
|
|
19354
|
+
delivery_point: event.delivery_point,
|
|
19355
|
+
strategy: event.strategy,
|
|
19356
|
+
docs_selected: event.docs_selected,
|
|
19357
|
+
latency_ms: event.latency_ms
|
|
19358
|
+
};
|
|
19359
|
+
if (event.discard_reason) {
|
|
19360
|
+
attributes["discard_reason"] = event.discard_reason;
|
|
19361
|
+
}
|
|
19362
|
+
const logger = import_api_logs2.logs.getLogger(SERVICE_NAME);
|
|
19363
|
+
logger.emit({
|
|
19364
|
+
body: `Memory recall delivery: phase=${event.phase}. delivery_point=${event.delivery_point}. Selected ${event.docs_selected} doc(s).`,
|
|
19365
|
+
attributes
|
|
19366
|
+
});
|
|
19367
|
+
recordMemoryRecallDeliveryMetrics(config, event.latency_ms, {
|
|
19368
|
+
phase: event.phase,
|
|
19369
|
+
delivery_point: event.delivery_point,
|
|
19370
|
+
...event.discard_reason ? { discard_reason: event.discard_reason } : {},
|
|
19371
|
+
strategy: event.strategy
|
|
19372
|
+
});
|
|
19373
|
+
}
|
|
19374
|
+
__name(logMemoryRecallDelivery, "logMemoryRecallDelivery");
|
|
19231
19375
|
|
|
19232
19376
|
// packages/core/src/memory/memoryAge.ts
|
|
19233
19377
|
init_esbuild_shims();
|
|
@@ -19454,77 +19598,9 @@ async function runSideQuery(config, options) {
|
|
|
19454
19598
|
}
|
|
19455
19599
|
__name(runSideQuery, "runSideQuery");
|
|
19456
19600
|
|
|
19457
|
-
// packages/core/src/services/visionBridge/image-part-utils.ts
|
|
19458
|
-
init_esbuild_shims();
|
|
19459
|
-
function normalizeParts(input) {
|
|
19460
|
-
if (typeof input === "string") {
|
|
19461
|
-
return [{ text: input }];
|
|
19462
|
-
}
|
|
19463
|
-
if (Array.isArray(input)) {
|
|
19464
|
-
return input.map(
|
|
19465
|
-
(part) => typeof part === "string" ? { text: part } : part
|
|
19466
|
-
);
|
|
19467
|
-
}
|
|
19468
|
-
return [input];
|
|
19469
|
-
}
|
|
19470
|
-
__name(normalizeParts, "normalizeParts");
|
|
19471
|
-
function isImagePart(part) {
|
|
19472
|
-
const mimeType = part.inlineData?.mimeType;
|
|
19473
|
-
const data = part.inlineData?.data;
|
|
19474
|
-
return typeof mimeType === "string" && mimeType.startsWith("image/") && typeof data === "string" && data.length > 0;
|
|
19475
|
-
}
|
|
19476
|
-
__name(isImagePart, "isImagePart");
|
|
19477
|
-
function hasImageParts(input) {
|
|
19478
|
-
return normalizeParts(input).some(isImagePart);
|
|
19479
|
-
}
|
|
19480
|
-
__name(hasImageParts, "hasImageParts");
|
|
19481
|
-
function splitImageParts(input) {
|
|
19482
|
-
const imageParts = [];
|
|
19483
|
-
const nonImageParts = [];
|
|
19484
|
-
for (const part of normalizeParts(input)) {
|
|
19485
|
-
if (isImagePart(part)) {
|
|
19486
|
-
imageParts.push(part);
|
|
19487
|
-
} else {
|
|
19488
|
-
nonImageParts.push(part);
|
|
19489
|
-
}
|
|
19490
|
-
}
|
|
19491
|
-
return { imageParts, nonImageParts };
|
|
19492
|
-
}
|
|
19493
|
-
__name(splitImageParts, "splitImageParts");
|
|
19494
|
-
function replaceImagesWithText(input, text) {
|
|
19495
|
-
const result = [];
|
|
19496
|
-
let replaced = false;
|
|
19497
|
-
for (const part of normalizeParts(input)) {
|
|
19498
|
-
if (isImagePart(part)) {
|
|
19499
|
-
if (!replaced) {
|
|
19500
|
-
result.push({ text });
|
|
19501
|
-
replaced = true;
|
|
19502
|
-
}
|
|
19503
|
-
continue;
|
|
19504
|
-
}
|
|
19505
|
-
result.push(part);
|
|
19506
|
-
}
|
|
19507
|
-
if (!replaced) {
|
|
19508
|
-
result.push({ text });
|
|
19509
|
-
}
|
|
19510
|
-
return result;
|
|
19511
|
-
}
|
|
19512
|
-
__name(replaceImagesWithText, "replaceImagesWithText");
|
|
19513
|
-
function isUsableImagePart(part) {
|
|
19514
|
-
const data = part.inlineData?.data;
|
|
19515
|
-
if (typeof data !== "string" || data.length === 0) {
|
|
19516
|
-
return false;
|
|
19517
|
-
}
|
|
19518
|
-
return data.length <= VISION_BRIDGE_MAX_IMAGE_BASE64_BYTES;
|
|
19519
|
-
}
|
|
19520
|
-
__name(isUsableImagePart, "isUsableImagePart");
|
|
19521
|
-
function collectText(parts) {
|
|
19522
|
-
return parts.map((part) => typeof part.text === "string" ? part.text : "").filter((text) => text.length > 0).join("\n").trim();
|
|
19523
|
-
}
|
|
19524
|
-
__name(collectText, "collectText");
|
|
19525
|
-
|
|
19526
19601
|
// packages/core/src/services/visionBridge/vision-bridge-service.ts
|
|
19527
19602
|
var debugLogger11 = createDebugLogger("VISION_BRIDGE");
|
|
19603
|
+
var turnImageCounts = /* @__PURE__ */ new WeakMap();
|
|
19528
19604
|
var BRIDGE_MAX_OUTPUT_TOKENS = 2048;
|
|
19529
19605
|
var VISION_BRIDGE_TIMEOUT_MS = 3e4;
|
|
19530
19606
|
var VISION_BRIDGE_MAX_ATTEMPTS = 2;
|
|
@@ -19681,8 +19757,10 @@ function formatFullTurnVisionNotice(selection) {
|
|
|
19681
19757
|
return `Routing this image turn to ${target}; retries and tool continuations will stay on that model until the turn ends.`;
|
|
19682
19758
|
}
|
|
19683
19759
|
__name(formatFullTurnVisionNotice, "formatFullTurnVisionNotice");
|
|
19684
|
-
function buildIntentPart(intentText, sourceContext) {
|
|
19685
|
-
const sourceHint = sourceContext ? `The images are consecutive pages ${sourceContext.renderedRange.firstPage}-${sourceContext.renderedRange.lastPage} from PDF ${JSON.stringify(sourceContext.displayName)}. Transcribe each page separately and label each section with its original PDF page number.` :
|
|
19760
|
+
function buildIntentPart(intentText, sourceContext, imageParts = []) {
|
|
19761
|
+
const sourceHint = sourceContext ? `The images are consecutive pages ${sourceContext.renderedRange.firstPage}-${sourceContext.renderedRange.lastPage} from PDF ${JSON.stringify(sourceContext.displayName)}. Transcribe each page separately and label each section with its original PDF page number.` : imageParts.length > 0 ? `Describe each image separately under these ordered labels: ${imageParts.map(
|
|
19762
|
+
(part, index) => `${index + 1}. ${JSON.stringify(part.inlineData?.displayName?.trim() || `image ${index + 1}`)}`
|
|
19763
|
+
).join("; ")}.` : "";
|
|
19686
19764
|
const focusHint = intentText.length > 0 ? `Focus hint \u2014 do NOT answer this, use it only to decide which details to transcribe thoroughly: ${intentText}` : "Describe the image(s) and transcribe any visible text, code, and errors.";
|
|
19687
19765
|
return sourceHint ? `${sourceHint}
|
|
19688
19766
|
${focusHint}` : focusHint;
|
|
@@ -19730,7 +19808,7 @@ function failure(reason, parts, omittedCount, extra = {}) {
|
|
|
19730
19808
|
}
|
|
19731
19809
|
__name(failure, "failure");
|
|
19732
19810
|
async function runVisionBridge(params) {
|
|
19733
|
-
const { config, parts, signal, sourceContext } = params;
|
|
19811
|
+
const { config, parts, signal, sourceContext, intentText } = params;
|
|
19734
19812
|
const { imageParts, nonImageParts } = splitImageParts(parts);
|
|
19735
19813
|
if (imageParts.length === 0) {
|
|
19736
19814
|
return {
|
|
@@ -19741,9 +19819,14 @@ async function runVisionBridge(params) {
|
|
|
19741
19819
|
};
|
|
19742
19820
|
}
|
|
19743
19821
|
const validImages = imageParts.filter(isUsableImagePart);
|
|
19744
|
-
const
|
|
19822
|
+
const usedImages = turnImageCounts.get(signal) ?? 0;
|
|
19823
|
+
const remainingImages = Math.max(0, VISION_BRIDGE_MAX_IMAGES - usedImages);
|
|
19824
|
+
const toConvert = validImages.slice(0, remainingImages);
|
|
19745
19825
|
const omittedCount = imageParts.length - toConvert.length;
|
|
19746
|
-
const intent = collectText(nonImageParts).slice(
|
|
19826
|
+
const intent = (intentText ?? collectText(nonImageParts)).slice(
|
|
19827
|
+
0,
|
|
19828
|
+
BRIDGE_INTENT_MAX_CHARS
|
|
19829
|
+
);
|
|
19747
19830
|
const resolvedSourceContext = sourceContext ?? inferPdfSourceContext(toConvert);
|
|
19748
19831
|
const selection = config.getDefaultVisionBridgeModel?.();
|
|
19749
19832
|
const modelId = selection?.id;
|
|
@@ -19765,13 +19848,14 @@ async function runVisionBridge(params) {
|
|
|
19765
19848
|
{ modelId, ...modelEndpoint && { modelEndpoint } }
|
|
19766
19849
|
);
|
|
19767
19850
|
}
|
|
19851
|
+
turnImageCounts.set(signal, usedImages + toConvert.length);
|
|
19768
19852
|
const timeoutMs = config.getVisionBridgeTimeoutMs?.() ?? VISION_BRIDGE_TIMEOUT_MS;
|
|
19769
19853
|
const requestContents = [
|
|
19770
19854
|
{
|
|
19771
19855
|
role: "user",
|
|
19772
19856
|
parts: [
|
|
19773
19857
|
...toConvert,
|
|
19774
|
-
{ text: buildIntentPart(intent, resolvedSourceContext) }
|
|
19858
|
+
{ text: buildIntentPart(intent, resolvedSourceContext, toConvert) }
|
|
19775
19859
|
]
|
|
19776
19860
|
}
|
|
19777
19861
|
];
|
|
@@ -19954,7 +20038,7 @@ var ReadFileToolInvocation = class extends BaseToolInvocation {
|
|
|
19954
20038
|
}
|
|
19955
20039
|
debugLogger12.debug("miss", { path: absPath, state: status.state });
|
|
19956
20040
|
}
|
|
19957
|
-
const
|
|
20041
|
+
const prepareForVisionBridge = shouldRunVisionBridge(this.config);
|
|
19958
20042
|
let result = await processSingleFileContent(
|
|
19959
20043
|
this.params.file_path,
|
|
19960
20044
|
this.config,
|
|
@@ -19962,7 +20046,8 @@ var ReadFileToolInvocation = class extends BaseToolInvocation {
|
|
|
19962
20046
|
offset: this.params.offset,
|
|
19963
20047
|
limit: this.params.limit,
|
|
19964
20048
|
pages: this.params.pages,
|
|
19965
|
-
|
|
20049
|
+
preserveUnsupportedImage: prepareForVisionBridge,
|
|
20050
|
+
preparePdfForVisionBridge: prepareForVisionBridge,
|
|
19966
20051
|
signal
|
|
19967
20052
|
}
|
|
19968
20053
|
);
|
|
@@ -20425,6 +20510,7 @@ export {
|
|
|
20425
20510
|
logMemoryExtract,
|
|
20426
20511
|
logMemoryDream,
|
|
20427
20512
|
logMemoryRecall,
|
|
20513
|
+
logMemoryRecallDelivery,
|
|
20428
20514
|
memoryAge,
|
|
20429
20515
|
memoryFreshnessText,
|
|
20430
20516
|
ReadFileTool,
|
|
@@ -20494,6 +20580,7 @@ export {
|
|
|
20494
20580
|
MemoryExtractEvent,
|
|
20495
20581
|
MemoryDreamEvent,
|
|
20496
20582
|
MemoryRecallEvent,
|
|
20583
|
+
MemoryRecallDeliveryEvent,
|
|
20497
20584
|
createOpenAIReasoningThoughtPart,
|
|
20498
20585
|
isOpenAIReasoningThoughtPart,
|
|
20499
20586
|
parseThought,
|
|
@@ -5,17 +5,17 @@ import {
|
|
|
5
5
|
} from "./chunk-2W3OOD4W.js";
|
|
6
6
|
import {
|
|
7
7
|
STATUS_SCHEMA_VERSION
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-2M6SP3YW.js";
|
|
9
9
|
import {
|
|
10
10
|
loadSettings
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-ERCSSQY3.js";
|
|
12
12
|
import {
|
|
13
13
|
writeStderrLine
|
|
14
14
|
} from "./chunk-OWAK7LMW.js";
|
|
15
15
|
import {
|
|
16
16
|
SkillManager,
|
|
17
17
|
isSafeModeEnv
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-QPYT2PMU.js";
|
|
19
19
|
import {
|
|
20
20
|
init_esbuild_shims
|
|
21
21
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
appEvents
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-ZLEQDVBN.js";
|
|
6
6
|
import {
|
|
7
7
|
assembleMcpServers,
|
|
8
8
|
getPendingGatedMcpServers,
|
|
9
9
|
getPromptableMcpServers
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-YLBIIEB3.js";
|
|
11
11
|
import {
|
|
12
12
|
getMCPServerStatus
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-IGAR75ZK.js";
|
|
14
14
|
import {
|
|
15
15
|
require_fast_deep_equal
|
|
16
16
|
} from "./chunk-YM3SZTH4.js";
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
delay
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-B3QY5TAE.js";
|
|
6
6
|
import {
|
|
7
7
|
isTlsVerificationDisabled
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-CBOQ3HY7.js";
|
|
9
9
|
import {
|
|
10
10
|
getErrorMessage
|
|
11
11
|
} from "./chunk-OQB4EXO4.js";
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
// Force strict mode and setup for ESM
|
|
2
2
|
"use strict";
|
|
3
|
+
import {
|
|
4
|
+
JsonOutputAdapter
|
|
5
|
+
} from "./chunk-GHERLCN5.js";
|
|
3
6
|
import {
|
|
4
7
|
settleChatRecording,
|
|
5
8
|
subscribeToHeadlessChatRecordingFailures
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import {
|
|
8
|
-
handleAtCommand
|
|
9
|
-
} from "./chunk-X7XWGRDT.js";
|
|
10
|
-
import {
|
|
11
|
-
JsonOutputAdapter
|
|
12
|
-
} from "./chunk-7LH6CHKG.js";
|
|
9
|
+
} from "./chunk-S5OLFBI4.js";
|
|
13
10
|
import {
|
|
14
11
|
StreamJsonOutputAdapter
|
|
15
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-5VLWDXVW.js";
|
|
13
|
+
import {
|
|
14
|
+
handleAtCommand
|
|
15
|
+
} from "./chunk-GCEE2HJ5.js";
|
|
16
16
|
import {
|
|
17
17
|
buildInitialSystemReminders,
|
|
18
18
|
buildSystemMessage,
|
|
@@ -24,11 +24,11 @@ import {
|
|
|
24
24
|
insertAfterFunctionResponses,
|
|
25
25
|
isSlashCommand,
|
|
26
26
|
normalizePartList
|
|
27
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-SD4BYEST.js";
|
|
28
28
|
import {
|
|
29
29
|
RunBudgetEnforcer,
|
|
30
30
|
cleanupReviewWorktreeLeases
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-ZLEQDVBN.js";
|
|
32
32
|
import {
|
|
33
33
|
AlreadyReportedError,
|
|
34
34
|
handleBudgetExceededError,
|
|
@@ -36,10 +36,10 @@ import {
|
|
|
36
36
|
handleError,
|
|
37
37
|
handleMaxTurnsExceededError,
|
|
38
38
|
handleToolError
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-MQCQ2RPF.js";
|
|
40
40
|
import {
|
|
41
41
|
isInlineModelOverrideAllowed
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-AIAHTIQX.js";
|
|
43
43
|
import {
|
|
44
44
|
PLAN_MODE_ENTRY_SIBLING_SKIP_MESSAGE,
|
|
45
45
|
buildSessionRecoveryPlanFromApiHistory,
|
|
@@ -57,7 +57,7 @@ import {
|
|
|
57
57
|
partitionByConcurrencySafety,
|
|
58
58
|
promptIdContext,
|
|
59
59
|
restoreWorktreeContext
|
|
60
|
-
} from "./chunk-
|
|
60
|
+
} from "./chunk-QPYT2PMU.js";
|
|
61
61
|
import {
|
|
62
62
|
parsePositiveIntegerEnv
|
|
63
63
|
} from "./chunk-6PVPNMXU.js";
|
|
@@ -66,11 +66,11 @@ import {
|
|
|
66
66
|
} from "./chunk-WHGVTP7Q.js";
|
|
67
67
|
import {
|
|
68
68
|
uiTelemetryService
|
|
69
|
-
} from "./chunk-
|
|
69
|
+
} from "./chunk-IGAR75ZK.js";
|
|
70
70
|
import {
|
|
71
71
|
isTelemetrySdkInitialized,
|
|
72
72
|
shutdownTelemetry
|
|
73
|
-
} from "./chunk-
|
|
73
|
+
} from "./chunk-RCUEYZDE.js";
|
|
74
74
|
import {
|
|
75
75
|
ToolNames
|
|
76
76
|
} from "./chunk-YM3SZTH4.js";
|
|
@@ -80,7 +80,7 @@ import {
|
|
|
80
80
|
} from "./chunk-OQB4EXO4.js";
|
|
81
81
|
import {
|
|
82
82
|
registerCleanup
|
|
83
|
-
} from "./chunk-
|
|
83
|
+
} from "./chunk-Z4KOWJRT.js";
|
|
84
84
|
import {
|
|
85
85
|
init_esbuild_shims
|
|
86
86
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -742,6 +742,10 @@ ${text}
|
|
|
742
742
|
abortController.signal,
|
|
743
743
|
{
|
|
744
744
|
recordToolResult: false,
|
|
745
|
+
onToolResultFullTurnModel: /* @__PURE__ */ __name((model) => {
|
|
746
|
+
if (inlineModelOverrideActive) return false;
|
|
747
|
+
return setModelOverride(model);
|
|
748
|
+
}, "onToolResultFullTurnModel"),
|
|
745
749
|
outputUpdateHandler,
|
|
746
750
|
onAllToolCallsComplete: /* @__PURE__ */ __name(async (completedCalls) => {
|
|
747
751
|
for (const call of completedCalls) {
|
|
@@ -1041,9 +1045,12 @@ ${text}
|
|
|
1041
1045
|
responseParts: toolResponseParts,
|
|
1042
1046
|
repeatedDuplicateProviderToolCall
|
|
1043
1047
|
} = await processToolCallBatch(toolCallRequests, (override) => {
|
|
1044
|
-
if (
|
|
1045
|
-
|
|
1048
|
+
if (inlineModelOverrideActive) return false;
|
|
1049
|
+
if (modelOverride?.endsWith("\0") && modelOverride !== override) {
|
|
1050
|
+
return false;
|
|
1046
1051
|
}
|
|
1052
|
+
modelOverride = override;
|
|
1053
|
+
return true;
|
|
1047
1054
|
});
|
|
1048
1055
|
if (structuredSubmission !== void 0) {
|
|
1049
1056
|
return emitStructuredSuccess();
|
|
@@ -1188,7 +1195,11 @@ ${text}
|
|
|
1188
1195
|
} = await processToolCallBatch(
|
|
1189
1196
|
itemToolCallRequests,
|
|
1190
1197
|
(override) => {
|
|
1198
|
+
if (itemModelOverride?.endsWith("\0") && itemModelOverride !== override) {
|
|
1199
|
+
return false;
|
|
1200
|
+
}
|
|
1191
1201
|
itemModelOverride = override;
|
|
1202
|
+
return true;
|
|
1192
1203
|
}
|
|
1193
1204
|
);
|
|
1194
1205
|
if (structuredSubmission !== void 0) {
|
|
@@ -5,14 +5,14 @@ import {
|
|
|
5
5
|
} from "./chunk-57OAHC2Y.js";
|
|
6
6
|
import {
|
|
7
7
|
loadSettings
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-ERCSSQY3.js";
|
|
9
9
|
import {
|
|
10
10
|
getCurrentLanguage,
|
|
11
11
|
t
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-LX4HOTPK.js";
|
|
13
13
|
import {
|
|
14
14
|
isWorkspaceTrusted
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-DZDM2LCO.js";
|
|
16
16
|
import {
|
|
17
17
|
writeStdoutLine
|
|
18
18
|
} from "./chunk-OWAK7LMW.js";
|
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
getExtensionDisplayName,
|
|
23
23
|
redactUrlCredentials,
|
|
24
24
|
require_prompts
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-QPYT2PMU.js";
|
|
26
26
|
import {
|
|
27
27
|
stripAnsi
|
|
28
28
|
} from "./chunk-T4TZQJ7W.js";
|