@qwen-code/qwen-code 0.21.3-nightly.20260803.e1e5b42ce → 0.21.4
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/configuration/settings.md +1 -0
- package/chunks/{MaxSizedBox-FCEK5P5K.js → MaxSizedBox-5XDFQHTQ.js} +5 -5
- package/chunks/{StandaloneSessionPicker-AT77J3PM.js → StandaloneSessionPicker-DLADA54K.js} +18 -18
- package/chunks/{acpAgent-PBMKZ5KH.js → acpAgent-MVEFZSBS.js} +42 -38
- package/chunks/{agent-55W5BPK3.js → agent-RB6LCRZX.js} +5 -5
- package/chunks/{agent-headless-I7VMHI22.js → agent-headless-272ZACJV.js} +5 -5
- package/chunks/{bridge-XNAWEDAN.js → bridge-GXUXFSHK.js} +6 -6
- package/chunks/{channel-settings-store-7P6RJSSF.js → channel-settings-store-5UA2SABE.js} +10 -10
- package/chunks/{chunk-YIAC2OXH.js → chunk-2CCUHZP5.js} +2 -2
- package/chunks/{chunk-FVLPZSKH.js → chunk-2JN5V3I7.js} +1 -1
- package/chunks/{chunk-QFIYH5KR.js → chunk-2ON2O4MD.js} +3 -3
- package/chunks/{chunk-H2EDCJIM.js → chunk-2T3RYG4L.js} +94 -22
- package/chunks/{chunk-MNTXIO6T.js → chunk-3PHUGFPH.js} +1 -1
- package/chunks/{chunk-FYMMZV5F.js → chunk-4CTV3FZH.js} +399 -32
- package/chunks/{chunk-IV7QPMC2.js → chunk-4PZ7SPD5.js} +1 -1
- package/chunks/{chunk-BBXSRVSN.js → chunk-5XGI4IPK.js} +2 -2
- package/chunks/{chunk-6BUPGI3J.js → chunk-6KQUOXT5.js} +6 -6
- package/chunks/{chunk-4JP34TZ6.js → chunk-6ME3PVMM.js} +4 -4
- package/chunks/{chunk-GU5XWZU2.js → chunk-AFJSRJTO.js} +1 -1
- package/chunks/{chunk-2GF3IDEK.js → chunk-AWTLFUVN.js} +11 -11
- package/chunks/{chunk-LVW7BHTW.js → chunk-B3EBXISV.js} +2 -2
- package/chunks/{chunk-A5LNZGJB.js → chunk-BC4LTKEG.js} +1 -1
- package/chunks/{chunk-2ZCYE3F2.js → chunk-BOWKLLWA.js} +2 -2
- package/chunks/{chunk-6DNHLK7F.js → chunk-C5YFS6VR.js} +3 -3
- package/chunks/{chunk-OUQGNGIU.js → chunk-C6FU76AA.js} +1 -1
- package/chunks/{chunk-NCY2CDDX.js → chunk-DHNFB7NC.js} +4 -4
- package/chunks/{chunk-GNZ7MX73.js → chunk-DJA7YBLJ.js} +2 -2
- package/chunks/{chunk-SWCEYR6T.js → chunk-DOCBJIBL.js} +1 -1
- package/chunks/{chunk-XXOVLDZQ.js → chunk-DZPOYHBT.js} +1 -1
- package/chunks/{chunk-MVMBE5EH.js → chunk-E2SYUEIA.js} +47 -38
- package/chunks/{chunk-Q43MIWDH.js → chunk-EIAPOG76.js} +3 -3
- package/chunks/{chunk-YTSN63PD.js → chunk-EJXATV5R.js} +2 -2
- package/chunks/{chunk-UIKCPMID.js → chunk-FPPVCCAH.js} +1 -1
- package/chunks/{chunk-CFVFQWFB.js → chunk-FV4TUUDE.js} +1 -1
- package/chunks/{chunk-TNQ5BEEB.js → chunk-G6KI6B5L.js} +1 -1
- package/chunks/{chunk-7ZH55K26.js → chunk-GDREW3U5.js} +1 -1
- package/chunks/{chunk-C4IUDGPI.js → chunk-HBCKZF2A.js} +1 -1
- package/chunks/{chunk-NJELCSFL.js → chunk-HI4YGRJD.js} +3 -3
- package/chunks/{chunk-44EJDGMS.js → chunk-I32URQI7.js} +4 -4
- package/chunks/{chunk-ZX6RZZFB.js → chunk-IMGNGOGC.js} +3 -3
- package/chunks/{chunk-KZXSAQYV.js → chunk-JDJ7SC4E.js} +1 -1
- package/chunks/{chunk-GU5B6IF3.js → chunk-KB6VSG2U.js} +24 -5
- package/chunks/{chunk-OPMLL3B3.js → chunk-KHSJSMFS.js} +1 -1
- package/chunks/{chunk-DV2GAGR7.js → chunk-LPLMUGIM.js} +3 -3
- package/chunks/{chunk-A2FOI762.js → chunk-M2L4TMH3.js} +21 -3
- package/chunks/{chunk-MJ2SKNTY.js → chunk-M6RNMBUO.js} +3 -3
- package/chunks/{chunk-NXDJEZCI.js → chunk-O4IWFYUW.js} +4 -4
- package/chunks/{chunk-EZZJHMFK.js → chunk-OOPFAIWP.js} +1 -1
- package/chunks/{chunk-FBDRTW3I.js → chunk-P5UJMCVS.js} +4 -4
- package/chunks/{chunk-5WY5QEM6.js → chunk-PCVMRBLN.js} +1 -1
- package/chunks/{chunk-RJAVNGJJ.js → chunk-PQ5JFCNL.js} +3 -3
- package/chunks/{chunk-SXGNNAMC.js → chunk-PQEIKQXN.js} +1 -1
- package/chunks/{chunk-I3GX6LGS.js → chunk-QXTGHZCX.js} +3 -3
- package/chunks/{chunk-IEBT6DXF.js → chunk-QZQ72YF6.js} +1 -1
- package/chunks/{chunk-3ICGQSVO.js → chunk-RL2NPV5E.js} +1 -1
- package/chunks/{chunk-332FMXSD.js → chunk-RNKGMZEW.js} +1 -1
- package/chunks/{chunk-7XLPYF6B.js → chunk-SBBHZ3YT.js} +1 -1
- package/chunks/{chunk-FJZS2MXB.js → chunk-SV5X2EUV.js} +1 -1
- package/chunks/{chunk-HR4CHEQS.js → chunk-THLV7YGY.js} +2 -2
- package/chunks/{chunk-UO7AWUZJ.js → chunk-TXZDRD36.js} +5 -5
- package/chunks/{chunk-B4HXOGF5.js → chunk-UATJZOAJ.js} +3 -3
- package/chunks/{chunk-3GALLNII.js → chunk-URVJ4AZC.js} +1 -1
- package/chunks/{chunk-JQFMW7BD.js → chunk-WDLQGFWP.js} +32 -32
- package/chunks/{chunk-ENOHFX2M.js → chunk-XGA6XHH3.js} +2 -2
- package/chunks/{chunk-7UPJXZLD.js → chunk-XPAY4EMH.js} +3 -3
- package/chunks/{chunk-W2K4OEW4.js → chunk-XSOAW7FC.js} +4 -4
- package/chunks/{chunk-WH7W24EN.js → chunk-ZRQY5BBS.js} +9 -9
- package/chunks/{computer-use-BG2EHNJE.js → computer-use-MDOMIVTL.js} +5 -5
- package/chunks/{contextCommand-JAPYNKFC.js → contextCommand-FCK3CB37.js} +7 -7
- package/chunks/{core-runtime-2VCZN5QF.js → core-runtime-UHRHHU2O.js} +5 -5
- package/chunks/{create-sub-session-52OUA2VU.js → create-sub-session-MIXUVLWW.js} +5 -5
- package/chunks/{daemon-status-provider-F2YGDKHR.js → daemon-status-provider-6LC7LUNR.js} +10 -10
- package/chunks/{daemon-trust-policy-XCY7JETR.js → daemon-trust-policy-Y36HGRAM.js} +10 -10
- package/chunks/{daemon-trust-policy-monitor-FBHB5GMQ.js → daemon-trust-policy-monitor-ROTBBDOH.js} +10 -10
- package/chunks/{deferred-core-runtime-BBLJ4JUM.js → deferred-core-runtime-ZQ4JIAJD.js} +5 -5
- package/chunks/{earlyInputCapture-ALVSMKP7.js → earlyInputCapture-GPRUNXTP.js} +5 -5
- package/chunks/{edit-POB3CIHQ.js → edit-YK3UP6D2.js} +5 -5
- package/chunks/{enter-worktree-Q2N7UZWC.js → enter-worktree-QMVQW7UG.js} +5 -5
- package/chunks/{enterPlanMode-QGAH2GMP.js → enterPlanMode-TZAYQ5MP.js} +5 -5
- package/chunks/{environment-FE5AX2U5.js → environment-3UQURCZG.js} +7 -7
- package/chunks/{errors-SLMCFLSC.js → errors-VBIMTNNI.js} +7 -7
- package/chunks/{exit-worktree-7WO2LPLF.js → exit-worktree-4EC7LBBC.js} +5 -5
- package/chunks/{exitPlanMode-3PINWUTY.js → exitPlanMode-K5Y3REU2.js} +5 -5
- package/chunks/{fast-path-SVFFEL6U.js → fast-path-KS6IE7YR.js} +2 -2
- package/chunks/{gemini-QECJNKNJ.js → gemini-LTUCUOJH.js} +36 -36
- package/chunks/{geminiContentGenerator-ZFAZKT6R.js → geminiContentGenerator-M3HJTHKR.js} +1 -1
- package/chunks/{glob-GXUNQYNR.js → glob-SKUYGTF2.js} +5 -5
- package/chunks/{grep-LVU5KBCV.js → grep-SQ7RD7SV.js} +5 -5
- package/chunks/{handleAutoUpdate-MPDHQY72.js → handleAutoUpdate-OK7OX23A.js} +9 -9
- package/chunks/{i18n-LEYRN6RV.js → i18n-P77YBKY4.js} +6 -6
- package/chunks/{image-gen-4T2D4PTP.js → image-gen-2ZWPS42A.js} +1 -1
- package/chunks/{initializer-PQV2THBS.js → initializer-PIOYXVW7.js} +10 -10
- package/chunks/{installationInfo-XC3HXLTX.js → installationInfo-IWMM6DPV.js} +6 -6
- package/chunks/{list-AQBTPZRG.js → list-3DCR4TRI.js} +13 -13
- package/chunks/{loadedSettingsAdapter-EZYPDX2J.js → loadedSettingsAdapter-EJC6CU5N.js} +10 -10
- package/chunks/{loggingContentGenerator-WD6YWU7Q.js → loggingContentGenerator-2JEFU25T.js} +3 -3
- package/chunks/{managed-npm-update-BMM57CHD.js → managed-npm-update-EGVQPSBR.js} +6 -6
- package/chunks/{mcp-FMI6NCWA.js → mcp-KFFH2MBV.js} +10 -10
- package/chunks/{monitor-PZJOYAA2.js → monitor-6Y3NDMTI.js} +5 -5
- package/chunks/{nonInteractiveCli-QPX6R4LL.js → nonInteractiveCli-426IQDPE.js} +34 -34
- package/chunks/{notebook-edit-GZF2SKTQ.js → notebook-edit-373IQQLE.js} +5 -5
- package/chunks/{openaiContentGenerator-ZPLCFAAG.js → openaiContentGenerator-PGFSOMIQ.js} +3 -3
- package/chunks/{pidfile-PCADVJQW.js → pidfile-Y4INDMHG.js} +5 -5
- package/chunks/{processUtils-FKUVQVEU.js → processUtils-6BCPCJZW.js} +2 -2
- package/chunks/{qwenContentGenerator-2Y4R6YLB.js → qwenContentGenerator-QC3KSHSX.js} +6 -6
- package/chunks/{qwenOAuth2-UCEHY3I2.js → qwenOAuth2-IOAXKJ3L.js} +1 -1
- package/chunks/{read-file-DYHDFVAS.js → read-file-2T54FYZV.js} +2 -2
- package/chunks/{resumeHistoryUtils-5JS6R3AJ.js → resumeHistoryUtils-O62RDCZ3.js} +8 -8
- package/chunks/{ripGrep-2QOR3ZQT.js → ripGrep-3H72KY7S.js} +5 -5
- package/chunks/{run-qwen-serve-MTVRAUBR.js → run-qwen-serve-3AIDNNHO.js} +27 -27
- package/chunks/{runtime-DQGE2DYR.js → runtime-AZ4EHHFV.js} +11 -11
- package/chunks/{scheduler-BXIZQ4OO.js → scheduler-L4UUCU4Z.js} +5 -5
- package/chunks/{serve-D4GYHFLL.js → serve-CLXGSYOE.js} +10 -10
- package/chunks/{server-S22MLWTJ.js → server-MEAE3WMM.js} +29 -29
- package/chunks/{session-AHNM6YXP.js → session-OSLD2LT5.js} +35 -35
- package/chunks/{settings-77MDDUSX.js → settings-ILWAOKA4.js} +9 -9
- package/chunks/{shell-DLD2VQTQ.js → shell-RT5DBH6B.js} +5 -5
- package/chunks/{skill-3B2PAQE4.js → skill-LVGA3ATZ.js} +2 -2
- package/chunks/{skill-settings-STR5NF4B.js → skill-settings-WTZE7EPE.js} +9 -9
- package/chunks/{spawnChannel-TOWYOVDZ.js → spawnChannel-BOBS7DVM.js} +5 -5
- package/chunks/{standalone-update-F6ZWABD7.js → standalone-update-Y5JB4S2K.js} +7 -7
- package/chunks/{startInteractiveUI-QR7MHDX7.js → startInteractiveUI-ZV25CD2S.js} +44 -44
- package/chunks/{team-create-LQVIAVRF.js → team-create-ZVPQIXCP.js} +5 -5
- package/chunks/{team-plan-approval-G5PUNI52.js → team-plan-approval-5UHUBY3W.js} +5 -5
- package/chunks/{terminal-image-renderer-33GSM55L.js → terminal-image-renderer-NWC2RALG.js} +5 -5
- package/chunks/{theme-manager-DBFM5QOG.js → theme-manager-5KICSBOB.js} +5 -5
- package/chunks/{tool-search-RGG7BBC4.js → tool-search-2AOU77H4.js} +2 -2
- package/chunks/{total-session-admission-LY3RMXXI.js → total-session-admission-FR7RMHVL.js} +6 -6
- package/chunks/{trustedFolders-3M4IQ6K6.js → trustedFolders-V7UUPQXO.js} +6 -6
- package/chunks/{update-relaunch-G3CMSX3M.js → update-relaunch-TBWRMQD6.js} +5 -5
- package/chunks/{updateCheck-ZKFGBDTG.js → updateCheck-42SPCLH7.js} +8 -8
- package/chunks/{useAutoAcceptIndicator-7SAFZK5H.js → useAutoAcceptIndicator-4C2KM345.js} +11 -11
- package/chunks/{validateNonInterActiveAuth-F2K6UGE4.js → validateNonInterActiveAuth-UVFRXV3Z.js} +31 -31
- package/chunks/{version-KM6MYV2D.js → version-HKTV6TPN.js} +1 -1
- package/chunks/{web-fetch-SM4LZHRS.js → web-fetch-ZRXSV5AN.js} +2 -2
- package/chunks/{web-search-OGKZNDAC.js → web-search-WOLV3L6T.js} +2 -2
- package/chunks/{workflow-HU365RFR.js → workflow-F63ES3OB.js} +6 -6
- package/chunks/{workspace-providers-status-QKKXQHL7.js → workspace-providers-status-PJMGMYMC.js} +12 -12
- package/chunks/{workspace-registration-store-7J7KOXFD.js → workspace-registration-store-LNBOX5TJ.js} +1 -1
- package/chunks/{workspace-registry-KC66O6DH.js → workspace-registry-4PR7VDQ3.js} +6 -6
- package/chunks/{workspace-service-TEV5Q2AA.js → workspace-service-PVI3VUNQ.js} +13 -13
- package/chunks/{workspace-skills-status-VRL55OMU.js → workspace-skills-status-2Q5ZISO6.js} +10 -10
- package/chunks/{workspace-trust-reconciler-COC5M7CY.js → workspace-trust-reconciler-NOILUH3C.js} +11 -11
- package/chunks/{write-file-3SO2BMNO.js → write-file-MOM4JDHG.js} +5 -5
- package/chunks/{zoom-image-O3RWTVKV.js → zoom-image-E3VHRCFU.js} +2 -2
- package/cli.js +12 -12
- package/package.json +3 -3
- package/web-shell/assets/{arc-KuwiZ67W.js → arc-GpdmhIxr.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-Cppop6HB.js → architectureDiagram-3BPJPVTR-C-LhCgH_.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-DQ6HT72s.js → blockDiagram-GPEHLZMM-CzNdTCm-.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-B8TX_Mh-.js → c4Diagram-AAUBKEIU-Ce7hbrRM.js} +1 -1
- package/web-shell/assets/channel-95y6Rcp3.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-B2WBUTp8.js → chunk-2J33WTMH-BBSEn1PK.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-DXUsWC6O.js → chunk-4BX2VUAB-_llgjfe5.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-DtB-6cyk.js → chunk-55IACEB6-9fJZ_oZE.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-B-PhPyC3.js → chunk-727SXJPM-DgEzQWOu.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-DNaTFMSC.js → chunk-AQP2D5EJ-B4RthUTc.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-DZ345tFf.js → chunk-FMBD7UC4-CDI-emMW.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-BR_EpgzJ.js → chunk-ND2GUHAM-jM2-yOd8.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-BTU-0gDT.js → chunk-QZHKN3VN-XGZHlKPF.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-pfzVkmjQ.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-pfzVkmjQ.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-BmsKBCNt.js → cose-bilkent-S5V4N54A-90nbW1xQ.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-Ba8YWdDC.js → dagre-BM42HDAG-BtzlyqZ9.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-CCt2SnI6.js → diagram-2AECGRRQ-DAaqGWaH.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-BVTLXEU7.js → diagram-5GNKFQAL-CxlzSIFa.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-DpDAVCYV.js → diagram-KO2AKTUF-8kj-1H6u.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-8ljXg-TB.js → diagram-LMA3HP47-6NhjFwRF.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-JAXfQSmd.js → diagram-OG6HWLK6-Bn9kvInz.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-CUeakG6k.js → erDiagram-TEJ5UH35-CaRoGsAt.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-Cd4Wrdwv.js → flowDiagram-I6XJVG4X-TkLweHdf.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-C0nMFvH_.js → ganttDiagram-6RSMTGT7-ruwhCKBl.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-uKk88n_L.js → gitGraphDiagram-PVQCEYII-DNI_PxoU.js} +1 -1
- package/web-shell/assets/{index-BXGtjHs5.js → index-T4KluHvu.js} +331 -331
- package/web-shell/assets/{index-C1UWBJSX.js → index-p1gz-sxE.js} +1 -1
- package/web-shell/assets/{infoDiagram-5YYISTIA-GfPN17hR.js → infoDiagram-5YYISTIA-DarXq1-A.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-CDbWTcGa.js → ishikawaDiagram-YF4QCWOH-GxDaDlT0.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-J8TvvVFz.js → journeyDiagram-JHISSGLW-mDEoGBzY.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-Ds_ndLrs.js → kanban-definition-UN3LZRKU-Ds0t-Mup.js} +1 -1
- package/web-shell/assets/{linear-DuL9O4i3.js → linear-05nJ0xZ7.js} +1 -1
- package/web-shell/assets/{mermaid.core-DtK4PsQB.js → mermaid.core-Bua24ThM.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-DD0r7MS3.js → mindmap-definition-RKZ34NQL-D_zRdvUS.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-CxGPZ8Q-.js → pieDiagram-4H26LBE5-DZHr1x16.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-Ds7Buxed.js → quadrantDiagram-W4KKPZXB-HA06Wf0h.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-DIx28ph5.js → requirementDiagram-4Y6WPE33-DH3urmJf.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-AxdAYcVX.js → sankeyDiagram-5OEKKPKP-C4xgz0TT.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-CojoXAZ5.js → sequenceDiagram-3UESZ5HK-DAUoZWgv.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-Dy1WN3mi.js → stateDiagram-AJRCARHV-v7NzXy4l.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CtdFexEf.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-DeWe_43M.js → timeline-definition-PNZ67QCA-B3GTYR2W.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-BN8PVlFq.js → vennDiagram-CIIHVFJN-BWHjSPAq.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-CbjV_1hf.js → wardley-L42UT6IY-m9r6IUBC.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-D2mw84_p.js → wardleyDiagram-YWT4CUSO-kT0FkVfK.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-er9CTQXi.js → xychartDiagram-2RQKCTM6-CYRm10z5.js} +1 -1
- package/web-shell/index.html +1 -1
- package/web-shell/assets/channel-BZd6Ile0.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-B7c-TqtK.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-B7c-TqtK.js +0 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BaTNMz02.js +0 -1
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
serveCommand
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-2ON2O4MD.js";
|
|
6
6
|
import {
|
|
7
7
|
listCommand
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-P5UJMCVS.js";
|
|
9
9
|
import {
|
|
10
10
|
getErrorMessage as getErrorMessage2
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-EJXATV5R.js";
|
|
12
12
|
import {
|
|
13
13
|
ObservedChannelContactStore
|
|
14
14
|
} from "./chunk-DYA25Y7U.js";
|
|
@@ -46,19 +46,19 @@ import {
|
|
|
46
46
|
registerToolCallDispatch,
|
|
47
47
|
selectFirstModel,
|
|
48
48
|
sessionsPath
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-5XGI4IPK.js";
|
|
50
50
|
import {
|
|
51
51
|
getExtensionManager,
|
|
52
52
|
requestChoicePluginNonInteractive,
|
|
53
53
|
requestConsentNonInteractive,
|
|
54
54
|
requestConsentOrFail,
|
|
55
55
|
resolveExtensionCommandScope
|
|
56
|
-
} from "./chunk-
|
|
56
|
+
} from "./chunk-O4IWFYUW.js";
|
|
57
57
|
import {
|
|
58
58
|
collectProviderModelsForProtocol,
|
|
59
59
|
getAuthTypeFromEnv,
|
|
60
60
|
resolveCliGenerationConfig
|
|
61
|
-
} from "./chunk-
|
|
61
|
+
} from "./chunk-IMGNGOGC.js";
|
|
62
62
|
import {
|
|
63
63
|
parseChannelConfig
|
|
64
64
|
} from "./chunk-LEZFUYPM.js";
|
|
@@ -128,29 +128,29 @@ import {
|
|
|
128
128
|
assembleMcpServers,
|
|
129
129
|
getPendingGatedMcpServers,
|
|
130
130
|
mcpCommand
|
|
131
|
-
} from "./chunk-
|
|
131
|
+
} from "./chunk-6ME3PVMM.js";
|
|
132
132
|
import {
|
|
133
133
|
loadSettings
|
|
134
|
-
} from "./chunk-
|
|
134
|
+
} from "./chunk-KB6VSG2U.js";
|
|
135
135
|
import {
|
|
136
136
|
detectSystemLanguage,
|
|
137
137
|
getCurrentLanguage,
|
|
138
138
|
initializeI18n,
|
|
139
139
|
resolveLanguageSetting,
|
|
140
140
|
t
|
|
141
|
-
} from "./chunk-
|
|
141
|
+
} from "./chunk-FV4TUUDE.js";
|
|
142
142
|
import {
|
|
143
143
|
loadEnvironment
|
|
144
|
-
} from "./chunk-
|
|
144
|
+
} from "./chunk-4PZ7SPD5.js";
|
|
145
145
|
import {
|
|
146
146
|
getCliVersion
|
|
147
|
-
} from "./chunk-
|
|
147
|
+
} from "./chunk-HBCKZF2A.js";
|
|
148
148
|
import {
|
|
149
149
|
getPackageJson
|
|
150
150
|
} from "./chunk-VJNBRRZG.js";
|
|
151
151
|
import {
|
|
152
152
|
isWorkspaceTrusted
|
|
153
|
-
} from "./chunk-
|
|
153
|
+
} from "./chunk-URVJ4AZC.js";
|
|
154
154
|
import {
|
|
155
155
|
require_strip_json_comments
|
|
156
156
|
} from "./chunk-ALGGS7UH.js";
|
|
@@ -191,7 +191,7 @@ import {
|
|
|
191
191
|
unquoteCStylePath,
|
|
192
192
|
updateChannelMemoryEntry,
|
|
193
193
|
updateSetting
|
|
194
|
-
} from "./chunk-
|
|
194
|
+
} from "./chunk-E2SYUEIA.js";
|
|
195
195
|
import {
|
|
196
196
|
nextFireTime,
|
|
197
197
|
parseCron
|
|
@@ -206,14 +206,14 @@ import {
|
|
|
206
206
|
import {
|
|
207
207
|
getAllGeminiMdFilenames,
|
|
208
208
|
setGeminiMdFilename
|
|
209
|
-
} from "./chunk-
|
|
209
|
+
} from "./chunk-JDJ7SC4E.js";
|
|
210
210
|
import {
|
|
211
211
|
SchemaValidator,
|
|
212
212
|
ToolNames
|
|
213
213
|
} from "./chunk-CFDR3GNL.js";
|
|
214
214
|
import {
|
|
215
215
|
DEFAULT_QWEN_EMBEDDING_MODEL
|
|
216
|
-
} from "./chunk-
|
|
216
|
+
} from "./chunk-TXZDRD36.js";
|
|
217
217
|
import {
|
|
218
218
|
isTlsVerificationDisabled
|
|
219
219
|
} from "./chunk-BFHXDAR7.js";
|
|
@@ -11655,14 +11655,85 @@ var GITHUB_ACTIONS = {
|
|
|
11655
11655
|
|
|
11656
11656
|
**Favour precision over recall here.** A false alarm on a workflow costs more reviewer trust than a missed minor nit, because a YAML finding is the easiest kind for an author to dismiss. Every finding needs the concrete trigger and the concrete outcome, like any other.`
|
|
11657
11657
|
};
|
|
11658
|
-
var
|
|
11658
|
+
var JAVA = {
|
|
11659
|
+
title: "Java / JVM performance",
|
|
11660
|
+
matches: /* @__PURE__ */ __name((p) => /\.java$/i.test(p), "matches"),
|
|
11661
|
+
checklist: `A Java change's most expensive regressions are decided by the JVM, not by anything a reader can see in the source: HotSpot chooses what to inline, what to scalar-replace, and what to compile at all \u2014 and a one-line change can flip each of those on a hot path. The general performance lens (N+1, repeated work, data structures) sees none of it.
|
|
11662
|
+
|
|
11663
|
+
**You are reviewing this diff, not auditing this file.** A JVM-cost weakness the code already had, on a line this change does not touch, is out of scope \u2014 the same rule as everywhere else. What is in scope: a line this diff **adds or changes**, and a cheap path this diff **makes hot** (a new caller in a request loop, a call moved inside a loop). Test sources (\`src/test/**\`), \`package-info\`/\`module-info\`, and generated sources are out of scope for the hot-path items \u2014 nothing there is hot.
|
|
11664
|
+
|
|
11665
|
+
**Correctness traps dressed as concurrency or performance code (Critical):**
|
|
11666
|
+
|
|
11667
|
+
- **A \`SimpleDateFormat\` shared across threads.** It is not thread-safe: concurrent \`parse\`/\`format\` corrupts its calendar state and returns silently wrong values or throws. If the diff adds a shared (static or instance field) \`SimpleDateFormat\`, or makes an existing one reachable from more than one thread, that is wrong, not slow. The fix is \`java.time.format.DateTimeFormatter\` (immutable) or a \`ThreadLocal\`.
|
|
11668
|
+
- **A compound action on \`ConcurrentHashMap\` built from two calls.** \`get\`-then-\`put\`, \`containsKey\`-then-\`put\`, check-then-act of any shape: the map's thread safety covers each call, not the pair, and the race loses an update or runs the guarded work twice. Say what the race corrupts \u2014 that is the finding. Fix with \`putIfAbsent\`, \`computeIfAbsent\`, or \`merge\`.
|
|
11669
|
+
- **Double-checked locking without \`volatile\` on the field.** The reading thread can observe a partially constructed object. If the diff adds or touches the idiom, the field must be \`volatile\` (or replaced with the holder idiom).
|
|
11670
|
+
|
|
11671
|
+
**JVM-cost defects provable from the source (Suggestion \u2014 a cost, not a wrongness):**
|
|
11672
|
+
|
|
11673
|
+
- **A regex compiled per call.** \`Pattern.compile(...)\` in a method body or loop, and the \`String\` conveniences that hide it \u2014 \`matches\`, \`replaceAll\`, \`replaceFirst\`, and \`split\` with a real regex (a one- or two-character \`split\` argument takes a fast path only when it is not a regex construct \u2014 \`split(".")\` does not, since \`.\` is a metacharacter; the escaped two-character form \`split("\\\\.")\` does) \u2014 recompile the pattern on every invocation. On a per-request or per-record path that is real CPU. Fix: \`private static final Pattern\`.
|
|
11674
|
+
- **\`+=\` on a \`String\` inside a loop.** Each iteration rebuilds and copies the whole accumulated prefix; the loop is O(n\xB2) in the final length. Fix: one \`StringBuilder\` outside the loop.
|
|
11675
|
+
- **Boxing on a hot path.** A \`Long\`/\`Integer\` loop accumulator, a \`Map<Long, \u2026>\` over dense \`int\` keys, \`.boxed()\` in a counted stream: every box past the small-integer cache is an allocation plus a pointer chase per iteration. Fix: primitives, or the primitive streams/collections.
|
|
11676
|
+
- **A capturing lambda or method reference inside a hot loop.** A non-capturing lambda is a singleton; one that closes over a local allocates per iteration. If the diff moves a capturing lambda into a loop, hoist it or restructure it to capture nothing.
|
|
11677
|
+
- **A log message built whether or not it is logged.** \`log.debug("result: " + value)\` pays the concatenation with the level off, and even \`log.debug("{}", expensive())\` still pays \`expensive()\`. Fix: parameterized messages, and guard expensive arguments with \`isDebugEnabled()\` or a supplier-based logging API.
|
|
11678
|
+
- **A collection sized after the fact.** A \`HashMap\`/\`ArrayList\` the code then fills with a known N pays repeated rehash/grow-copy chains; presize it (a \`HashMap\` needs \`N/0.75 + 1\` to avoid rehashing at all \u2014 \`HashMap.newHashMap(n)\`, JDK 19+, does that arithmetic for you).
|
|
11679
|
+
- **Legacy synchronized types in new code.** \`Vector\`, \`Hashtable\`, \`StringBuffer\` put a monitor on every call; the unsynchronized equivalents are the default for a reason.
|
|
11680
|
+
- **An exception used as control flow.** Validating by catching \`NumberFormatException\`, looping until \`EOFException\`: \`fillInStackTrace\` costs more than the work being guarded. Validate instead.
|
|
11681
|
+
- **Reflection rediscovered per call.** \`getMethod\`/\`getField\` on every invocation of a hot path; cache the \`Method\`/\`Field\` \u2014 or a \`MethodHandle\` \u2014 once.
|
|
11682
|
+
|
|
11683
|
+
**JIT inlining \u2014 the regression no dimension can see, and you cannot prove from source:**
|
|
11684
|
+
|
|
11685
|
+
HotSpot's C2 compiler gates inlining on the **bytecode size of the callee** among other criteria. These are the size caps in its normal policy (a project's own \`-XX:\` flags, or a different JVM, change them \u2014 check before citing):
|
|
11686
|
+
|
|
11687
|
+
| callee bytecode size | C2 normal-policy size cap |
|
|
11688
|
+
| --- | --- |
|
|
11689
|
+
| \u2264 6 (\`MaxTrivialSize\`) | under the trivial cap \u2014 size alone does not block it |
|
|
11690
|
+
| \u2264 35 (\`MaxInlineSize\`) | under the normal cap \u2014 size alone does not block it |
|
|
11691
|
+
| \u2264 325 (\`FreqInlineSize\`) | under the hot cap \u2014 size blocks it unless the call site is hot |
|
|
11692
|
+
| > 325 | over the hot cap \u2014 size blocks it at every call site |
|
|
11693
|
+
| > 8000 (\`HugeMethodLimit\`, a develop flag gated by the product \`DontCompileHugeMethods\`) | over the huge-method limit \u2014 size blocks even JIT compilation |
|
|
11694
|
+
|
|
11695
|
+
A size cap is a gate, not an outcome: passing one is necessary but not sufficient. Independent of size, C2 also declines a call site that was **never executed**, has **low call site frequency**, exceeds the inlining **depth or recursion limits**, or hits the **node-count** cutoff \u2014 so a method under a cap can still be left un-inlined, and a static size measurement proves only that a threshold was crossed, not that the method *was* inlined before and *is not* now.
|
|
11696
|
+
|
|
11697
|
+
Two more ways a diff can flip it: an already-compiled callee whose **native** size passes \`InlineSmallCode\` (x86_64 default: 2500 on JDK 17+, 2000 on JDK 8\u201316; 1000 only with \`-XX:-TieredCompilation\`) stops being inlined to protect the code cache, and a call site that gains a **third** receiver implementation goes megamorphic \u2014 vtable dispatch, and no inlining **unless one receiver still dominates the profile** (\`TypeProfileMajorReceiverPercent\`, 90% by default), in which case C2 inlines that receiver behind a guard with an uncommon trap for the rest. So the diff-shapes that matter: a small method on a hot path the change **grows** (added validation, logging, a branch), a new layer in a hot call chain, a new implementation registered for an interface invoked in a hot loop. A cold method over 325 bytes is **not** a finding \u2014 inlining only matters where the call is hot.
|
|
11698
|
+
|
|
11699
|
+
**Measure it; do not estimate bytecode from source.** Two tiers, in order of cost:
|
|
11700
|
+
|
|
11701
|
+
1. **Static \u2014 available when the class compiles, which for a leaf class is always and for a connected one needs its dependencies.** Allocate a private scratch dir first \u2014 \`SCRATCH=$(mktemp -d)\`, never a fixed path like \`/tmp/scratch\`: other agents are compiling concurrently, and two of them writing different revisions of the same class into one directory read each other's \`.class\` files and measure the wrong bytecode (on Windows, \`mkdir %TEMP%\\review-%RANDOM%\` gives the same uniqueness). Then \`javac -proc:none -nowarn -d "$SCRATCH" X.java\` \u2014 \`-proc:none\` is not optional: annotation processors on the classpath (Lombok, Dagger, one the PR itself added) run at compile time with your privileges, so a \`javac\` without it is itself an untrusted-code execution. It is also a fidelity flag: on a project whose processor contributes code to the measured class (Lombok's generated members, Dagger's injected fields), the compiled class is missing those members and \`javap\` reports a size that is simply wrong \u2014 if the project runs a processor that touches this class, the static tier is **void**; go to \`Confidence: low\` with the mechanism. Give the compiler what it needs to resolve imports: \`-sourcepath\` at the module source root, plus \`-cp\` against an already-built \`target/classes\` / \`build/classes\` if one exists. Pass \`--release <N>\` at the project's target level (read it from \`maven.compiler.release\`, \`<release>\`, or Gradle's \`release\`/\`targetCompatibility\`): the same source compiles to different bytecode at different levels \u2014 a five-\`+\` concatenation is 37 bytes at release 8 and 14 at 9+ \u2014 and measuring the wrong level produces a threshold verdict on bytecode the shipped artifact does not contain; if the target level cannot be determined, say so in the finding. Then \`javap -c -p\` the class and read the method's size: the offset of its last instruction plus that instruction's width. Compare against 35 and 325. For the **crossing** claim \u2014 "this diff pushed it over the threshold" \u2014 get the base side **without touching the tree**: \`git show <merge-base>:<path> > "$SCRATCH/X.java"\`, compile that too, and measure both; a method already over on the base side is pre-existing, not a finding. A file the PR **adds** has no base side \u2014 \`git show\` fails, and there is no crossing to claim; report the size without a before/after. The base side compiles against the same \`target/classes\` the head side used; on a PR that changes more than the measured file the conditions are not perfectly equivalent \u2014 note that caveat when it applies. If the class will not compile (no pre-built classpath, no source path that resolves its imports), go straight to the mechanism-at-\`Confidence: low\` form below \u2014 **never \`git checkout\`, \`git stash\`, build in place, or run \`mvn\`/\`gradle\` to force a compile.** In a PR review the worktree is shared with agents running concurrently and the branch's build logic is contributor-controlled \u2014 the attack surface, not a cost; in a local review it is the user's own checkout. Mutating either corrupts work you cannot see.
|
|
11702
|
+
2. **Dynamic \u2014 when the code is runnable.** Run the workload with \`-XX:+UnlockDiagnosticVMOptions -XX:+PrintInlining\` and grep for the method: \`callee is too large\` / \`hot method too big\` is the JVM itself declining to inline. JMH gives the before/after throughput; JITWatch visualizes the same decision logs.
|
|
11703
|
+
|
|
11704
|
+
A finding that a method "can no longer be inlined" needs the **dynamic** tier \u2014 only \`PrintInlining\` or equivalent runtime evidence shows the JVM actually declined to inline. The static tier proves a **size-gate crossing**, which is the mechanism: report it at \`Confidence: low\` \u2014 the threshold crossed, what the diff added to the method, and the runtime measurement still to run. A "can no longer be inlined" claim with neither tier is a guess stated as fact. And if the diff *claims* this path got faster while the mechanism above says it cannot have, the finding is the unsubstantiated claim.
|
|
11705
|
+
|
|
11706
|
+
**When the finding IS a grown hot method, the fix to suggest is hot/cold splitting \u2014 not reverting the change, and not a JVM tuning flag** (\`-XX:FreqInlineSize\`, \`-XX:CompileCommand=inline\`): those are runtime knobs the PR's author cannot ship in a code change, and raising an inline threshold to fit one method pays for it at every other call site. (The JDK-internal \`@ForceInline\` is not available to application code at all.) Move the cold paths \u2014 error handling, rare branches, defensive validation, the \`switch\` arms that almost never fire \u2014 into a small private helper, leaving the common path under the threshold; the helper, now called from one site, is itself inlinable. Name the bytecode range to extract and the size it leaves behind, the way the measurement names them: "extract bytecodes 212\u2013311 (~100 bytes) into \`applyRounding\`, leaving \`parseAmount\` at ~238 bytes" is a finding an author can act on; "consider splitting the method" is not.
|
|
11707
|
+
|
|
11708
|
+
**Favour precision over recall here.** A guessed JVM finding is the easiest kind for an author to dismiss, and one dismissal teaches them to skip the rest of the review. Every finding needs the concrete hot path and the concrete cost, like any other. Performance findings are **Suggestions** \u2014 slow is a cost, not incorrect behaviour \u2014 **except where the cost is itself the wrongness**: unbounded allocation, quadratic work, or unbounded cache growth on attacker-reachable input is a denial-of-service hole, which the severity ladder grades Critical, not a Suggestion. Name the reachable input that triggers it; "this loop is slow" with no attacker-reachable trigger stays a Suggestion.`
|
|
11709
|
+
};
|
|
11710
|
+
var PATH_RULES = [GITHUB_ACTIONS, JAVA];
|
|
11711
|
+
function isOutOfScope(p) {
|
|
11712
|
+
return /src\/(test|integrationTest|integTest|androidTest|testFixtures)\//i.test(
|
|
11713
|
+
p
|
|
11714
|
+
) || /(?:^|\/)(?:package-info|module-info)\.java$/i.test(p) || /(?:^|\/)(?:target|build)\/(?:generated-sources|generated-test-sources|generated)\//i.test(
|
|
11715
|
+
p
|
|
11716
|
+
);
|
|
11717
|
+
}
|
|
11718
|
+
__name(isOutOfScope, "isOutOfScope");
|
|
11719
|
+
function describePaths(which) {
|
|
11720
|
+
const CAP = 10;
|
|
11721
|
+
const prod = which.filter((p) => !isOutOfScope(p));
|
|
11722
|
+
const rest = which.filter((p) => isOutOfScope(p));
|
|
11723
|
+
const ordered = [...prod, ...rest];
|
|
11724
|
+
if (ordered.length <= CAP) {
|
|
11725
|
+
return ordered.join(", ");
|
|
11726
|
+
}
|
|
11727
|
+
return `${ordered.slice(0, CAP).join(", ")}, \u2026and ${ordered.length - CAP} more`;
|
|
11728
|
+
}
|
|
11729
|
+
__name(describePaths, "describePaths");
|
|
11659
11730
|
function pathRulesFor(paths) {
|
|
11660
11731
|
const hit = PATH_RULES.filter((r) => paths.some((p) => r.matches(p)));
|
|
11661
11732
|
if (hit.length === 0) return "";
|
|
11662
11733
|
const parts = ["## Rules for the files in front of you", ""];
|
|
11663
11734
|
for (const r of hit) {
|
|
11664
11735
|
const which = paths.filter((p) => r.matches(p));
|
|
11665
|
-
parts.push(`### ${r.title} \u2014 ${which
|
|
11736
|
+
parts.push(`### ${r.title} \u2014 ${describePaths(which)}`, "", r.checklist, "");
|
|
11666
11737
|
}
|
|
11667
11738
|
return parts.join("\n").trimEnd();
|
|
11668
11739
|
}
|
|
@@ -17467,10 +17538,10 @@ var updateCommand3 = {
|
|
|
17467
17538
|
stdioHelpers,
|
|
17468
17539
|
{ updateEventEmitter }
|
|
17469
17540
|
] = await Promise.all([
|
|
17470
|
-
import("./settings-
|
|
17471
|
-
import("./updateCheck-
|
|
17472
|
-
import("./installationInfo-
|
|
17473
|
-
import("./standalone-update-
|
|
17541
|
+
import("./settings-ILWAOKA4.js"),
|
|
17542
|
+
import("./updateCheck-42SPCLH7.js"),
|
|
17543
|
+
import("./installationInfo-IWMM6DPV.js"),
|
|
17544
|
+
import("./standalone-update-Y5JB4S2K.js"),
|
|
17474
17545
|
import("./stdioHelpers-HGIYTWAY.js"),
|
|
17475
17546
|
import("./updateEventEmitter-5MKC7BLQ.js")
|
|
17476
17547
|
]);
|
|
@@ -18637,7 +18708,7 @@ async function loadCliConfig(settings, argv, cwd = process.cwd(), overrideExtens
|
|
|
18637
18708
|
disabledSlashCommands: disabledSlashCommands.length > 0 ? disabledSlashCommands : void 0,
|
|
18638
18709
|
disabledSkillNamesProvider: bareMode || safeMode ? void 0 : disabledSkillNamesProvider,
|
|
18639
18710
|
terminalImageRenderSupportProvider: interactive ? async () => {
|
|
18640
|
-
const { getTerminalImageRenderSupport } = await import("./terminal-image-renderer-
|
|
18711
|
+
const { getTerminalImageRenderSupport } = await import("./terminal-image-renderer-NWC2RALG.js");
|
|
18641
18712
|
return getTerminalImageRenderSupport();
|
|
18642
18713
|
} : void 0,
|
|
18643
18714
|
disabledSkillLevels: bareMode || safeMode || !Array.isArray(settings.skills?.disabledLevels) ? void 0 : settings.skills.disabledLevels.filter(isSkillLevel),
|
|
@@ -18791,6 +18862,7 @@ async function loadCliConfig(settings, argv, cwd = process.cwd(), overrideExtens
|
|
|
18791
18862
|
enableAutoSkill: bareMode || safeMode ? false : settings.memory?.enableAutoSkill ?? false,
|
|
18792
18863
|
autoSkillConfirm: bareMode || safeMode ? false : settings.memory?.autoSkillConfirm ?? true,
|
|
18793
18864
|
memoryAgentTimeoutMinutes: settings.memory?.agentTimeoutMinutes,
|
|
18865
|
+
memoryAgentMaxTurns: settings.memory?.agentMaxTurns,
|
|
18794
18866
|
fastModel: settings.fastModel || void 0,
|
|
18795
18867
|
webSearch: bareMode || safeMode ? void 0 : resolveWebSearchSettings(settings),
|
|
18796
18868
|
visionModel: settings.visionModel || void 0,
|