@qwen-code/qwen-code 0.23.3 → 0.23.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/computer-use/SKILL.md +46 -198
- package/bundled/computer-use/references/macos.md +208 -0
- package/bundled/computer-use/references/windows-linux.md +247 -0
- package/bundled/goal-draft/SKILL.md +10 -10
- package/bundled/qc-helper/docs/configuration/settings.md +81 -71
- package/bundled/qc-helper/docs/extension/getting-started-extensions.md +2 -0
- package/bundled/qc-helper/docs/extension/introduction.md +9 -3
- package/bundled/qc-helper/docs/features/_meta.ts +1 -0
- package/bundled/qc-helper/docs/features/agent-board.md +89 -0
- package/bundled/qc-helper/docs/features/channels/dingtalk.md +3 -21
- package/bundled/qc-helper/docs/features/channels/dws.md +5 -1
- package/bundled/qc-helper/docs/features/channels/overview.md +5 -6
- package/bundled/qc-helper/docs/features/code-review.md +18 -4
- package/bundled/qc-helper/docs/features/commands.md +9 -0
- package/bundled/qc-helper/docs/features/computer-use.md +26 -8
- package/bundled/qc-helper/docs/features/cross-session-protocol.md +23 -5
- package/bundled/qc-helper/docs/features/followup-suggestions.md +17 -5
- package/bundled/qc-helper/docs/features/goals.md +22 -18
- package/bundled/qc-helper/docs/features/hooks.md +48 -37
- package/bundled/qc-helper/docs/features/skills.md +33 -3
- package/bundled/qc-helper/docs/features/status-line.md +2 -0
- package/bundled/qc-helper/docs/features/sub-agents.md +27 -0
- package/bundled/qc-helper/docs/qwen-serve.md +7 -3
- package/bundled/review/SKILL.md +20 -10
- package/bundled/review/references/persistence.md +2 -0
- package/bundled/workflow-authoring/SKILL.md +442 -0
- package/bundled/workflow-creator/SKILL.md +1 -1
- package/chunks/{MaxSizedBox-D4LW7RZZ.js → MaxSizedBox-Q44AWRWI.js} +59 -55
- package/chunks/{StandaloneSessionPicker-ALTTRWUP.js → StandaloneSessionPicker-UKII7M7U.js} +83 -79
- package/chunks/{acp-startup-profiler-KEU6VAYR.js → acp-startup-profiler-RUQNTNU5.js} +2 -2
- package/chunks/acp-subagent-executor-7RUAOXE7.js +141 -0
- package/chunks/{acpAgent-BBSW7XZG.js → acpAgent-5N3LHCO3.js} +1026 -355
- package/chunks/{agent-SQ6OY3QD.js → agent-LU5UJALC.js} +43 -39
- package/chunks/{agent-headless-RI2THRQ7.js → agent-headless-LTLADUGR.js} +43 -39
- package/chunks/{anthropicContentGenerator-JSKMKS6V.js → anthropicContentGenerator-H5YPXIDE.js} +37 -15
- package/chunks/{artifact-tool-PMYZCYNH.js → artifact-tool-MFGORTWZ.js} +59 -109
- package/chunks/{askUserQuestion-4M4YYIB4.js → askUserQuestion-WS4GUT7C.js} +3 -3
- package/chunks/{bridge-DAFMI72L.js → bridge-P34XQP3D.js} +63 -58
- package/chunks/{build-63BIOYWK.js → build-5KWQBWEQ.js} +1 -1
- package/chunks/{ca-KC2AISNS.js → ca-GZ4FDJU2.js} +3 -3
- package/chunks/{channel-management-service-OWDXVL7R.js → channel-management-service-AFVIT4VH.js} +8 -8
- package/chunks/{channel-settings-store-4I6JONT7.js → channel-settings-store-VE4ARRSR.js} +68 -64
- package/chunks/{channel-worker-group-F2ZZMLNS.js → channel-worker-group-JR6JOELM.js} +8 -8
- package/chunks/{channel-worker-manager-2SZLJJSJ.js → channel-worker-manager-AVKJEZFL.js} +8 -8
- package/chunks/{channel-worker-supervisor-ZFNWMG6D.js → channel-worker-supervisor-OOYY7BAQ.js} +5 -5
- package/chunks/{chunk-DAWWT2ID.js → chunk-2NRKLYID.js} +1374 -2164
- package/chunks/{chunk-53GWJOLP.js → chunk-2P2IXKDR.js} +3 -1
- package/chunks/{chunk-6JACAGYH.js → chunk-2S2WIGCM.js} +1 -1
- package/chunks/{chunk-IUVIBDKU.js → chunk-2YMRRI2C.js} +9 -10
- package/chunks/{chunk-MLQNSPRZ.js → chunk-3AYIKQTJ.js} +15 -5
- package/chunks/{chunk-F53KKZUD.js → chunk-3LMDSCLU.js} +158 -10
- package/chunks/{chunk-WG7BL3FY.js → chunk-473RJLIH.js} +1 -1
- package/chunks/{chunk-BWAMMKIS.js → chunk-4XP7WXC4.js} +135 -6
- package/chunks/{chunk-W5ZQMAEM.js → chunk-4Y2I3CI3.js} +1 -1
- package/chunks/{chunk-HGEUHUEV.js → chunk-54B2LTKP.js} +1 -1
- package/chunks/{chunk-IRH27ZC2.js → chunk-5EZRLTLQ.js} +4 -4
- package/chunks/{chunk-DLH7YIX6.js → chunk-5FK4MSHB.js} +3 -3
- package/chunks/chunk-5JG3DAKS.js +1416 -0
- package/chunks/{chunk-CUEXOHQH.js → chunk-5ODRE7E5.js} +9 -15
- package/chunks/{chunk-532WHF4F.js → chunk-5VQR2DD7.js} +2 -2
- package/chunks/chunk-62MWBTS7.js +191 -0
- package/chunks/{chunk-YQHLFCPU.js → chunk-65ANUQSV.js} +32 -24
- package/chunks/{chunk-YBUMTY7B.js → chunk-66N6C4EH.js} +1 -1
- package/chunks/{chunk-AC6KDLH3.js → chunk-6TFZIA2L.js} +1 -1
- package/chunks/{chunk-Y2MYW47X.js → chunk-6WXVEDT2.js} +9 -2
- package/chunks/{chunk-NRXWJXJ4.js → chunk-7GKPKIUB.js} +15 -15
- package/chunks/chunk-7JGH6IMU.js +2780 -0
- package/chunks/{chunk-ZHKTKHMO.js → chunk-7MIBD3LG.js} +1 -1
- package/chunks/{chunk-HGAELO7B.js → chunk-7ML2ZLQF.js} +2 -2
- package/chunks/{chunk-3UXUOFO6.js → chunk-7W2Y3PZD.js} +9 -10
- package/chunks/{chunk-76RGWKLS.js → chunk-ABNX6E6K.js} +1 -1
- package/chunks/chunk-ACHCT36C.js +28 -0
- package/chunks/{chunk-NE624IVP.js → chunk-ADQUK6WA.js} +1 -1
- package/chunks/{chunk-PLLIWEM3.js → chunk-AEWCOE64.js} +2 -2
- package/chunks/{chunk-3FPYT6QC.js → chunk-ARDHE6MM.js} +23 -0
- package/chunks/{chunk-LILGKQ4B.js → chunk-AXZMWAJV.js} +156 -26
- package/chunks/{chunk-SYLECP23.js → chunk-BBMOAZ2E.js} +4 -4
- package/chunks/{chunk-RWVD5RRY.js → chunk-BDDE4YNP.js} +3 -3
- package/chunks/{chunk-TPKQIA7G.js → chunk-BSIOCNDK.js} +1 -1
- package/chunks/{chunk-U7O65WKL.js → chunk-BW2SMO6L.js} +1 -1
- package/chunks/{chunk-WBCPROWX.js → chunk-C4HBZQNH.js} +1 -1
- package/chunks/{chunk-NOO4QFXM.js → chunk-C75BXMPM.js} +1 -3
- package/chunks/chunk-CFMZLE3L.js +75 -0
- package/chunks/{chunk-AXTFYDXT.js → chunk-CXXAZ2LZ.js} +1 -1
- package/chunks/{chunk-N7VWZDWW.js → chunk-DCRVSIK6.js} +4460 -3838
- package/chunks/{chunk-NJQTG2G3.js → chunk-DGTH4BSO.js} +11 -11
- package/chunks/{chunk-J3TJH52D.js → chunk-DOTF2PF2.js} +1 -1
- package/chunks/{chunk-BWQLXU37.js → chunk-E4XZSQXB.js} +381 -86
- package/chunks/{chunk-2ALXPGB4.js → chunk-E6IR653O.js} +1 -1
- package/chunks/{chunk-R4Q2PEFV.js → chunk-E7HXORS7.js} +1 -1
- package/chunks/{chunk-ZKYR7QS4.js → chunk-EDB556X7.js} +2 -2
- package/chunks/{chunk-NUQVB25K.js → chunk-EKMJR7M3.js} +2 -2
- package/chunks/{chunk-Q5BD56BW.js → chunk-ELHAQ5H4.js} +7 -7
- package/chunks/{chunk-GSILBZLN.js → chunk-EOQXU3ZE.js} +2 -2
- package/chunks/{chunk-7QYWGTHB.js → chunk-EPVEPTI3.js} +44 -151
- package/chunks/{chunk-POC3YMHG.js → chunk-F2IRY2TD.js} +4 -4
- package/chunks/{chunk-S6Q6Q4P2.js → chunk-FBDHP23D.js} +1 -1
- package/chunks/{chunk-3I7W2POO.js → chunk-FGROOEKM.js} +5 -40
- package/chunks/{chunk-HNLMYDQE.js → chunk-FMLBBXHB.js} +13 -9
- package/chunks/{chunk-Z3GF56ME.js → chunk-FRISMWG3.js} +3 -3
- package/chunks/{chunk-ALMR3E6Q.js → chunk-GDWE23OR.js} +3 -3
- package/chunks/{chunk-IAEXTMED.js → chunk-GNV2SFO7.js} +173 -7
- package/chunks/{chunk-CXTPVBFA.js → chunk-GSS4SZNG.js} +100 -17
- package/chunks/{chunk-3XLK2QMY.js → chunk-H7L725Z6.js} +59 -16
- package/chunks/{chunk-6HUXPLB5.js → chunk-HEOH7JZY.js} +5 -5
- package/chunks/{chunk-DTNV6UZY.js → chunk-HFJSQ4GL.js} +10 -24
- package/chunks/{chunk-BZM5U74J.js → chunk-I6JRN375.js} +724 -468
- package/chunks/{chunk-VZUCTJ2P.js → chunk-I6YJZGHS.js} +10 -10
- package/chunks/{chunk-RZHU3K6M.js → chunk-IAS753HG.js} +2 -20
- package/chunks/{chunk-EDMXGXAK.js → chunk-IBRQG2MP.js} +10 -13
- package/chunks/{chunk-NOAG7N22.js → chunk-IGLX6UXJ.js} +2 -2
- package/chunks/chunk-INGBUYL6.js +230 -0
- package/chunks/{chunk-IL5M5NYD.js → chunk-IR5CVY5G.js} +11 -9
- package/chunks/{chunk-OX7IZ2G5.js → chunk-ITOB3LRT.js} +4 -4
- package/chunks/{chunk-LDVNJZGH.js → chunk-IUXWAKVS.js} +17 -8
- package/chunks/{chunk-2PJRI3EH.js → chunk-J4DRBDHX.js} +218 -43
- package/chunks/{chunk-XGYHNWL3.js → chunk-J7LBAKDH.js} +3 -3
- package/chunks/{chunk-W5FIP7FC.js → chunk-JLZ5YCMV.js} +5 -5
- package/chunks/{chunk-LG5Y4OWO.js → chunk-JRHKM3YQ.js} +2 -2
- package/chunks/{chunk-2ZN3O5FT.js → chunk-JZ3FFPES.js} +6 -6
- package/chunks/{chunk-NMCDMLHL.js → chunk-K2DCZ6SZ.js} +50 -35
- package/chunks/{chunk-F42YYSCK.js → chunk-KLGCF6G7.js} +8 -8
- package/chunks/{chunk-K2OJUPOE.js → chunk-KP2FHIFR.js} +12 -0
- package/chunks/{chunk-IV7GDNKC.js → chunk-KZCK5JUN.js} +4 -4
- package/chunks/{acp-subagent-executor-LEUN3N7N.js → chunk-L56E7YUM.js} +11 -110
- package/chunks/{chunk-NMRCXKQ5.js → chunk-L5BVU4JW.js} +3 -3
- package/chunks/{chunk-ZW2EUO2A.js → chunk-L6DIANLD.js} +1 -1
- package/chunks/{chunk-GOXQL4YH.js → chunk-LFNK4DGQ.js} +2 -2
- package/chunks/{chunk-UKZ45TJL.js → chunk-LMDMYMSS.js} +420 -219
- package/chunks/chunk-LMJSPC55.js +260 -0
- package/chunks/{chunk-X6K77VHC.js → chunk-LWWRJRCD.js} +1 -1
- package/chunks/{chunk-UXEO7E3V.js → chunk-LYD3T3H7.js} +1 -0
- package/chunks/{chunk-HBQ2NXOU.js → chunk-M6MID3FA.js} +2 -2
- package/chunks/{chunk-E4UEO3XM.js → chunk-ME4JBHSB.js} +324 -2
- package/chunks/{chunk-MF6E7FSA.js → chunk-MFPAVOYJ.js} +8 -201
- package/chunks/{chunk-BV6Q5HMY.js → chunk-MJHLKWGJ.js} +8 -7
- package/chunks/{chunk-NFYEQRLG.js → chunk-MQRLLBMQ.js} +1 -1
- package/chunks/{chunk-O4KNCAX4.js → chunk-NCPFOLM2.js} +11 -0
- package/chunks/{chunk-2SZH22YO.js → chunk-NJ2OFVUX.js} +115 -97
- package/chunks/{chunk-6MBXY6WM.js → chunk-NRQI3PGS.js} +1 -1
- package/chunks/{chunk-3CZ2BQV6.js → chunk-NXUZFW3G.js} +49 -19
- package/chunks/{chunk-X7UJKOHZ.js → chunk-O75ZXPOX.js} +4 -6
- package/chunks/{chunk-5GLDOLNQ.js → chunk-OWUAZXXN.js} +4 -3
- package/chunks/{chunk-XBZTAGB7.js → chunk-OXDQETZA.js} +1 -1
- package/chunks/{chunk-2UWQX4FP.js → chunk-OZEV3R3S.js} +1 -1
- package/chunks/{chunk-SBRX4BDI.js → chunk-P225AM5U.js} +2 -2
- package/chunks/{chunk-ZU47FBOC.js → chunk-P6XVYPWA.js} +126 -12
- package/chunks/{chunk-MHAADZOZ.js → chunk-PCIYPEYV.js} +3 -3
- package/chunks/{chunk-SSGAAWLY.js → chunk-PNACDSCO.js} +95 -73
- package/chunks/chunk-PRWRNC64.js +32 -0
- package/chunks/{chunk-7BXXIQG4.js → chunk-PVKEYO5D.js} +36 -72
- package/chunks/{chunk-FCQJLMA2.js → chunk-Q3TFRP5G.js} +178 -8
- package/chunks/{chunk-DYFOSJHU.js → chunk-QM2MRAG4.js} +2756 -1153
- package/chunks/{chunk-ZKZHSB5W.js → chunk-QR4Q425T.js} +9 -9
- package/chunks/{chunk-J6MB5ZHZ.js → chunk-QZW6WRB7.js} +2 -1
- package/chunks/{chunk-3BTSSIJO.js → chunk-RHTNPDGD.js} +99 -14
- package/chunks/{chunk-OLTN767L.js → chunk-RJFUPP3F.js} +2 -2
- package/chunks/chunk-RKXAOP6F.js +154 -0
- package/chunks/{chunk-TP6FYVQT.js → chunk-RSWBT7AZ.js} +33 -1
- package/chunks/{chunk-E7LB57MB.js → chunk-RWKR4VNK.js} +6 -6
- package/chunks/chunk-S7UQ3V2H.js +87 -0
- package/chunks/{chunk-N6VQ37ZZ.js → chunk-SFL6U7U7.js} +1 -1
- package/chunks/{chunk-SODMFNAR.js → chunk-SQCZDHBQ.js} +5 -5
- package/chunks/{chunk-MOS5OAOG.js → chunk-SROLVJFY.js} +6 -6
- package/chunks/{chunk-3KQBQ6FM.js → chunk-SYDMM6IX.js} +190 -28
- package/chunks/{chunk-HUXPEUFL.js → chunk-SYROIHU7.js} +1 -1
- package/chunks/{chunk-PSPAM24S.js → chunk-TBSCTWKF.js} +6 -0
- package/chunks/{chunk-RLLRJJDR.js → chunk-TJDUJSVH.js} +2 -2
- package/chunks/{chunk-HBU7EKY4.js → chunk-TRKIKBUW.js} +45 -15
- package/chunks/{chunk-GCDXVPFK.js → chunk-TW2RLZPC.js} +31 -7
- package/chunks/chunk-U6H3XTFA.js +95 -0
- package/chunks/{chunk-NHJKAR6E.js → chunk-UGEDTVL6.js} +972 -18
- package/chunks/{chunk-KOKPXIAN.js → chunk-UL4DXZMP.js} +3 -3
- package/chunks/{chunk-MSNHNAQZ.js → chunk-UUT7EFX3.js} +3 -3
- package/chunks/{chunk-JXNIF2O5.js → chunk-V545KI73.js} +1 -1
- package/chunks/{chunk-7ICHPMBQ.js → chunk-VELFTVEO.js} +4 -4
- package/chunks/chunk-VGY2RGXL.js +100 -0
- package/chunks/{chunk-5KI7ZDTB.js → chunk-VQ3SUPLA.js} +24 -12
- package/chunks/{chunk-TBEXLLAO.js → chunk-VRQZESKP.js} +1 -1
- package/chunks/{chunk-FN3JNDRU.js → chunk-VVI7MK3V.js} +3 -3
- package/chunks/{chunk-EUURTIV6.js → chunk-WBSJ6VPZ.js} +10 -2
- package/chunks/{chunk-NLNQNBZ2.js → chunk-WD6YQI5M.js} +1 -1
- package/chunks/{chunk-KFZYGSJN.js → chunk-WDB57HEI.js} +3 -3
- package/chunks/chunk-WFNEY5G7.js +347 -0
- package/chunks/{chunk-XKBFYTCD.js → chunk-WK6DEH3Q.js} +46 -0
- package/chunks/{chunk-EVTNACMT.js → chunk-WKQX4FND.js} +12 -12
- package/chunks/{chunk-36HCNKDS.js → chunk-WKVZES7O.js} +65 -14
- package/chunks/{chunk-NHCZJQE4.js → chunk-WLFILD4T.js} +6 -6
- package/chunks/{chunk-JYKWOREU.js → chunk-WMEX6CFP.js} +13 -3
- package/chunks/{chunk-6W4HBUA2.js → chunk-WNQRJXKP.js} +1 -1
- package/chunks/{chunk-7APZIRH3.js → chunk-X7GOO6VM.js} +5 -5
- package/chunks/{chunk-VX63RJXE.js → chunk-XX5HQLCZ.js} +7 -0
- package/chunks/{chunk-2Z3T52OC.js → chunk-Y5TM7SBV.js} +7 -2
- package/chunks/{chunk-V2P3DOQR.js → chunk-YDFOHRS5.js} +1 -1
- package/chunks/{chunk-QMUYLYT5.js → chunk-YGFJ6BRT.js} +1 -1
- package/chunks/{chunk-LK2WUCDQ.js → chunk-YM6KUQ2S.js} +1 -1
- package/chunks/chunk-Z72PLR74.js +36 -0
- package/chunks/{chunk-BHTYRHJF.js → chunk-ZJ7JQUGY.js} +4 -1
- package/chunks/{chunk-4ALNJDHL.js → chunk-ZKIAGIGH.js} +87 -4
- package/chunks/{chunk-VG3Q2NC4.js → chunk-ZNI3YJHS.js} +32 -12
- package/chunks/{chunk-DT75RKNH.js → chunk-ZXUKZHMV.js} +3 -3
- package/chunks/{chunk-Q2LVVIKF.js → chunk-ZZUXUBEB.js} +29 -12
- package/chunks/codex-subagent-executor-WCRCJMQK.js +586 -0
- package/chunks/{config-utils-L6KLDYIV.js → config-utils-73C3RGYN.js} +60 -56
- package/chunks/{contextCommand-UYEH7NIU.js → contextCommand-4ZDPQJHD.js} +58 -54
- package/chunks/{core-runtime-NVHT3Z3V.js → core-runtime-ZDUA5DYE.js} +58 -55
- package/chunks/{create-sub-session-YWASE5VH.js → create-sub-session-JK3SSJKO.js} +169 -89
- package/chunks/{create-sub-session-TIGCFGCS.js → create-sub-session-MSGNIM37.js} +5 -2
- package/chunks/{cron-create-AKWX67FO.js → cron-create-U2JJ5CCF.js} +3 -3
- package/chunks/{cron-delete-XPB6IYZJ.js → cron-delete-7DM4LJWD.js} +2 -2
- package/chunks/{cron-list-XBKO4WU5.js → cron-list-VCUSZK2Y.js} +2 -2
- package/chunks/{daemon-G5TYKZD6.js → daemon-NJB4PWZ7.js} +3 -1
- package/chunks/{daemon-git-worktree-guard-FOW4RQSK.js → daemon-git-worktree-guard-QU2CCJIE.js} +58 -54
- package/chunks/{daemon-status-provider-O5KQZYMP.js → daemon-status-provider-2PO7NLDQ.js} +68 -63
- package/chunks/{daemon-trust-policy-3ATXEON7.js → daemon-trust-policy-IMDTIUWB.js} +64 -60
- package/chunks/{daemon-trust-policy-monitor-7MCNDNEC.js → daemon-trust-policy-monitor-6IVBNUAD.js} +64 -60
- package/chunks/{de-UU2YTO37.js → de-VGY3VNBU.js} +3 -3
- package/chunks/{deferred-core-runtime-JK5IXL5K.js → deferred-core-runtime-3AZUE7F3.js} +56 -52
- package/chunks/{discovery-XP4RMDUM.js → discovery-5KUEPR65.js} +2 -2
- package/chunks/{display-image-NAH3AZ63.js → display-image-QTHALY6N.js} +3 -3
- package/chunks/{dist-KLZ7XGEQ.js → dist-2QYIVNS6.js} +1 -4
- package/chunks/{dist-AHJYPSJL.js → dist-GUB7QRYA.js} +2 -5
- package/chunks/{dist-ZXTZTE54.js → dist-MPUZZOG5.js} +4 -17
- package/chunks/{dist-F2DVGTL3.js → dist-NIOJXMGY.js} +111 -101
- package/chunks/{dist-KJGRVIGJ.js → dist-PA7WPFVE.js} +5 -36
- package/chunks/{dist-AIKC5E5P.js → dist-SE4J6Z4O.js} +43 -669
- package/chunks/{dist-H6G3K26N.js → dist-T6DDPDLQ.js} +14 -34
- package/chunks/{dist-GWNQVPZT.js → dist-TFGETXFN.js} +10 -33
- package/chunks/{dist-ZA52JXAS.js → dist-VDLSBCLM.js} +1 -5
- package/chunks/{edit-SY35KYIE.js → edit-HXMBABZU.js} +46 -42
- package/chunks/{en-CAJHTIQT.js → en-E5ZO5TZW.js} +5 -3
- package/chunks/{enter-worktree-54L5QJ3N.js → enter-worktree-CAARFWBI.js} +6 -5
- package/chunks/{enterPlanMode-HXX6KQJR.js → enterPlanMode-KAMW2I2C.js} +43 -39
- package/chunks/{environment-DKXHG4HB.js → environment-HYMXOTVB.js} +59 -55
- package/chunks/{errors-ADY7LQJJ.js → errors-NQRH7NAM.js} +58 -54
- package/chunks/exec-RPKEY6HP.js +505 -0
- package/chunks/{exit-worktree-EORJDKDS.js → exit-worktree-JXGGUOBP.js} +6 -5
- package/chunks/{exitPlanMode-HSK2CQI6.js → exitPlanMode-SMEBS5EF.js} +43 -39
- package/chunks/{fast-path-U636VWN2.js → fast-path-CUWUTJUR.js} +10 -10
- package/chunks/{fast-path-settings-V7MI7EZJ.js → fast-path-settings-XDYX7X5Z.js} +2 -2
- package/chunks/{fr-HKNWVXRJ.js → fr-UAZJJH5N.js} +3 -3
- package/chunks/{glob-GUGGTH5L.js → glob-VOM5DVZ3.js} +43 -39
- package/chunks/{goal-tools-PXYRSQGX.js → goal-tools-YBYJ5KPM.js} +49 -41
- package/chunks/{grep-3PKFKLCA.js → grep-H2I33VAO.js} +8 -3
- package/chunks/{handleAutoUpdate-5KHS4HIN.js → handleAutoUpdate-4CEHNJ2F.js} +61 -57
- package/chunks/{i18n-KSGKMUPT.js → i18n-G7ODGUGN.js} +57 -53
- package/chunks/{image-gen-OCCR2WWU.js → image-gen-5G2TQ3DY.js} +6 -5
- package/chunks/{initializer-YYT5XEZF.js → initializer-GZ73HSOA.js} +64 -60
- package/chunks/{installationInfo-UNSBPYW2.js → installationInfo-PV472I52.js} +57 -53
- package/chunks/{ja-GJS5RZGU.js → ja-2RITCMAJ.js} +3 -3
- package/chunks/list-D4A7LFOF.js +133 -0
- package/chunks/{list-agents-QLDXS5OD.js → list-agents-EWDCEPIW.js} +3 -3
- package/chunks/{llm-XGGLBGPH.js → llm-PJU4VT3K.js} +161 -125
- package/chunks/{llm-content-generator-ZHQQT5W7.js → llm-content-generator-ITOMDK65.js} +14 -7
- package/chunks/{loadedSettingsAdapter-3DXLASK7.js → loadedSettingsAdapter-NNU4BY5Q.js} +64 -60
- package/chunks/{loggingContentGenerator-V72OCCJO.js → loggingContentGenerator-SMI2AJYY.js} +47 -43
- package/chunks/{loop-wakeup-HHMYIC7Z.js → loop-wakeup-VG6CGBQA.js} +4 -4
- package/chunks/{ls-N7ABR6HI.js → ls-6ZB3BEIR.js} +1 -1
- package/chunks/{lsp-LTOFWG5P.js → lsp-M54FQARP.js} +5 -1
- package/chunks/{managed-npm-update-HV5LPZH2.js → managed-npm-update-AN5RDI5D.js} +57 -53
- package/chunks/mcp-RIIEZ7NJ.js +127 -0
- package/chunks/model-configuration-E5M35A3M.js +140 -0
- package/chunks/modelConfigUtils-43SY2EDS.js +119 -0
- package/chunks/{monitor-TLBNM4MV.js → monitor-5WYDOXLI.js} +43 -39
- package/chunks/{nonInteractiveCli-LSJSQ2W4.js → nonInteractiveCli-D3YFYXNB.js} +112 -107
- package/chunks/{notebook-edit-OSPOLZP6.js → notebook-edit-GQNFJTIR.js} +45 -41
- package/chunks/{openaiContentGenerator-BE4S5TRD.js → openaiContentGenerator-VJAKFZ32.js} +24 -19
- package/chunks/{openaiResponsesContentGenerator-RTCAJ5V5.js → openaiResponsesContentGenerator-AWRYZLJU.js} +110 -19
- package/chunks/{pidfile-H32FEPWA.js → pidfile-I5SWEJDX.js} +56 -52
- package/chunks/{processUtils-SSLIPDEA.js → processUtils-NSYM3SKR.js} +2 -2
- package/chunks/{prompt-terminal-ledger-I5SLL6UF.js → prompt-terminal-ledger-KWBANHUE.js} +57 -53
- package/chunks/{pt-FXMYXEUV.js → pt-5ZF7ZQUV.js} +3 -3
- package/chunks/{qwenContentGenerator-TMQC623Z.js → qwenContentGenerator-LR6HNFBU.js} +47 -43
- package/chunks/{qwenOAuth2-3ZRQHHTC.js → qwenOAuth2-WIEUEFEY.js} +5 -4
- package/chunks/{read-file-T2QAIZE2.js → read-file-LOSUPKDX.js} +9 -8
- package/chunks/{read-mcp-resource-B37WANAQ.js → read-mcp-resource-LPSWXVOD.js} +1 -1
- package/chunks/{record-artifact-OAXWXZ5D.js → record-artifact-PXMNP7GZ.js} +3 -3
- package/chunks/{record-source-D7R7X3GT.js → record-source-2GSY5JD5.js} +6 -6
- package/chunks/{report-findings-AR3VC6EQ.js → report-findings-W6GR7SYZ.js} +4 -4
- package/chunks/{request-shutdown-IKNWTX5M.js → request-shutdown-53SNYGVR.js} +5 -5
- package/chunks/{resumeHistoryUtils-QLKDH5GY.js → resumeHistoryUtils-6IFK3MQO.js} +63 -59
- package/chunks/{ripGrep-YGWL7KCV.js → ripGrep-MBSYRHNP.js} +13 -11
- package/chunks/{ru-RMHURE5U.js → ru-7BNZFQKG.js} +3 -3
- package/chunks/{run-qwen-serve-26KZDECC.js → run-qwen-serve-WYEEYIHV.js} +314 -127
- package/chunks/{runtime-BMEIVDDG.js → runtime-FVTTOB4E.js} +69 -65
- package/chunks/{scheduled-tasks-NCFPP6VQ.js → scheduled-tasks-RN6DUY7E.js} +66 -60
- package/chunks/{scheduler-47TVMUVN.js → scheduler-T7DDWINW.js} +58 -54
- package/chunks/{sdk-exporters-http-VWTF4W6K.js → sdk-exporters-http-3R2TRQHE.js} +2 -1
- package/chunks/{sdk-impl-G6FVTBQZ.js → sdk-impl-4WF3VZ2F.js} +3 -3
- package/chunks/{send-message-TWOGWCBG.js → send-message-UMJKN27Q.js} +7 -7
- package/chunks/{serve-KL3G6LQQ.js → serve-LVMPJBTV.js} +66 -62
- package/chunks/{server-LBPYXZ5G.js → server-U7K7EJEP.js} +783 -350
- package/chunks/{session-YG6742LO.js → session-BQNC5QUN.js} +117 -112
- package/chunks/{session-attachments-root-OUBQDYC4.js → session-attachments-root-LQDHWZST.js} +56 -52
- package/chunks/{session-pr-refresh-EKGMYNAW.js → session-pr-refresh-J7DQYX2I.js} +66 -60
- package/chunks/{settings-DDNHJX2L.js → settings-WAWJIZHR.js} +67 -63
- package/chunks/{shell-KUCXWITU.js → shell-WFJEYGQI.js} +43 -39
- package/chunks/{skill-JQLKPNWZ.js → skill-RHQWSDOK.js} +128 -23
- package/chunks/{skill-settings-XERQCUXZ.js → skill-settings-ALFUQQD6.js} +72 -60
- package/chunks/{spawnChannel-GQ45QFGB.js → spawnChannel-D35CB5JB.js} +60 -55
- package/chunks/{standalone-update-PRF3ILGZ.js → standalone-update-NMMY6CAO.js} +58 -54
- package/chunks/{start-opentui-ui-JDSOZE3N.js → start-opentui-ui-F6BN46GE.js} +2693 -2160
- package/chunks/{startInteractiveUI-RRW3JVHN.js → startInteractiveUI-E6U7L5AD.js} +1610 -1773
- package/chunks/{syntheticOutput-F6F27JMK.js → syntheticOutput-EX5L5GYI.js} +2 -2
- package/chunks/{task-create-Y623TBHB.js → task-create-75HVPEAH.js} +7 -7
- package/chunks/{task-list-FCPEEGWL.js → task-list-ZLJSMRFA.js} +2 -2
- package/chunks/{task-stop-QTKZXLPH.js → task-stop-MD7P6QGK.js} +1 -1
- package/chunks/{task-update-YLSXF25N.js → task-update-RI7QNVDP.js} +20 -13
- package/chunks/{team-create-5DRLOLOE.js → team-create-DKAJ3OUY.js} +43 -39
- package/chunks/{team-delete-S7TLHZCF.js → team-delete-RIDINW6I.js} +1 -1
- package/chunks/{team-plan-approval-MWSGAL5T.js → team-plan-approval-ZUG32DAK.js} +43 -39
- package/chunks/{terminal-image-renderer-H7PD4FQW.js → terminal-image-renderer-U3Z5PMGO.js} +58 -54
- package/chunks/{theme-manager-7AV73D6R.js → theme-manager-GA65ZFKB.js} +56 -52
- package/chunks/{todoWrite-5QI2H2FW.js → todoWrite-XSTG2VT5.js} +6 -3
- package/chunks/{tool-search-UGYTBLUV.js → tool-search-XCEN7VXX.js} +17 -12
- package/chunks/{total-session-admission-JIHSTJ5S.js → total-session-admission-FZSHBR32.js} +63 -58
- package/chunks/{trustedFolders-5VCBXFOP.js → trustedFolders-SXPNZESV.js} +57 -53
- package/chunks/{update-relaunch-4LF3APCV.js → update-relaunch-QOUTZZ7Q.js} +5 -5
- package/chunks/{updateCheck-4T3WUE5F.js → updateCheck-DYRX7M34.js} +60 -56
- package/chunks/{useAutoAcceptIndicator-UMGB64Z6.js → useAutoAcceptIndicator-QOG7LUT3.js} +68 -64
- package/chunks/{validateNonInterActiveAuth-GFJ72U2C.js → validateNonInterActiveAuth-FJPAEMDD.js} +109 -104
- package/chunks/{version-EAAZN4T2.js → version-5IC46F2Z.js} +1 -1
- package/chunks/{web-fetch-VRU3A2NI.js → web-fetch-WSW4QZBA.js} +15 -13
- package/chunks/web-search-5QFKXWUV.js +39 -0
- package/chunks/{web-shell-static-CCN4JZEE.js → web-shell-static-T7UGLVE4.js} +2 -7
- package/chunks/{workflow-UHPFALVZ.js → workflow-ZF4DLK4V.js} +179 -79
- package/chunks/workspace-providers-status-4E4XWBFS.js +133 -0
- package/chunks/{workspace-registration-store-A7RGKW62.js → workspace-registration-store-M3QEP27F.js} +2 -2
- package/chunks/{workspace-registry-C2NGE6SD.js → workspace-registry-H2ENI5G2.js} +63 -58
- package/chunks/{workspace-runtime-coordinator-QKMZ24YF.js → workspace-runtime-coordinator-CRRNB7PC.js} +66 -59
- package/chunks/{workspace-service-RQTTAGGC.js → workspace-service-GJ2GOHKU.js} +70 -65
- package/chunks/workspace-skills-status-CRWHV35X.js +130 -0
- package/chunks/{workspace-trust-reconciler-KFWATZUU.js → workspace-trust-reconciler-GG2JA7KI.js} +73 -68
- package/chunks/{write-file-DPVB2SBQ.js → write-file-LZ4EMF36.js} +45 -41
- package/chunks/{zh-TW-2K2WRFPY.js → zh-TW-7PRVUGLW.js} +5 -3
- package/chunks/{zh-S5V3Z5CR.js → zh-V2EYTYJP.js} +5 -3
- package/chunks/{zoom-image-S7AWLAPC.js → zoom-image-J5IMS3WD.js} +11 -10
- package/cli.js +18 -17
- package/codeModeHost.js +4425 -0
- package/export-transcript-document.css +1 -1
- package/export-transcript-document.js +151 -151
- package/locales/ca.js +5 -6
- package/locales/de.js +5 -6
- package/locales/en.js +7 -6
- package/locales/fr.js +6 -6
- package/locales/ja.js +5 -6
- package/locales/pt.js +5 -6
- package/locales/ru.js +6 -6
- package/locales/zh-TW.js +7 -6
- package/locales/zh.js +7 -6
- package/package.json +4 -3
- package/web-shell/assets/{abnfDiagram-VCTEODGH-nU24rpIE.js → abnfDiagram-VCTEODGH-S_JCiANq.js} +1 -1
- package/web-shell/assets/{arc-D1hTu8QI.js → arc-DP-839Xn.js} +1 -1
- package/web-shell/assets/architectureDiagram-5GKGNRK7-C8rCd2KK.js +36 -0
- package/web-shell/assets/blockDiagram-NRAW4CY4-DQR82jwr.js +129 -0
- package/web-shell/assets/{c4Diagram-UCG6FXSJ-kEFoC1ei.js → c4Diagram-UCG6FXSJ-D21PNMRP.js} +4 -4
- package/web-shell/assets/channel-BgGrpX_z.js +1 -0
- package/web-shell/assets/{chunk-2Q5K7J3B-DbT9wS7j.js → chunk-2Q5K7J3B-KdDInGLi.js} +1 -1
- package/web-shell/assets/{chunk-5VM5RSS4-CNbULt6O.js → chunk-5VM5RSS4-ltb7zRmH.js} +1 -1
- package/web-shell/assets/{chunk-F27PBJKO-CbQRy4Tb.js → chunk-F27PBJKO-DcpQA0Ng.js} +1 -1
- package/web-shell/assets/chunk-G27WJ6UU-C8NDZxcy.js +231 -0
- package/web-shell/assets/chunk-JWPE2WC7-hXhhHTs1.js +1 -0
- package/web-shell/assets/chunk-LCL6LL3I-CLaOR-Hl.js +206 -0
- package/web-shell/assets/chunk-POPQ4Y6H-Y5_qlB1N.js +1 -0
- package/web-shell/assets/{chunk-SVP7TREG-DyBb2Axj.js → chunk-SVP7TREG-BWX2Voh7.js} +4 -4
- package/web-shell/assets/{chunk-XXDRQBXY-BIA0eb5B.js → chunk-XXDRQBXY-1wmj_kXI.js} +1 -1
- package/web-shell/assets/classDiagram-DTDB5LWJ-jUH7ADYs.js +1 -0
- package/web-shell/assets/classDiagram-v2-JRS7N3AN-jUH7ADYs.js +1 -0
- package/web-shell/assets/cose-bilkent-JH36ORCC-DpLc-cdd.js +1 -0
- package/web-shell/assets/cynefin-OW5HDTMX-DhxGiPZW.js +178 -0
- package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-LENf_IUy.js → cynefinDiagram-5FMLGOSQ-Dl3jfBry.js} +1 -1
- package/web-shell/assets/{cytoscape.esm-CUqq0XTU.js → cytoscape.esm-DJK6lGiH.js} +3 -3
- package/web-shell/assets/dagre-3AP2YEHR-C8FA8vJk.js +4 -0
- package/web-shell/assets/diagram-S7CK7UJ4-D-quIUtW.js +30 -0
- package/web-shell/assets/diagram-UQ7AKVKN-Bjo09Uts.js +41 -0
- package/web-shell/assets/diagram-VSXAHHWV-IoI3ttq4.js +3 -0
- package/web-shell/assets/diagram-VX7I27RA-BKyOZ5SO.js +24 -0
- package/web-shell/assets/diagram-Z3DM3KII-Cu_OHEhw.js +24 -0
- package/web-shell/assets/{ebnfDiagram-PWID7BFC-BGpiquRm.js → ebnfDiagram-PWID7BFC-UVB-bbPg.js} +1 -1
- package/web-shell/assets/{erDiagram-SSCWMZ5O-D0besu_U.js → erDiagram-SSCWMZ5O-l8drddto.js} +13 -13
- package/web-shell/assets/flowDiagram-A5DVABFB-DU1I_VAI.js +168 -0
- package/web-shell/assets/{ganttDiagram-EL5Y4UJY-CNlsAeNr.js → ganttDiagram-EL5Y4UJY-BLRH05uB.js} +1 -1
- package/web-shell/assets/gitGraphDiagram-WWUBYQGX-Czg_BkRE.js +106 -0
- package/web-shell/assets/index-CmMV8Jla.js +3 -0
- package/web-shell/assets/{index-CGT341lL.js → index-DohPy72Z.js} +1 -1
- package/web-shell/assets/index-DyMtNYuu.js +2207 -0
- package/web-shell/assets/index-n6N-2a3v.css +36 -0
- package/web-shell/assets/{infoDiagram-RXCK75RN-Bpai64Ll.js → infoDiagram-RXCK75RN-BpBvjkro.js} +1 -1
- package/web-shell/assets/ishikawaDiagram-5VMMS53U-phy1l3jm.js +70 -0
- package/web-shell/assets/{journeyDiagram-EYS64GPL-iz_DKgFX.js → journeyDiagram-EYS64GPL-oY-9LgVS.js} +1 -1
- package/web-shell/assets/kanban-definition-3QL26DDD-slZoy-sc.js +89 -0
- package/web-shell/assets/{layout-qEvKgnvU.js → layout-0hnn_P9l.js} +1 -1
- package/web-shell/assets/{linear-C6lklGdq.js → linear-7Wqe8DRy.js} +1 -1
- package/web-shell/assets/mermaid.core-BaK8n0bq.js +312 -0
- package/web-shell/assets/mindmap-definition-FBJOCRG2-BedUdy_E.js +96 -0
- package/web-shell/assets/{pegDiagram-XKGWAZYB-BhD0q0i6.js → pegDiagram-XKGWAZYB-DQLRdmxq.js} +1 -1
- package/web-shell/assets/pieDiagram-E7YTZNPT-UC20w9-5.js +39 -0
- package/web-shell/assets/quadrantDiagram-AXDQQJYC-CQx2Hmk3.js +7 -0
- package/web-shell/assets/qwen-code-notification-BRVagufF.png +0 -0
- package/web-shell/assets/{railroadDiagram-O6MQD6OU-E1g2KIFK.js → railroadDiagram-O6MQD6OU-2UEJe_y-.js} +1 -1
- package/web-shell/assets/{requirementDiagram-EFPCY7ZU-CuerYJOe.js → requirementDiagram-EFPCY7ZU-DOAJggB4.js} +13 -13
- package/web-shell/assets/{sankeyDiagram-P5KCCOFB-CqWyCZGA.js → sankeyDiagram-P5KCCOFB-DnQ_qJo7.js} +7 -7
- package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-B-YWb8x4.js → sequenceDiagram-WJ2MYXX4-DZrZUoCo.js} +16 -16
- package/web-shell/assets/sizeCapture-X5ZJPWSS-B5G4GDQB.js +1 -0
- package/web-shell/assets/{stateDiagram-HBIQ2CUA-C8LDpNHS.js → stateDiagram-HBIQ2CUA-Bn1cT0qF.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-4QOOHH4V-BF3xtNvJ.js +1 -0
- package/web-shell/assets/swimlanes-XN3QIQJK-Bzhcdn87.js +1 -0
- package/web-shell/assets/swimlanesDiagram-VK2B7HYN-B753mA3E.js +8 -0
- package/web-shell/assets/timeline-definition-24CTP7MA-BqZ_3D10.js +120 -0
- package/web-shell/assets/vennDiagram-4TSXK5OY-z9kw1kmm.js +34 -0
- package/web-shell/assets/wardleyDiagram-VM6X3IG4-Cydp1zJW.js +78 -0
- package/web-shell/assets/{xychartDiagram-S5SC5T6Z-ruD2Wjhg.js → xychartDiagram-S5SC5T6Z-j4X1lQKo.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/chunk-7Q2AXRDJ.js +0 -114
- package/chunks/chunk-AEY27Z35.js +0 -1411
- package/chunks/chunk-CFKIH3D3.js +0 -50
- package/chunks/chunk-HWVUSYSN.js +0 -126
- package/chunks/chunk-QHMLYMMS.js +0 -32
- package/chunks/chunk-SAH4BD2J.js +0 -92
- package/chunks/chunk-TWUKBNWM.js +0 -86
- package/chunks/chunk-ZTTC7T4X.js +0 -126
- package/chunks/list-YL6LDQKQ.js +0 -129
- package/chunks/mcp-IYVSIW6O.js +0 -123
- package/chunks/web-search-NEGYQNDJ.js +0 -912
- package/chunks/workspace-providers-status-AEYISSU2.js +0 -127
- package/chunks/workspace-skills-status-5HWZU3HX.js +0 -126
- package/web-shell/assets/architectureDiagram-5GKGNRK7-B_fgkKe7.js +0 -36
- package/web-shell/assets/blockDiagram-NRAW4CY4-C3pddUNg.js +0 -129
- package/web-shell/assets/channel-Blod4z1X.js +0 -1
- package/web-shell/assets/chunk-G27WJ6UU-CVbXTxYk.js +0 -231
- package/web-shell/assets/chunk-JWPE2WC7-D89c_BXy.js +0 -1
- package/web-shell/assets/chunk-LCL6LL3I-B7-I_9KB.js +0 -206
- package/web-shell/assets/chunk-POPQ4Y6H-DcLQFzS4.js +0 -1
- package/web-shell/assets/classDiagram-DTDB5LWJ-D6hFDMqb.js +0 -1
- package/web-shell/assets/classDiagram-v2-JRS7N3AN-D6hFDMqb.js +0 -1
- package/web-shell/assets/cose-bilkent-JH36ORCC-Db2FYN85.js +0 -1
- package/web-shell/assets/cynefin-OW5HDTMX-i4GwmBVy.js +0 -178
- package/web-shell/assets/dagre-3AP2YEHR-CF9XVrD9.js +0 -4
- package/web-shell/assets/diagram-S7CK7UJ4-DD5PJfSm.js +0 -30
- package/web-shell/assets/diagram-UQ7AKVKN-CjD_sBMj.js +0 -41
- package/web-shell/assets/diagram-VSXAHHWV-U5WwMqyA.js +0 -3
- package/web-shell/assets/diagram-VX7I27RA-BujpHJJf.js +0 -24
- package/web-shell/assets/diagram-Z3DM3KII-3ZLtKEXo.js +0 -24
- package/web-shell/assets/flowDiagram-A5DVABFB-9DwDuIyr.js +0 -168
- package/web-shell/assets/gitGraphDiagram-WWUBYQGX-C_pPFiTR.js +0 -106
- package/web-shell/assets/index-BYWs4JWq.js +0 -3
- package/web-shell/assets/index-D3YS6KuJ.js +0 -2173
- package/web-shell/assets/index-eBxK3rs2.css +0 -36
- package/web-shell/assets/ishikawaDiagram-5VMMS53U-ktpJFq4r.js +0 -70
- package/web-shell/assets/kanban-definition-3QL26DDD-m_gG00Yt.js +0 -89
- package/web-shell/assets/mermaid.core-DSCYB_2P.js +0 -312
- package/web-shell/assets/mindmap-definition-FBJOCRG2-DRQbT8w-.js +0 -96
- package/web-shell/assets/pieDiagram-E7YTZNPT-BvIGQCSd.js +0 -39
- package/web-shell/assets/quadrantDiagram-AXDQQJYC-BDQtfpU-.js +0 -7
- package/web-shell/assets/sizeCapture-X5ZJPWSS-BB7YY4Tl.js +0 -1
- package/web-shell/assets/stateDiagram-v2-4QOOHH4V-C4CbdvGa.js +0 -1
- package/web-shell/assets/swimlanes-XN3QIQJK-D94vOoxZ.js +0 -1
- package/web-shell/assets/swimlanesDiagram-VK2B7HYN--QNSIOC8.js +0 -8
- package/web-shell/assets/timeline-definition-24CTP7MA-C9C8uEYm.js +0 -120
- package/web-shell/assets/vennDiagram-4TSXK5OY-CYzMHbVW.js +0 -34
- package/web-shell/assets/wardleyDiagram-VM6X3IG4-G9nhtLES.js +0 -78
- package/chunks/{open-with-auth-6MVIHMXB.js → open-with-auth-XFCCJOO6.js} +3 -3
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
// Force strict mode and setup for ESM
|
|
2
2
|
"use strict";
|
|
3
|
-
import {
|
|
4
|
-
createOpenAIReasoningThoughtPart
|
|
5
|
-
} from "./chunk-K2OJUPOE.js";
|
|
6
3
|
import {
|
|
7
4
|
convertSchema,
|
|
8
5
|
relaxSchemaForFunctionCalling
|
|
@@ -10,22 +7,25 @@ import {
|
|
|
10
7
|
import {
|
|
11
8
|
InvalidStreamError,
|
|
12
9
|
setToolCallPreparations
|
|
13
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-S7UQ3V2H.js";
|
|
14
11
|
import {
|
|
15
12
|
safeJsonParse,
|
|
16
13
|
setGenAiUsageProvenance
|
|
17
14
|
} from "./chunk-GSKX53AN.js";
|
|
15
|
+
import {
|
|
16
|
+
createOpenAIReasoningThoughtPart
|
|
17
|
+
} from "./chunk-KP2FHIFR.js";
|
|
18
18
|
import {
|
|
19
19
|
TOKEN_ESTIMATE_UNITS_PER_TOKEN,
|
|
20
20
|
estimateTextTokenUnits,
|
|
21
21
|
estimateTextTokens
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-QZW6WRB7.js";
|
|
23
23
|
import {
|
|
24
24
|
normalizeMcpToolName
|
|
25
25
|
} from "./chunk-WZAD4ZNJ.js";
|
|
26
26
|
import {
|
|
27
27
|
SchemaValidator
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-RSWBT7AZ.js";
|
|
29
29
|
import {
|
|
30
30
|
createDebugLogger
|
|
31
31
|
} from "./chunk-ZAFYHRVY.js";
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
import {
|
|
21
21
|
channelFactoryForwardsChildEnv,
|
|
22
22
|
defaultSpawnChannelFactory
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-2YMRRI2C.js";
|
|
24
24
|
import {
|
|
25
25
|
BridgeChannelClosedError,
|
|
26
26
|
BridgeTimeoutError,
|
|
@@ -30,7 +30,7 @@ import {
|
|
|
30
30
|
SessionRestoreTimeoutError,
|
|
31
31
|
createIdleWorkspaceExtensionsStatus,
|
|
32
32
|
createIdleWorkspaceHooksStatus
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-54B2LTKP.js";
|
|
34
34
|
import {
|
|
35
35
|
ACTIVE_WORK_CLOSE_IF_UNHELD_PARAM,
|
|
36
36
|
ACTIVE_WORK_CLOSE_TIMEOUT_MS,
|
|
@@ -53,6 +53,7 @@ import {
|
|
|
53
53
|
DAEMON_PERMISSION_CANCEL_REASON_META_KEY,
|
|
54
54
|
DAEMON_PROMPT_DISPLAY_TEXT_META_KEY,
|
|
55
55
|
DAEMON_RESTORE_ASK_USER_QUESTION_META_KEY,
|
|
56
|
+
DAEMON_SUBMITTED_PROMPT_META_KEY,
|
|
56
57
|
DAEMON_SUPPRESS_RESTORE_ASK_USER_QUESTION_META_KEY,
|
|
57
58
|
DAEMON_SUPPRESS_WORKTREE_CONTEXT_RESTORE_META_KEY,
|
|
58
59
|
LOAD_REPLAY_BULK_MODE,
|
|
@@ -68,6 +69,8 @@ import {
|
|
|
68
69
|
REQUESTED_SESSION_ID_META_KEY,
|
|
69
70
|
SESSION_INITIALIZATION_DEADLINE_META_KEY,
|
|
70
71
|
SESSION_INITIALIZATION_TIMEOUT_ERROR_KIND,
|
|
72
|
+
SESSION_MODEL_PERSIST_DEFAULT_META_KEY,
|
|
73
|
+
SUBMITTED_PROMPT_META_KEY,
|
|
71
74
|
TODO_STOP_GUARD_CONTINUATION_CLAIM_METHOD,
|
|
72
75
|
TODO_STOP_GUARD_QUEUE_RELEASE_METHOD,
|
|
73
76
|
WORKTREE_MCP_DEFER_META_KEY,
|
|
@@ -75,7 +78,7 @@ import {
|
|
|
75
78
|
clampActiveWorkIntervalMs,
|
|
76
79
|
isValidTrustedModelPrompt,
|
|
77
80
|
sessionCloseDrainBudgetMs
|
|
78
|
-
} from "./chunk-
|
|
81
|
+
} from "./chunk-TBSCTWKF.js";
|
|
79
82
|
import {
|
|
80
83
|
BranchWhilePromptActiveError,
|
|
81
84
|
BridgeChannelQuarantinedError,
|
|
@@ -101,6 +104,10 @@ import {
|
|
|
101
104
|
WorkspaceMismatchError,
|
|
102
105
|
isNotCurrentlyGeneratingCancelError
|
|
103
106
|
} from "./chunk-FAWTMDX7.js";
|
|
107
|
+
import {
|
|
108
|
+
canonicalizeWorkspace,
|
|
109
|
+
translateAndCheckAbsoluteWorkspacePath
|
|
110
|
+
} from "./chunk-6PLDPT2C.js";
|
|
104
111
|
import {
|
|
105
112
|
CHANNEL_DELIVERY_ERROR_CODES,
|
|
106
113
|
LIVE_TASK_TOOL_NAMES,
|
|
@@ -118,10 +125,6 @@ import {
|
|
|
118
125
|
PROTOCOL_VERSION,
|
|
119
126
|
RequestError
|
|
120
127
|
} from "./chunk-IJOS26LH.js";
|
|
121
|
-
import {
|
|
122
|
-
canonicalizeWorkspace,
|
|
123
|
-
translateAndCheckAbsoluteWorkspacePath
|
|
124
|
-
} from "./chunk-6PLDPT2C.js";
|
|
125
128
|
import {
|
|
126
129
|
PRIVATE_CONVERSATIONS_RUNTIME_ENABLE,
|
|
127
130
|
PRIVATE_CONVERSATIONS_RUNTIME_ENV
|
|
@@ -136,7 +139,7 @@ import {
|
|
|
136
139
|
isOfficeDocumentExtension,
|
|
137
140
|
isRecordableDerivedChild,
|
|
138
141
|
pathHasSkippedDirectoryComponent
|
|
139
|
-
} from "./chunk-
|
|
142
|
+
} from "./chunk-EDB556X7.js";
|
|
140
143
|
import {
|
|
141
144
|
SESSION_PR_LIST_LIMIT,
|
|
142
145
|
SESSION_PR_URL_MAX_LENGTH,
|
|
@@ -148,24 +151,31 @@ import {
|
|
|
148
151
|
canonicalSessionPrUrl,
|
|
149
152
|
normalizeTurnResultError,
|
|
150
153
|
toSessionPrInfo
|
|
151
|
-
} from "./chunk-
|
|
154
|
+
} from "./chunk-DCRVSIK6.js";
|
|
152
155
|
import {
|
|
153
156
|
isUnverifiableIdentityError,
|
|
154
157
|
openNoFollow
|
|
155
|
-
} from "./chunk-
|
|
158
|
+
} from "./chunk-HEOH7JZY.js";
|
|
156
159
|
import {
|
|
157
160
|
PUBLISHED_CONTENT_SHA256_METADATA_KEY,
|
|
158
161
|
SESSION_ARTIFACT_PERSISTENCE_VERSION,
|
|
159
162
|
WORKSPACE_CONTENT_MTIME_MS_METADATA_KEY,
|
|
160
163
|
WORKSPACE_CONTENT_SHA256_METADATA_KEY,
|
|
161
164
|
WORKSPACE_CONTENT_SIZE_BYTES_METADATA_KEY,
|
|
165
|
+
deleteArtifactSnapshot,
|
|
166
|
+
getWebPreviewSnapshotId,
|
|
162
167
|
isAdoptableContentFingerprintKey,
|
|
163
168
|
isPrototypeMetadataKey,
|
|
164
169
|
isReservedWorkspaceMetadataKey,
|
|
165
170
|
metadataBudgetBytes,
|
|
166
171
|
normalizeSnapshotPayload,
|
|
172
|
+
retainArtifactSnapshot,
|
|
167
173
|
stableSessionArtifactId
|
|
168
|
-
} from "./chunk-
|
|
174
|
+
} from "./chunk-ME4JBHSB.js";
|
|
175
|
+
import {
|
|
176
|
+
MAX_CRON_TASK_ROUTING_ID_LENGTH,
|
|
177
|
+
isValidCronTaskRoutingId
|
|
178
|
+
} from "./chunk-3LMDSCLU.js";
|
|
169
179
|
import {
|
|
170
180
|
SessionSourceError,
|
|
171
181
|
validateSessionSourceInput
|
|
@@ -176,7 +186,7 @@ import {
|
|
|
176
186
|
import {
|
|
177
187
|
DAEMON_TRACEPARENT_META_KEY,
|
|
178
188
|
DAEMON_TRACESTATE_META_KEY
|
|
179
|
-
} from "./chunk-
|
|
189
|
+
} from "./chunk-L6DIANLD.js";
|
|
180
190
|
import {
|
|
181
191
|
INVOCATION_CONTEXT_META_KEY,
|
|
182
192
|
PRIVATE_ACP_CAPABILITY_ENV,
|
|
@@ -184,7 +194,10 @@ import {
|
|
|
184
194
|
} from "./chunk-5ETULJLP.js";
|
|
185
195
|
import {
|
|
186
196
|
getSpecificMimeType
|
|
187
|
-
} from "./chunk-
|
|
197
|
+
} from "./chunk-QZW6WRB7.js";
|
|
198
|
+
import {
|
|
199
|
+
Storage
|
|
200
|
+
} from "./chunk-ZAFYHRVY.js";
|
|
188
201
|
import {
|
|
189
202
|
init_esbuild_shims
|
|
190
203
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -4062,10 +4075,24 @@ var BridgeClient = class {
|
|
|
4062
4075
|
);
|
|
4063
4076
|
}
|
|
4064
4077
|
const model = params["model"];
|
|
4078
|
+
const groupId = params["groupId"];
|
|
4079
|
+
if (model !== void 0 && !isValidCronTaskRoutingId(model)) {
|
|
4080
|
+
throw RequestError.invalidParams(
|
|
4081
|
+
void 0,
|
|
4082
|
+
`\`model\` must be a non-empty string of at most ${MAX_CRON_TASK_ROUTING_ID_LENGTH} characters without control characters`
|
|
4083
|
+
);
|
|
4084
|
+
}
|
|
4085
|
+
if (groupId !== void 0 && (!isScheduledTaskRunSource(source) || !isValidCronTaskRoutingId(groupId))) {
|
|
4086
|
+
throw RequestError.invalidParams(
|
|
4087
|
+
void 0,
|
|
4088
|
+
`\`groupId\` must be a non-empty string of at most ${MAX_CRON_TASK_ROUTING_ID_LENGTH} characters without control characters and is only supported for scheduled-task runs`
|
|
4089
|
+
);
|
|
4090
|
+
}
|
|
4065
4091
|
const result = await this.onCreateSubSession({
|
|
4066
4092
|
prompt,
|
|
4067
4093
|
completion,
|
|
4068
|
-
...typeof model === "string"
|
|
4094
|
+
...typeof model === "string" ? { model } : {},
|
|
4095
|
+
...typeof groupId === "string" ? { groupId } : {},
|
|
4069
4096
|
...typeof name === "string" && name.length > 0 ? { name } : {},
|
|
4070
4097
|
...source,
|
|
4071
4098
|
callerSessionId
|
|
@@ -5263,6 +5290,7 @@ var SessionArtifactStore = class {
|
|
|
5263
5290
|
}
|
|
5264
5291
|
sessionId;
|
|
5265
5292
|
workspaceCwd;
|
|
5293
|
+
runtimeBaseDir;
|
|
5266
5294
|
maxArtifacts;
|
|
5267
5295
|
persistence;
|
|
5268
5296
|
artifacts = /* @__PURE__ */ new Map();
|
|
@@ -5277,11 +5305,14 @@ var SessionArtifactStore = class {
|
|
|
5277
5305
|
tombstonedClientIds = /* @__PURE__ */ new Map();
|
|
5278
5306
|
stickyEphemeralIds = /* @__PURE__ */ new Set();
|
|
5279
5307
|
markerArtifacts = /* @__PURE__ */ new Map();
|
|
5308
|
+
// Failed removals or partial restores can leave ownership without a live record.
|
|
5309
|
+
pendingSnapshotRemovals = /* @__PURE__ */ new Set();
|
|
5280
5310
|
lastRestoreWarnings = [];
|
|
5281
5311
|
lastRestoreWarningDetails = [];
|
|
5282
5312
|
constructor(options) {
|
|
5283
5313
|
this.sessionId = options.sessionId;
|
|
5284
5314
|
this.workspaceCwd = options.workspaceCwd;
|
|
5315
|
+
this.runtimeBaseDir = options.runtimeBaseDir ?? Storage.getRuntimeBaseDir();
|
|
5285
5316
|
this.maxArtifacts = options.maxArtifacts ?? 200;
|
|
5286
5317
|
this.persistence = options.persistence;
|
|
5287
5318
|
}
|
|
@@ -5369,6 +5400,11 @@ var SessionArtifactStore = class {
|
|
|
5369
5400
|
}
|
|
5370
5401
|
}
|
|
5371
5402
|
const changes = [];
|
|
5403
|
+
let rollbackArtifacts = [];
|
|
5404
|
+
const rollback = /* @__PURE__ */ __name(async () => {
|
|
5405
|
+
this.restoreState(before);
|
|
5406
|
+
await this.reclaimSnapshotFiles(rollbackArtifacts);
|
|
5407
|
+
}, "rollback");
|
|
5372
5408
|
try {
|
|
5373
5409
|
for (const normalized of coalesceByIdentity(normalizedResults)) {
|
|
5374
5410
|
const artifact = this.applyStickyEphemeralOverride(normalized);
|
|
@@ -5439,6 +5475,23 @@ var SessionArtifactStore = class {
|
|
|
5439
5475
|
const createdIds = new Set(
|
|
5440
5476
|
changes.filter((change) => change.action === "created").map((change) => change.artifactId)
|
|
5441
5477
|
);
|
|
5478
|
+
rollbackArtifacts = changes.flatMap(
|
|
5479
|
+
(change) => change.action !== "removed" && change.artifact ? [change.artifact] : []
|
|
5480
|
+
);
|
|
5481
|
+
for (const artifact of rollbackArtifacts) {
|
|
5482
|
+
try {
|
|
5483
|
+
await retainArtifactSnapshot(
|
|
5484
|
+
artifact,
|
|
5485
|
+
this.runtimeBaseDir,
|
|
5486
|
+
this.sessionId
|
|
5487
|
+
);
|
|
5488
|
+
} catch (error) {
|
|
5489
|
+
if (validationStrict || persistenceStrict) throw error;
|
|
5490
|
+
warnings.push(
|
|
5491
|
+
`artifact ${artifact.id} kept without retaining its snapshot: ${error instanceof Error ? error.message : String(error)}`
|
|
5492
|
+
);
|
|
5493
|
+
}
|
|
5494
|
+
}
|
|
5442
5495
|
const overflowRemoved = await this.evictOverflow(
|
|
5443
5496
|
createdIds,
|
|
5444
5497
|
changes,
|
|
@@ -5458,7 +5511,7 @@ var SessionArtifactStore = class {
|
|
|
5458
5511
|
try {
|
|
5459
5512
|
persistenceWarnings = await this.persistChanges(changes, true);
|
|
5460
5513
|
} catch (error) {
|
|
5461
|
-
|
|
5514
|
+
await rollback();
|
|
5462
5515
|
const artifactIds = changes.filter(shouldCommitBeforeDurablePersistence).map((change) => change.artifactId);
|
|
5463
5516
|
const warning = "artifact durable removal not persisted; live changes rolled back";
|
|
5464
5517
|
writeStderrLine(
|
|
@@ -5498,9 +5551,15 @@ var SessionArtifactStore = class {
|
|
|
5498
5551
|
)
|
|
5499
5552
|
);
|
|
5500
5553
|
stripDurableTombstoneMarkers(changes);
|
|
5554
|
+
await this.reclaimSnapshotFiles([
|
|
5555
|
+
...changes.filter(
|
|
5556
|
+
(change) => change.action === "removed" && change.reason === "eviction"
|
|
5557
|
+
).map((change) => change.artifact),
|
|
5558
|
+
...overflowRemoved.droppedArtifacts
|
|
5559
|
+
]);
|
|
5501
5560
|
} catch (error) {
|
|
5502
5561
|
if (validationStrict || persistenceStrict || error instanceof SessionArtifactAuthorizationError) {
|
|
5503
|
-
|
|
5562
|
+
await rollback();
|
|
5504
5563
|
}
|
|
5505
5564
|
throw error;
|
|
5506
5565
|
}
|
|
@@ -5595,6 +5654,7 @@ var SessionArtifactStore = class {
|
|
|
5595
5654
|
}
|
|
5596
5655
|
const warnings = needsDurableTombstone ? [] : await this.persistChanges(changes, false);
|
|
5597
5656
|
stripDurableTombstoneMarkers(changes);
|
|
5657
|
+
await this.reclaimSnapshotFiles([removeChange.artifact]);
|
|
5598
5658
|
const warningDetails = detailsForPersistenceWarnings(
|
|
5599
5659
|
warnings,
|
|
5600
5660
|
changes,
|
|
@@ -5662,7 +5722,7 @@ var SessionArtifactStore = class {
|
|
|
5662
5722
|
let normalized = await this.normalizeInput(
|
|
5663
5723
|
input,
|
|
5664
5724
|
++this.receivedSeq,
|
|
5665
|
-
artifact.storage === "published" && !isFileArtifactUrl(artifact.url),
|
|
5725
|
+
artifact.storage === "published" && (!isFileArtifactUrl(artifact.url) || Boolean(getWebPreviewSnapshotId(artifact))),
|
|
5666
5726
|
{
|
|
5667
5727
|
metadataBudget: "persisted",
|
|
5668
5728
|
workspaceExpected: workspaceExpectedFromArtifact(artifact),
|
|
@@ -5705,6 +5765,17 @@ var SessionArtifactStore = class {
|
|
|
5705
5765
|
durableTombstoneRequired: retention !== "ephemeral" ? true : void 0,
|
|
5706
5766
|
insertSeq: ++this.insertSeq
|
|
5707
5767
|
};
|
|
5768
|
+
try {
|
|
5769
|
+
await retainArtifactSnapshot(
|
|
5770
|
+
stored,
|
|
5771
|
+
this.runtimeBaseDir,
|
|
5772
|
+
this.sessionId
|
|
5773
|
+
);
|
|
5774
|
+
} catch (error) {
|
|
5775
|
+
warnings.push(
|
|
5776
|
+
`restored artifact ${stored.id} without retaining its snapshot: ${error instanceof Error ? error.message : String(error)}`
|
|
5777
|
+
);
|
|
5778
|
+
}
|
|
5708
5779
|
this.artifacts.set(stored.id, stored);
|
|
5709
5780
|
restoredCount++;
|
|
5710
5781
|
} catch (error) {
|
|
@@ -5740,10 +5811,37 @@ var SessionArtifactStore = class {
|
|
|
5740
5811
|
insertSeq: ++this.insertSeq
|
|
5741
5812
|
});
|
|
5742
5813
|
}
|
|
5814
|
+
if (!warnings.some(isArtifactSnapshotCompletenessWarning)) {
|
|
5815
|
+
this.pendingSnapshotRemovals.clear();
|
|
5816
|
+
}
|
|
5743
5817
|
const evicted = await this.evictOverflow(/* @__PURE__ */ new Set(), []);
|
|
5744
5818
|
if (evicted.removed.length > 0) {
|
|
5745
5819
|
warnings.push("restored artifact list pruned to live limit");
|
|
5746
|
-
|
|
5820
|
+
const persistenceWarnings = await this.persistChanges(
|
|
5821
|
+
evicted.removed,
|
|
5822
|
+
false
|
|
5823
|
+
);
|
|
5824
|
+
warnings.push(...persistenceWarnings);
|
|
5825
|
+
if (persistenceWarnings.length === 0) {
|
|
5826
|
+
await this.reclaimSnapshotFiles(
|
|
5827
|
+
evicted.removed.map((change) => change.artifact)
|
|
5828
|
+
);
|
|
5829
|
+
}
|
|
5830
|
+
}
|
|
5831
|
+
const restoredIds = /* @__PURE__ */ new Set([
|
|
5832
|
+
...snapshot.artifacts.map((artifact) => artifact.id),
|
|
5833
|
+
...preservedLiveEphemeralArtifacts.map((artifact) => artifact.id)
|
|
5834
|
+
]);
|
|
5835
|
+
const discarded = [...previousState.artifacts.values()].filter(
|
|
5836
|
+
(artifact) => !restoredIds.has(artifact.id)
|
|
5837
|
+
);
|
|
5838
|
+
if (warnings.some(isArtifactSnapshotCompletenessWarning)) {
|
|
5839
|
+
for (const artifact of previousState.artifacts.values()) {
|
|
5840
|
+
const id = getWebPreviewSnapshotId(artifact);
|
|
5841
|
+
if (id) this.pendingSnapshotRemovals.add(id);
|
|
5842
|
+
}
|
|
5843
|
+
} else {
|
|
5844
|
+
await this.reclaimSnapshotFiles(discarded);
|
|
5747
5845
|
}
|
|
5748
5846
|
this.setLastRestoreWarnings(warnings);
|
|
5749
5847
|
return warnings;
|
|
@@ -5766,6 +5864,7 @@ var SessionArtifactStore = class {
|
|
|
5766
5864
|
this.persistenceSeq = sequence;
|
|
5767
5865
|
this.durableEventsSinceSnapshot = 0;
|
|
5768
5866
|
this.consecutiveSnapshotFailures = 0;
|
|
5867
|
+
this.pendingSnapshotRemovals.clear();
|
|
5769
5868
|
return [];
|
|
5770
5869
|
} catch (error) {
|
|
5771
5870
|
writeStderrLine(
|
|
@@ -5789,7 +5888,7 @@ var SessionArtifactStore = class {
|
|
|
5789
5888
|
const normalized = await this.normalizeInput(
|
|
5790
5889
|
input,
|
|
5791
5890
|
++this.receivedSeq,
|
|
5792
|
-
artifact.storage === "published" && !isFileArtifactUrl(artifact.url),
|
|
5891
|
+
artifact.storage === "published" && (!isFileArtifactUrl(artifact.url) || Boolean(getWebPreviewSnapshotId(artifact))),
|
|
5793
5892
|
{
|
|
5794
5893
|
metadataBudget: "persisted",
|
|
5795
5894
|
workspaceExpected: workspaceExpectedFromArtifact(artifact),
|
|
@@ -5840,6 +5939,7 @@ var SessionArtifactStore = class {
|
|
|
5840
5939
|
tombstonedClientIds: new Map(this.tombstonedClientIds),
|
|
5841
5940
|
stickyEphemeralIds: new Set(this.stickyEphemeralIds),
|
|
5842
5941
|
markerArtifacts: new Map(this.markerArtifacts),
|
|
5942
|
+
pendingSnapshotRemovals: new Set(this.pendingSnapshotRemovals),
|
|
5843
5943
|
lastRestoreWarnings: [...this.lastRestoreWarnings],
|
|
5844
5944
|
lastRestoreWarningDetails: [...this.lastRestoreWarningDetails]
|
|
5845
5945
|
};
|
|
@@ -5870,6 +5970,10 @@ var SessionArtifactStore = class {
|
|
|
5870
5970
|
for (const [id, artifact] of state.markerArtifacts) {
|
|
5871
5971
|
this.markerArtifacts.set(id, artifact);
|
|
5872
5972
|
}
|
|
5973
|
+
this.pendingSnapshotRemovals.clear();
|
|
5974
|
+
for (const id of state.pendingSnapshotRemovals) {
|
|
5975
|
+
this.pendingSnapshotRemovals.add(id);
|
|
5976
|
+
}
|
|
5873
5977
|
this.setLastRestoreWarnings(state.lastRestoreWarnings);
|
|
5874
5978
|
this.lastRestoreWarningDetails = [...state.lastRestoreWarningDetails];
|
|
5875
5979
|
}
|
|
@@ -5914,6 +6018,8 @@ var SessionArtifactStore = class {
|
|
|
5914
6018
|
await this.persistence.recordEvent(payload);
|
|
5915
6019
|
this.persistenceSeq = sequence;
|
|
5916
6020
|
for (const change of durableChanges) {
|
|
6021
|
+
const snapshotId = change.artifact && getWebPreviewSnapshotId(change.artifact);
|
|
6022
|
+
if (snapshotId) this.pendingSnapshotRemovals.delete(snapshotId);
|
|
5917
6023
|
if (change.action === "removed") continue;
|
|
5918
6024
|
const stored = this.artifacts.get(change.artifactId);
|
|
5919
6025
|
if (!stored) continue;
|
|
@@ -5958,6 +6064,7 @@ var SessionArtifactStore = class {
|
|
|
5958
6064
|
this.persistenceSeq = sequence;
|
|
5959
6065
|
this.durableEventsSinceSnapshot = 0;
|
|
5960
6066
|
this.consecutiveSnapshotFailures = 0;
|
|
6067
|
+
this.pendingSnapshotRemovals.clear();
|
|
5961
6068
|
} catch (error) {
|
|
5962
6069
|
this.consecutiveSnapshotFailures = Math.min(
|
|
5963
6070
|
this.consecutiveSnapshotFailures + 1,
|
|
@@ -6015,6 +6122,8 @@ var SessionArtifactStore = class {
|
|
|
6015
6122
|
for (const change of changes) {
|
|
6016
6123
|
if (change.action === "removed") {
|
|
6017
6124
|
removalNotPersisted = true;
|
|
6125
|
+
const snapshotId = change.artifact && getWebPreviewSnapshotId(change.artifact);
|
|
6126
|
+
if (snapshotId) this.pendingSnapshotRemovals.add(snapshotId);
|
|
6018
6127
|
if (change.reason === "explicit") {
|
|
6019
6128
|
this.rememberTombstone(change);
|
|
6020
6129
|
this.stickyEphemeralIds.delete(change.artifactId);
|
|
@@ -6588,10 +6697,29 @@ var SessionArtifactStore = class {
|
|
|
6588
6697
|
);
|
|
6589
6698
|
}
|
|
6590
6699
|
}
|
|
6700
|
+
async reclaimSnapshotFiles(artifacts) {
|
|
6701
|
+
for (const artifact of artifacts) {
|
|
6702
|
+
if (!artifact) continue;
|
|
6703
|
+
const id = getWebPreviewSnapshotId(artifact);
|
|
6704
|
+
if (!id || this.pendingSnapshotRemovals.has(id) || [...this.artifacts.values()].some(
|
|
6705
|
+
(kept) => getWebPreviewSnapshotId(kept) === id
|
|
6706
|
+
))
|
|
6707
|
+
continue;
|
|
6708
|
+
try {
|
|
6709
|
+
await deleteArtifactSnapshot(
|
|
6710
|
+
artifact,
|
|
6711
|
+
this.runtimeBaseDir,
|
|
6712
|
+
this.sessionId
|
|
6713
|
+
);
|
|
6714
|
+
} catch {
|
|
6715
|
+
}
|
|
6716
|
+
}
|
|
6717
|
+
}
|
|
6591
6718
|
async evictOverflow(createdIds, changes, strict = false) {
|
|
6592
6719
|
const removed = [];
|
|
6720
|
+
const droppedArtifacts = [];
|
|
6593
6721
|
if (this.artifacts.size <= this.maxArtifacts) {
|
|
6594
|
-
return { removed, droppedCreated: 0 };
|
|
6722
|
+
return { removed, droppedCreated: 0, droppedArtifacts };
|
|
6595
6723
|
}
|
|
6596
6724
|
const createdInThisBatch = new Set(createdIds);
|
|
6597
6725
|
const candidates = Array.from(this.artifacts.values()).filter(
|
|
@@ -6634,12 +6762,13 @@ var SessionArtifactStore = class {
|
|
|
6634
6762
|
}
|
|
6635
6763
|
this.artifacts.delete(artifact.id);
|
|
6636
6764
|
droppedCreated++;
|
|
6765
|
+
droppedArtifacts.push(toPublicArtifact(artifact));
|
|
6637
6766
|
writeStderrLine(
|
|
6638
6767
|
`[artifacts] session=${this.sessionId} action=dropped reason="max artifacts exceeded" artifactId=${artifact.id}`
|
|
6639
6768
|
);
|
|
6640
6769
|
removePriorChange(changes, artifact.id);
|
|
6641
6770
|
}
|
|
6642
|
-
return { removed, droppedCreated };
|
|
6771
|
+
return { removed, droppedCreated, droppedArtifacts };
|
|
6643
6772
|
}
|
|
6644
6773
|
};
|
|
6645
6774
|
function coalesceByIdentity(artifacts) {
|
|
@@ -8462,6 +8591,11 @@ function broadcastTurnComplete(entry, sessionId, promptResult, promptId, origina
|
|
|
8462
8591
|
assistantRecordUuid: rawBranchPoint["assistantRecordUuid"],
|
|
8463
8592
|
checkpointUuid: rawBranchPoint["checkpointUuid"]
|
|
8464
8593
|
} : void 0;
|
|
8594
|
+
const rawPromptCancelled = meta?.["qwen.promptCancelled"] && typeof meta["qwen.promptCancelled"] === "object" ? meta["qwen.promptCancelled"] : void 0;
|
|
8595
|
+
const promptCancelled = promptResult.stopReason === "cancelled" && typeof rawPromptCancelled?.["cancelledAt"] === "number" && Number.isFinite(rawPromptCancelled["cancelledAt"]) && typeof rawPromptCancelled["elapsedMs"] === "number" && Number.isFinite(rawPromptCancelled["elapsedMs"]) && rawPromptCancelled["elapsedMs"] >= 0 ? {
|
|
8596
|
+
cancelledAt: rawPromptCancelled["cancelledAt"],
|
|
8597
|
+
elapsedMs: rawPromptCancelled["elapsedMs"]
|
|
8598
|
+
} : void 0;
|
|
8465
8599
|
const published = entry.events.publish({
|
|
8466
8600
|
type: "turn_complete",
|
|
8467
8601
|
...promptId ? { promptId } : {},
|
|
@@ -8469,7 +8603,8 @@ function broadcastTurnComplete(entry, sessionId, promptResult, promptId, origina
|
|
|
8469
8603
|
sessionId,
|
|
8470
8604
|
stopReason: promptResult.stopReason ?? "end_turn",
|
|
8471
8605
|
...promptId ? { promptId } : {},
|
|
8472
|
-
...branchPoint ? { branchPoint } : {}
|
|
8606
|
+
...branchPoint ? { branchPoint } : {},
|
|
8607
|
+
...promptCancelled ? { promptCancelled } : {}
|
|
8473
8608
|
},
|
|
8474
8609
|
...originatorClientId ? { originatorClientId } : {}
|
|
8475
8610
|
});
|
|
@@ -10315,6 +10450,7 @@ function createAcpSessionBridge(opts) {
|
|
|
10315
10450
|
[PRIVATE_PARENT_CAPABILITY_META_KEY]: privateParentCapability
|
|
10316
10451
|
},
|
|
10317
10452
|
clientCapabilities: {
|
|
10453
|
+
_meta: { "qwen.goalProposals": true },
|
|
10318
10454
|
fs: {
|
|
10319
10455
|
readTextFile: delegateReadTextFileToClient,
|
|
10320
10456
|
writeTextFile: true
|
|
@@ -10900,11 +11036,20 @@ function createAcpSessionBridge(opts) {
|
|
|
10900
11036
|
entry.modelRoundtripInFlight = true;
|
|
10901
11037
|
let succeeded = false;
|
|
10902
11038
|
try {
|
|
11039
|
+
const persistDefault = !isScheduledTaskRunSource({
|
|
11040
|
+
sourceType: entry.sourceType,
|
|
11041
|
+
sourceId: entry.sourceId
|
|
11042
|
+
});
|
|
10903
11043
|
const result = await Promise.race([
|
|
10904
11044
|
withTimeout(
|
|
10905
11045
|
conn.unstable_setSessionModel({
|
|
10906
11046
|
sessionId: entry.sessionId,
|
|
10907
|
-
modelId
|
|
11047
|
+
modelId,
|
|
11048
|
+
...!persistDefault ? {
|
|
11049
|
+
_meta: {
|
|
11050
|
+
[SESSION_MODEL_PERSIST_DEFAULT_META_KEY]: false
|
|
11051
|
+
}
|
|
11052
|
+
} : {}
|
|
10908
11053
|
}),
|
|
10909
11054
|
timeoutMs,
|
|
10910
11055
|
"setSessionModel"
|
|
@@ -10912,7 +11057,7 @@ function createAcpSessionBridge(opts) {
|
|
|
10912
11057
|
transportClosed
|
|
10913
11058
|
]);
|
|
10914
11059
|
publishModelSwitched(entry, modelId, originatorClientId);
|
|
10915
|
-
if (!isReservedStandaloneSessionSourceType(entry.sourceType)) {
|
|
11060
|
+
if (persistDefault && !isReservedStandaloneSessionSourceType(entry.sourceType)) {
|
|
10916
11061
|
broadcastWorkspaceEvent({
|
|
10917
11062
|
type: "settings_changed",
|
|
10918
11063
|
data: {
|
|
@@ -11491,8 +11636,8 @@ function createAcpSessionBridge(opts) {
|
|
|
11491
11636
|
return response["closed"] === true;
|
|
11492
11637
|
} catch (err) {
|
|
11493
11638
|
writeStderrLine(
|
|
11494
|
-
`qwen serve: ${label} ACP session close notification failed for session ${JSON.stringify(entry.sessionId)}: ${
|
|
11495
|
-
err
|
|
11639
|
+
`qwen serve: ${label} ACP session close notification failed for session ${JSON.stringify(entry.sessionId)}: ${extractErrorMessage(
|
|
11640
|
+
err
|
|
11496
11641
|
)}`
|
|
11497
11642
|
);
|
|
11498
11643
|
if (opts2?.throwOnFailure === true) {
|
|
@@ -11696,6 +11841,7 @@ function createAcpSessionBridge(opts) {
|
|
|
11696
11841
|
artifacts: new SessionArtifactStore({
|
|
11697
11842
|
sessionId,
|
|
11698
11843
|
workspaceCwd,
|
|
11844
|
+
runtimeBaseDir: opts.artifactSnapshotRuntimeBaseDir,
|
|
11699
11845
|
persistence: createSessionArtifactPersistence(ci.connection, sessionId)
|
|
11700
11846
|
}),
|
|
11701
11847
|
artifactWorkspaceCwd: workspaceCwd,
|
|
@@ -11714,6 +11860,7 @@ function createAcpSessionBridge(opts) {
|
|
|
11714
11860
|
cwdChangeQueue: Promise.resolve(),
|
|
11715
11861
|
promptQueue: Promise.resolve(),
|
|
11716
11862
|
pendingPromptCount: 0,
|
|
11863
|
+
cancelGeneration: 0,
|
|
11717
11864
|
pendingAgentNotificationCount: 0,
|
|
11718
11865
|
...opts.promptLedger ? { promptLedger: opts.promptLedger } : {},
|
|
11719
11866
|
pendingPromptList: [],
|
|
@@ -14045,9 +14192,18 @@ function createAcpSessionBridge(opts) {
|
|
|
14045
14192
|
delete meta[DAEMON_RESTORE_ASK_USER_QUESTION_META_KEY];
|
|
14046
14193
|
delete meta[DAEMON_CHANNEL_DELIVERY_META_KEY];
|
|
14047
14194
|
delete meta[DAEMON_PROMPT_DISPLAY_TEXT_META_KEY];
|
|
14195
|
+
delete meta[SUBMITTED_PROMPT_META_KEY];
|
|
14196
|
+
delete meta[DAEMON_SUBMITTED_PROMPT_META_KEY];
|
|
14197
|
+
if (typeof context?.submittedPrompt === "string" && !isPromotedMidTurn && context?.channelPrompt !== true) {
|
|
14198
|
+
meta[DAEMON_SUBMITTED_PROMPT_META_KEY] = context.submittedPrompt;
|
|
14199
|
+
}
|
|
14048
14200
|
delete meta[DAEMON_MODEL_PROMPT_META_KEY];
|
|
14049
14201
|
delete meta[DAEMON_ATTACHMENT_REFERENCES_META_KEY];
|
|
14050
14202
|
delete meta[CHANNEL_PROMPT_META_KEY];
|
|
14203
|
+
delete meta["qwen.goalProposalApproval"];
|
|
14204
|
+
if (originatorClientId !== void 0 && entry.clientIds.has(originatorClientId) && !context?.channelPrompt && !isContinue && !isRestoreAskUserQuestion) {
|
|
14205
|
+
meta["qwen.goalProposalApproval"] = true;
|
|
14206
|
+
}
|
|
14051
14207
|
if (isRetry) {
|
|
14052
14208
|
meta[DAEMON_RETRY_META_KEY] = true;
|
|
14053
14209
|
}
|
|
@@ -14262,6 +14418,7 @@ function createAcpSessionBridge(opts) {
|
|
|
14262
14418
|
entry,
|
|
14263
14419
|
context?.clientId
|
|
14264
14420
|
);
|
|
14421
|
+
entry.cancelGeneration += 1;
|
|
14265
14422
|
const runningPrompt = entry.pendingPromptList.find(
|
|
14266
14423
|
(pending) => pending.state === "running" && !pending.terminalPublished
|
|
14267
14424
|
);
|
|
@@ -14628,7 +14785,7 @@ function createAcpSessionBridge(opts) {
|
|
|
14628
14785
|
}
|
|
14629
14786
|
} catch (cleanupErr) {
|
|
14630
14787
|
writeStderrLine(
|
|
14631
|
-
`qwen serve: branchSession live-state close for ${result.newSessionId} failed: ${cleanupErr
|
|
14788
|
+
`qwen serve: branchSession live-state close for ${result.newSessionId} failed: ${extractErrorMessage(cleanupErr)}`
|
|
14632
14789
|
);
|
|
14633
14790
|
}
|
|
14634
14791
|
throw restoreErr;
|
|
@@ -14834,6 +14991,7 @@ function createAcpSessionBridge(opts) {
|
|
|
14834
14991
|
const artifacts = new SessionArtifactStore({
|
|
14835
14992
|
sessionId,
|
|
14836
14993
|
workspaceCwd: expectation.child.canonicalPath,
|
|
14994
|
+
runtimeBaseDir: opts.artifactSnapshotRuntimeBaseDir,
|
|
14837
14995
|
persistence: createSessionArtifactPersistence(
|
|
14838
14996
|
entry.connection,
|
|
14839
14997
|
sessionId
|
|
@@ -15617,12 +15775,16 @@ function createAcpSessionBridge(opts) {
|
|
|
15617
15775
|
const entry = byId.get(sessionId);
|
|
15618
15776
|
if (!entry) throw new SessionNotFoundError(sessionId);
|
|
15619
15777
|
resolveTrustedClientId(entry, context?.clientId);
|
|
15778
|
+
const cancelGeneration = entry.cancelGeneration;
|
|
15620
15779
|
const decision = await requestSessionStatus(sessionId, SERVE_CONTROL_EXT_METHODS.sessionContinue);
|
|
15621
15780
|
if (!decision.accepted) {
|
|
15622
15781
|
return decision;
|
|
15623
15782
|
}
|
|
15624
15783
|
const liveEntry = byId.get(sessionId);
|
|
15625
15784
|
if (!liveEntry) throw new SessionNotFoundError(sessionId);
|
|
15785
|
+
if (liveEntry !== entry || liveEntry.cancelGeneration !== cancelGeneration || isClosingOrAuthorizingClose(liveEntry) || liveEntry.pendingPromptCount > 0 || liveEntry.promptActive || liveEntry.goalTurnActive) {
|
|
15786
|
+
return { accepted: false, interruption: decision.interruption };
|
|
15787
|
+
}
|
|
15626
15788
|
const lastEventId = liveEntry.events.lastEventId;
|
|
15627
15789
|
const eventEpoch = liveEntry.events.epoch;
|
|
15628
15790
|
const promptId = context?.promptId;
|
|
@@ -16294,7 +16456,7 @@ function createAcpSessionBridge(opts) {
|
|
|
16294
16456
|
writeStderrLine(
|
|
16295
16457
|
`[mid-turn] session=${JSON.stringify(entry.sessionId)} rejected id ${JSON.stringify(messageId)}: session idle`
|
|
16296
16458
|
);
|
|
16297
|
-
return { accepted: false };
|
|
16459
|
+
return { accepted: false, reason: "session_idle" };
|
|
16298
16460
|
}
|
|
16299
16461
|
promoteMidTurnMessage(
|
|
16300
16462
|
entry,
|
|
@@ -20,6 +20,7 @@ var LOAD_REPLAY_MAX_UPDATES = 1e4;
|
|
|
20
20
|
var REQUESTED_SESSION_ID_META_KEY = "qwen-code/sessionId";
|
|
21
21
|
var SESSION_INITIALIZATION_DEADLINE_META_KEY = "qwen.daemon.sessionInitializationDeadlineMs";
|
|
22
22
|
var SESSION_INITIALIZATION_TIMEOUT_ERROR_KIND = "session_initialization_timeout";
|
|
23
|
+
var SESSION_MODEL_PERSIST_DEFAULT_META_KEY = "qwen.session.modelPersistDefault";
|
|
23
24
|
var CHANNEL_STARTUP_PROFILE_META_KEY = "qwen.daemon.channelStartupProfile";
|
|
24
25
|
var CHANNEL_STARTUP_PROFILE_VERSION = 1;
|
|
25
26
|
var CHANNEL_LIVENESS_META_KEY = "qwen.daemon.channelLiveness";
|
|
@@ -86,6 +87,8 @@ function isValidTrustedModelPrompt(value) {
|
|
|
86
87
|
}
|
|
87
88
|
__name(isValidTrustedModelPrompt, "isValidTrustedModelPrompt");
|
|
88
89
|
var DAEMON_CHANNEL_DELIVERY_META_KEY = "qwen.daemon.channelDelivery";
|
|
90
|
+
var SUBMITTED_PROMPT_META_KEY = "qwen.submittedPrompt";
|
|
91
|
+
var DAEMON_SUBMITTED_PROMPT_META_KEY = "qwen.daemon.submittedPrompt";
|
|
89
92
|
var DAEMON_PROMPT_DISPLAY_TEXT_META_KEY = "qwen.daemon.promptDisplayText";
|
|
90
93
|
var CHANNEL_PROMPT_META_KEY = "qwen.channel.prompt";
|
|
91
94
|
var MID_TURN_QUEUE_DRAIN_METHOD = "craft/drainMidTurnQueue";
|
|
@@ -107,6 +110,7 @@ export {
|
|
|
107
110
|
REQUESTED_SESSION_ID_META_KEY,
|
|
108
111
|
SESSION_INITIALIZATION_DEADLINE_META_KEY,
|
|
109
112
|
SESSION_INITIALIZATION_TIMEOUT_ERROR_KIND,
|
|
113
|
+
SESSION_MODEL_PERSIST_DEFAULT_META_KEY,
|
|
110
114
|
CHANNEL_STARTUP_PROFILE_META_KEY,
|
|
111
115
|
CHANNEL_STARTUP_PROFILE_VERSION,
|
|
112
116
|
CHANNEL_LIVENESS_META_KEY,
|
|
@@ -135,6 +139,8 @@ export {
|
|
|
135
139
|
DAEMON_ATTACHMENT_REFERENCES_META_KEY,
|
|
136
140
|
isValidTrustedModelPrompt,
|
|
137
141
|
DAEMON_CHANNEL_DELIVERY_META_KEY,
|
|
142
|
+
SUBMITTED_PROMPT_META_KEY,
|
|
143
|
+
DAEMON_SUBMITTED_PROMPT_META_KEY,
|
|
138
144
|
DAEMON_PROMPT_DISPLAY_TEXT_META_KEY,
|
|
139
145
|
CHANNEL_PROMPT_META_KEY,
|
|
140
146
|
MID_TURN_QUEUE_DRAIN_METHOD,
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
getRateLimitErrorDetails
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-ZKIAGIGH.js";
|
|
6
6
|
import {
|
|
7
7
|
isInternalPromptId
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-TRKIKBUW.js";
|
|
9
9
|
import {
|
|
10
10
|
createDebugLogger
|
|
11
11
|
} from "./chunk-ZAFYHRVY.js";
|