@qwen-code/qwen-code 0.19.12 → 0.20.0-nightly.20260720.0c271659d
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundled/qc-helper/docs/integration-github-action.md +1 -1
- package/bundled/qc-helper/docs/qwen-serve.md +42 -5
- package/bundled/review/DESIGN.md +2 -2
- package/bundled/review/SKILL.md +13 -9
- package/chunks/{MaxSizedBox-QOXLJGAF.js → MaxSizedBox-ED3QND6V.js} +30 -27
- package/chunks/{StandaloneSessionPicker-FLV6CGYJ.js → StandaloneSessionPicker-NQVAOTKS.js} +50 -45
- package/chunks/{acpAgent-OB2CTF3P.js → acpAgent-HOBFF5B6.js} +353 -130
- package/chunks/{agent-CKSI7BTR.js → agent-J7EPFLA6.js} +22 -22
- package/chunks/{agent-headless-U36LIYTU.js → agent-headless-RRG3JU7Q.js} +22 -22
- package/chunks/{anthropicContentGenerator-ZZRGFEES.js → anthropicContentGenerator-HVKLXOOU.js} +6 -5
- package/chunks/{artifact-tool-PHO5XEGZ.js → artifact-tool-WBCAMD3O.js} +2 -2
- package/chunks/{askUserQuestion-CEPBT47X.js → askUserQuestion-6DZC4UV5.js} +2 -2
- package/chunks/{bridge-AIKTINJG.js → bridge-OW5FZ6BF.js} +25 -25
- package/chunks/build-SSCNEHZZ.js +62 -0
- package/chunks/{channel-worker-group-NEUVTPB2.js → channel-worker-group-53CMOPFT.js} +4 -4
- package/chunks/{channel-worker-manager-7CQVOVWV.js → channel-worker-manager-UTXILKC2.js} +4 -4
- package/chunks/{channel-worker-supervisor-3BU2KNCZ.js → channel-worker-supervisor-ZGO2W2MD.js} +3 -3
- package/chunks/chunk-27AJEU6G.js +442 -0
- package/chunks/{chunk-BABX5XRO.js → chunk-2HOVDT7W.js} +1 -1
- package/chunks/{chunk-GW7BONBU.js → chunk-2JOLZA6L.js} +5 -5
- package/chunks/{chunk-ZSDFNE6Y.js → chunk-2TDSM7I6.js} +3 -3
- package/chunks/{chunk-6IITZE7O.js → chunk-2YJLFCYI.js} +7 -7
- package/chunks/{chunk-VEFR4XJQ.js → chunk-37MGCVTS.js} +1 -1
- package/chunks/{chunk-3B6PSWHE.js → chunk-3ML52IFS.js} +4 -4
- package/chunks/{chunk-TKASNYDS.js → chunk-3QR5MOHP.js} +2 -2
- package/chunks/{chunk-KRMARA3A.js → chunk-3SNKL6L6.js} +29 -13
- package/chunks/{chunk-DJ4VHAFJ.js → chunk-3ZL6YMO2.js} +3 -3
- package/chunks/chunk-43T5WDQ7.js +127 -0
- package/chunks/{chunk-W6CQPLWM.js → chunk-4ODB7WIB.js} +1 -1
- package/chunks/{chunk-CHPQFLW6.js → chunk-4UH63YE5.js} +5 -5
- package/chunks/{chunk-2CCDMJM7.js → chunk-53OPIXUE.js} +3 -3
- package/chunks/{chunk-HTHUX2T5.js → chunk-5QWWOFGG.js} +0 -1
- package/chunks/{chunk-3DJY4IFO.js → chunk-5SCI6E3E.js} +1 -1
- package/chunks/{chunk-4CHDYDG3.js → chunk-6EFTQYW7.js} +1 -1
- package/chunks/{chunk-OBSLEYCD.js → chunk-6HQW55TM.js} +29 -2
- package/chunks/{chunk-N47VAEAJ.js → chunk-6MN6XJTR.js} +2379 -1291
- package/chunks/{chunk-UCTCDLDS.js → chunk-6VGRTGOG.js} +1 -1
- package/chunks/{chunk-KNGZ5EYL.js → chunk-7JQK6FXK.js} +198 -120
- package/chunks/{chunk-2476XGOU.js → chunk-A4TJMY65.js} +1 -1
- package/chunks/{chunk-67Q33DQY.js → chunk-AMRWCMX4.js} +4 -4
- package/chunks/{chunk-XAAEDML2.js → chunk-AYCDXHZB.js} +1 -1
- package/chunks/{chunk-VAJS2E2D.js → chunk-BDBMYST4.js} +1 -1
- package/chunks/{chunk-F2RR4HO2.js → chunk-BVLROR2T.js} +1 -1
- package/chunks/{chunk-UE5TZ55T.js → chunk-C27BYUX6.js} +29 -2
- package/chunks/{chunk-PK7COE5O.js → chunk-CL7IRYTA.js} +1 -1
- package/chunks/{chunk-KMJOMWHE.js → chunk-COWNNAWJ.js} +1 -1
- package/chunks/{chunk-UOA2IHRI.js → chunk-CPCVCKKF.js} +1 -1
- package/chunks/{chunk-4RPARQ5D.js → chunk-D2VIDMVM.js} +2 -2
- package/chunks/{chunk-4MPYGENG.js → chunk-DCCW7CRR.js} +6 -6
- package/chunks/chunk-DIKIJS6Z.js +114 -0
- package/chunks/{chunk-ETN2G32U.js → chunk-DR5AUNJ2.js} +4 -4
- package/chunks/{chunk-6ETOSWAO.js → chunk-DSBCU6JY.js} +3 -3
- package/chunks/{chunk-LKR7QQ63.js → chunk-EAUYY7SS.js} +3 -3
- package/chunks/{chunk-J2MKYJKZ.js → chunk-EIAK6Q2B.js} +2 -2
- package/chunks/{chunk-WEPXQKGP.js → chunk-EZVDJFZ7.js} +1 -1
- package/chunks/{chunk-WHQNBBWW.js → chunk-FLSVD6BS.js} +2 -2
- package/chunks/{chunk-3ESL7JXA.js → chunk-FODJ5Q5K.js} +3 -3
- package/chunks/{chunk-4XCVGEEX.js → chunk-FSL5W5TI.js} +3 -3
- package/chunks/{chunk-NE6HHLL3.js → chunk-FWT66O5E.js} +2 -2
- package/chunks/{chunk-OSSDHJDU.js → chunk-G45X5TRN.js} +1 -1
- package/chunks/{chunk-ZGT623SG.js → chunk-G6MDKXDP.js} +12 -12
- package/chunks/{chunk-KANTXY7B.js → chunk-GKY2OJ7R.js} +2 -2
- package/chunks/chunk-GMGDLUC7.js +37 -0
- package/chunks/{chunk-J6NT5YTN.js → chunk-H2XVO6NE.js} +1 -289
- package/chunks/{chunk-XSEWNUMZ.js → chunk-I4HZ4GOD.js} +8 -8
- package/chunks/{chunk-CPU6I5YV.js → chunk-I6JUVU7J.js} +34 -24
- package/chunks/{chunk-UZC5VPOJ.js → chunk-IDGTC5AS.js} +3 -3
- package/chunks/{chunk-QIFTJDBY.js → chunk-INL2RSLA.js} +1 -1
- package/chunks/{chunk-GSPWDTYY.js → chunk-INQQM52C.js} +18 -16
- package/chunks/{chunk-HVGJWOR6.js → chunk-JBCFW3IL.js} +2 -2
- package/chunks/{chunk-LPHGXXZX.js → chunk-JD3MKVKL.js} +1 -1
- package/chunks/{chunk-GCY7QTCE.js → chunk-JDPCOUZ3.js} +1602 -398
- package/chunks/{chunk-NUHSLBJZ.js → chunk-JNWZQ27S.js} +15 -9
- package/chunks/{chunk-KGWA7XYL.js → chunk-JRJ2LV6P.js} +6 -226
- package/chunks/{chunk-QSG4ZFG4.js → chunk-KTUQMDEP.js} +1 -1
- package/chunks/{chunk-RKUMFUFM.js → chunk-LTQ5C5AB.js} +4 -4
- package/chunks/{chunk-V4PCIS25.js → chunk-MAQQGNQ5.js} +44 -1
- package/chunks/{chunk-EISVEV45.js → chunk-NBMIC7DR.js} +2 -2
- package/chunks/{chunk-GEHSF7MS.js → chunk-NEEB7UEN.js} +2545 -1974
- package/chunks/{chunk-BKNPMEN6.js → chunk-NIJEXGV6.js} +93 -17
- package/chunks/{chunk-PR5XQ73G.js → chunk-NQVA6O7F.js} +2 -2
- package/chunks/{chunk-FUSMC3SZ.js → chunk-NT324EJ6.js} +13 -8
- package/chunks/{chunk-5N7M4XYN.js → chunk-O2SPEQFA.js} +5 -5
- package/chunks/{chunk-OEHCAWUA.js → chunk-OLMETXLX.js} +2 -2
- package/chunks/{chunk-JCJPZMJV.js → chunk-OOCI5VVU.js} +1 -1
- package/chunks/{chunk-XSPFQQRE.js → chunk-OONJNQ42.js} +3 -3
- package/chunks/{chunk-ANRANWVE.js → chunk-OP4MOGXF.js} +1 -1
- package/chunks/{chunk-SGPFJMRP.js → chunk-PBATSWUQ.js} +1 -1
- package/chunks/chunk-QKYTTBYW.js +624 -0
- package/chunks/{chunk-W4UN42YP.js → chunk-QOSKUG5P.js} +77 -20
- package/chunks/{chunk-76BFY7AF.js → chunk-QTERJVPZ.js} +1 -6
- package/chunks/{chunk-WIYV7CSF.js → chunk-RB7NXUP5.js} +3 -3
- package/chunks/{chunk-HCCR43AY.js → chunk-RFIAR4YL.js} +1 -1
- package/chunks/{chunk-GMUPIMHF.js → chunk-RS5JPH6Y.js} +3 -3
- package/chunks/chunk-RS7MT2QG.js +305 -0
- package/chunks/{chunk-GXFYV7MP.js → chunk-SG2PEESS.js} +1106 -592
- package/chunks/{chunk-PUKUUASO.js → chunk-SLLG5XXE.js} +1 -1
- package/chunks/{chunk-GLH2NTPB.js → chunk-SQMTULHJ.js} +1 -1
- package/chunks/{chunk-NPMVLWYL.js → chunk-STFP7PJR.js} +6 -6
- package/chunks/chunk-SV5PQVQE.js +71 -0
- package/chunks/{chunk-HZ4M2UQD.js → chunk-TFNZCC4B.js} +1 -1
- package/chunks/{chunk-5QSVANRT.js → chunk-THNJYTA6.js} +2 -2
- package/chunks/{chunk-MRE77ST5.js → chunk-TN2BYMNH.js} +69 -2216
- package/chunks/{chunk-64GC5EMF.js → chunk-TQBA6DVX.js} +1 -1
- package/chunks/{chunk-VLHQMOZK.js → chunk-U24E4R5U.js} +3 -3
- package/chunks/{chunk-4CA4WUMS.js → chunk-UEY4AYUL.js} +2 -2
- package/chunks/{chunk-42VIHAYT.js → chunk-UGRL5B5F.js} +1 -1
- package/chunks/chunk-V7RNNPGC.js +44 -0
- package/chunks/{chunk-R3EDIMYZ.js → chunk-VGFFYNBD.js} +1 -1
- package/chunks/chunk-VIOFKPPN.js +125 -0
- package/chunks/{chunk-BEZPRKD3.js → chunk-VLDBVLC4.js} +156 -2
- package/chunks/{chunk-HD6EGS5K.js → chunk-VWLLDHAY.js} +6 -6
- package/chunks/chunk-WCDH2CRI.js +1187 -0
- package/chunks/{chunk-7SX6WZNO.js → chunk-XVVH63JG.js} +3 -3
- package/chunks/{chunk-I7RRHHYG.js → chunk-Y2ENGUD6.js} +1 -1
- package/chunks/{chunk-NALRQ3SG.js → chunk-Y5534U4G.js} +332 -116
- package/chunks/{chunk-4SJJT466.js → chunk-YDZ6J2BY.js} +72 -159
- package/chunks/{chunk-APOFULHK.js → chunk-YNBP3YSU.js} +7 -6
- package/chunks/{chunk-EFAXBOQO.js → chunk-YWEW33JY.js} +7 -7
- package/chunks/{chunk-335ECZTA.js → chunk-ZEOZL37W.js} +1 -1
- package/chunks/{chunk-DUR7BZYK.js → chunk-ZGJ4LDD2.js} +53 -28
- package/chunks/{computer-use-4PUGCUQK.js → computer-use-ET5476VX.js} +22 -22
- package/chunks/{config-utils-6PJUXHLI.js → config-utils-AHQ6YZ66.js} +3 -3
- package/chunks/{contextCommand-C57KTWFV.js → contextCommand-QIULFDBF.js} +25 -26
- package/chunks/{create-sub-session-5Q42XR6I.js → create-sub-session-BVL2ZHTM.js} +22 -22
- package/chunks/{create-sub-session-DIJOV6HV.js → create-sub-session-P26FE5GG.js} +2 -2
- package/chunks/{cron-create-X462ERYA.js → cron-create-JWFHBDRQ.js} +4 -4
- package/chunks/{cron-delete-SL5UJUM3.js → cron-delete-GDX4E26G.js} +4 -4
- package/chunks/{cron-list-3MD6SVXI.js → cron-list-USMAIWPT.js} +4 -4
- package/chunks/{daemon-ZW6LHOXT.js → daemon-EE5T3KOW.js} +169 -84
- package/chunks/{daemon-status-provider-YPV3UXHT.js → daemon-status-provider-L5UW7TGV.js} +29 -29
- package/chunks/{dist-3DQNQJ6H.js → dist-2BHAYBKP.js} +1 -1
- package/chunks/{dist-J2H4KTLB.js → dist-2MIU4UUH.js} +1 -1
- package/chunks/{dist-IEQSDXS7.js → dist-53PZYC5B.js} +2 -2
- package/chunks/{dist-NUXRQHC5.js → dist-AU7NQQRP.js} +1 -1
- package/chunks/{dist-XLE6ODMB.js → dist-FUTEXY6A.js} +1 -1
- package/chunks/{dist-IGZMVS5R.js → dist-WGTQO7F2.js} +1 -1
- package/chunks/{earlyInputCapture-5VDWSYAM.js → earlyInputCapture-ZLAL5GTE.js} +23 -23
- package/chunks/{edit-GORZTX2U.js → edit-4ZOPT6OC.js} +23 -23
- package/chunks/{enter-worktree-LJB2AW4L.js → enter-worktree-DFP5CZYS.js} +22 -22
- package/chunks/{enterPlanMode-LIIPP37T.js → enterPlanMode-7VEJ7A2A.js} +22 -22
- package/chunks/{environment-HQ2UHJ35.js → environment-KHS35XJY.js} +24 -24
- package/chunks/{errors-6JD5VMVQ.js → errors-574WBU5R.js} +24 -24
- package/chunks/{exit-worktree-IEP2WHOV.js → exit-worktree-5Q7V6D4C.js} +22 -22
- package/chunks/{exitPlanMode-U5Z6XBLO.js → exitPlanMode-SX2F6PDJ.js} +22 -22
- package/chunks/{fast-path-HFKNMP23.js → fast-path-G7BLOZVF.js} +2 -2
- package/chunks/{gemini-C2SCJH3N.js → gemini-M4JWSTGU.js} +70 -68
- package/chunks/{geminiContentGenerator-ADZTXEKV.js → geminiContentGenerator-MKXLUFUH.js} +4 -4
- package/chunks/{glob-GOAPGD6G.js → glob-FPKZY5W6.js} +22 -22
- package/chunks/{grep-HZLSTX7D.js → grep-RS22OMZG.js} +22 -22
- package/chunks/{handleAutoUpdate-UF74WGFE.js → handleAutoUpdate-RFNQ36JC.js} +27 -28
- package/chunks/{i18n-FMXIYUOC.js → i18n-MAEWSKYF.js} +23 -23
- package/chunks/{initializer-ERDBM3DU.js → initializer-T2BFZJBP.js} +28 -28
- package/chunks/{installationInfo-LROMXYLX.js → installationInfo-3UETF773.js} +25 -23
- package/chunks/{keychain-token-storage-K23CFKGN.js → keychain-token-storage-DWRJMNH3.js} +2 -2
- package/chunks/{list-6JPJROU5.js → list-FWZUKWD2.js} +30 -30
- package/chunks/{loadedSettingsAdapter-QCWYUBBF.js → loadedSettingsAdapter-3DUNHAPX.js} +27 -27
- package/chunks/{loop-wakeup-6H7OENTB.js → loop-wakeup-5GLTUBHA.js} +5 -5
- package/chunks/{ls-APTSOOS5.js → ls-FHBY3Y7I.js} +4 -4
- package/chunks/{lsp-HPACPJAN.js → lsp-B6VMEW6Y.js} +2 -2
- package/chunks/{mcp-3P3KWYWO.js → mcp-POXS7QWD.js} +27 -27
- package/chunks/{monitor-LMYKCF6R.js → monitor-2ZZC2NKH.js} +22 -22
- package/chunks/nonInteractiveCli-WSJVCB2W.js +126 -0
- package/chunks/{notebook-edit-IBEOVZ6A.js → notebook-edit-BMQLME3Q.js} +23 -23
- package/chunks/{openaiContentGenerator-42PZKET5.js → openaiContentGenerator-GOREG72R.js} +11 -11
- package/chunks/{pidfile-VTBDIGOH.js → pidfile-MVZDE5TC.js} +23 -23
- package/chunks/{processUtils-L7ZKOGDG.js → processUtils-RH5KNLDH.js} +2 -2
- package/chunks/{qwenContentGenerator-VR2CNFGI.js → qwenContentGenerator-R55BCLRI.js} +24 -24
- package/chunks/{qwenOAuth2-6LS2T3Q6.js → qwenOAuth2-QZBI2SOZ.js} +11 -11
- package/chunks/react-SG7JAQSZ.js +8 -0
- package/chunks/{read-file-VSKOE22I.js → read-file-CPS2CYYG.js} +8 -8
- package/chunks/{read-mcp-resource-C6NT52T6.js → read-mcp-resource-AKCL7I43.js} +2 -2
- package/chunks/{record-artifact-ENCU7QCL.js → record-artifact-PEUB7727.js} +2 -2
- package/chunks/resumeHistoryUtils-YD6DSYHU.js +78 -0
- package/chunks/{ripGrep-5V5FLW2A.js → ripGrep-UKGJ7RHZ.js} +22 -22
- package/chunks/{run-qwen-serve-LSOPP4R2.js → run-qwen-serve-GFKSKLF6.js} +1442 -148
- package/chunks/{runtime-LT7R4CS5.js → runtime-4KGNL3TP.js} +31 -31
- package/chunks/{scheduler-YOWQ7KZP.js → scheduler-GJ3CELWI.js} +22 -22
- package/chunks/{send-message-5GZ4FX2V.js → send-message-3RHE7HSM.js} +3 -3
- package/chunks/{serve-VWLBXKGK.js → serve-UU6Z4C7W.js} +27 -27
- package/chunks/{server-3RW3FYOH.js → server-RTJUMN24.js} +393 -256
- package/chunks/{session-ZONXFOBQ.js → session-EYD3CEB5.js} +79 -163
- package/chunks/{settings-JC3VC53L.js → settings-H5O22TGQ.js} +26 -26
- package/chunks/{shell-2NGEMAVM.js → shell-KVNHDHMT.js} +22 -22
- package/chunks/{skill-3U2T6H3E.js → skill-32525KCE.js} +10 -10
- package/chunks/{spawnChannel-QEAUPARQ.js → spawnChannel-G7DUQKHL.js} +24 -24
- package/chunks/{src-75ZPXO7B.js → src-DUFUUEHE.js} +52 -22
- package/chunks/{standalone-update-UUJWJWYY.js → standalone-update-UC6CWBLH.js} +24 -24
- package/chunks/{startInteractiveUI-V7XISPQ6.js → startInteractiveUI-A5YYAWLF.js} +5451 -2045
- package/chunks/{syntheticOutput-ULOVVLY4.js → syntheticOutput-FG5PQKIR.js} +3 -3
- package/chunks/{task-create-DUE2PMNI.js → task-create-HX32YXO7.js} +7 -7
- package/chunks/{task-list-WVPNX7BZ.js → task-list-QWSY4ZIU.js} +5 -5
- package/chunks/{task-stop-CPEQWOT6.js → task-stop-GWC6UWAL.js} +2 -2
- package/chunks/{task-update-HY2LNFFB.js → task-update-NCTAB73Q.js} +7 -7
- package/chunks/{team-create-R6AXDYPG.js → team-create-LS2Q32Y4.js} +22 -22
- package/chunks/{team-delete-JJV6IUOA.js → team-delete-KK37HTOG.js} +5 -5
- package/chunks/{team-plan-approval-O2ZPPT64.js → team-plan-approval-DWCZABX6.js} +22 -22
- package/chunks/{theme-manager-YIX2IC2D.js → theme-manager-E22CNBIL.js} +23 -23
- package/chunks/{todoWrite-JHHIDOIV.js → todoWrite-ERCAMLFS.js} +4 -4
- package/chunks/{tool-search-5IE2VO7X.js → tool-search-MHXUDFD2.js} +9 -9
- package/chunks/{total-session-admission-K6APQYEF.js → total-session-admission-KOPTGDJZ.js} +25 -25
- package/chunks/{trustedFolders-GPSSPVBF.js → trustedFolders-ANQXYAQT.js} +23 -23
- package/chunks/{update-relaunch-4BVAPX6Y.js → update-relaunch-HFGRB7PE.js} +9 -9
- package/chunks/{updateCheck-AHTHWLAM.js → updateCheck-EKIPND4B.js} +33 -26
- package/chunks/useAutoAcceptIndicator-EE22V2F5.js +80 -0
- package/chunks/{validateNonInterActiveAuth-UKAPCWDM.js → validateNonInterActiveAuth-RUICXVPH.js} +61 -63
- package/chunks/{version-EXGWKKQE.js → version-QLT755OV.js} +1 -1
- package/chunks/{web-fetch-ZDNE6FF2.js → web-fetch-DINW4Z65.js} +10 -10
- package/chunks/{workflow-G7U6OQWS.js → workflow-GPMXRWKK.js} +23 -23
- package/chunks/{workspace-providers-status-W6CEA6YM.js → workspace-providers-status-XCQKBVSX.js} +30 -30
- package/chunks/{workspace-registration-store-OGBMWCLC.js → workspace-registration-store-4I4KL7TN.js} +1 -1
- package/chunks/{workspace-registry-ZUWQM44P.js → workspace-registry-N4J57SFQ.js} +25 -25
- package/chunks/{workspace-service-UXX5P7GU.js → workspace-service-JJNJWVH3.js} +32 -32
- package/chunks/{workspace-skills-status-635B5R7N.js → workspace-skills-status-CEHLAQ2Y.js} +28 -28
- package/chunks/{write-file-DR3HN7IH.js → write-file-XRGEJRCC.js} +23 -23
- package/cli.js +11 -11
- package/package.json +3 -3
- package/web-shell/assets/{arc-_dVIKMdB.js → arc-DwJhljn9.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-MuN3nKpL.js → architectureDiagram-3BPJPVTR-qdxSRav-.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-BtmvJjzx.js → blockDiagram-GPEHLZMM-2-dKM5aM.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-Dvi58_BU.js → c4Diagram-AAUBKEIU-Dt_Nu2HD.js} +1 -1
- package/web-shell/assets/channel-C6uyh95L.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-YqxOVhS1.js → chunk-2J33WTMH-CBCeeNfD.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-DoBgbC9z.js → chunk-4BX2VUAB-DPAzjqNs.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-3NEQrBAr.js → chunk-55IACEB6-yrqyxvIK.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-DrCZQxp0.js → chunk-727SXJPM-DguD_BBT.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-m_g3zjgv.js → chunk-AQP2D5EJ-KRUOG9v0.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-D1_crABJ.js → chunk-FMBD7UC4-C0lilT2U.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-BdhgVtBx.js → chunk-ND2GUHAM-DG9epIWK.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-BlmThhm-.js → chunk-QZHKN3VN-PdJDkYHw.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-Cv8Ulf-B.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-Cv8Ulf-B.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-Cbjm_00Z.js → cose-bilkent-S5V4N54A-BAOPPuJm.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-C39QNVgC.js → dagre-BM42HDAG-CDHJv82_.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-DNXSAixC.js → diagram-2AECGRRQ-C_hkG5fN.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-BCbGUPEA.js → diagram-5GNKFQAL-e9zo_eKt.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-1eujKSDC.js → diagram-KO2AKTUF-BFN41SCb.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-DUMKXgql.js → diagram-LMA3HP47-DG72N0W0.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-BFktU3_u.js → diagram-OG6HWLK6-Dkmp-tdv.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-BvJC7DLk.js → erDiagram-TEJ5UH35-CyS0GnQV.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-Cgu3PlOt.js → flowDiagram-I6XJVG4X-Cg1SRmzV.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-DLNXN5Xh.js → ganttDiagram-6RSMTGT7-CoNkSLs3.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-BQFRDv6R.js → gitGraphDiagram-PVQCEYII-DEA6GWPa.js} +1 -1
- package/web-shell/assets/index-B49xd8_A.css +5 -0
- package/web-shell/assets/{index-CdC3pjP3.js → index-CMaZgs6B.js} +1 -1
- package/web-shell/assets/index-D-cDAZgO.js +1192 -0
- package/web-shell/assets/{infoDiagram-5YYISTIA-DT2mOSvp.js → infoDiagram-5YYISTIA-BZshyoGT.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-9fy_K4bd.js → ishikawaDiagram-YF4QCWOH-CT2ssZqC.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-CoGSEuhE.js → journeyDiagram-JHISSGLW-BtMQ0rDG.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-BP9hHYIj.js → kanban-definition-UN3LZRKU-CoDbK5Db.js} +1 -1
- package/web-shell/assets/{linear-uIroDsmp.js → linear-CwhZ6u7u.js} +1 -1
- package/web-shell/assets/{mermaid.core-BUwoStsA.js → mermaid.core-C9nn0nrr.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-DZB-FWim.js → mindmap-definition-RKZ34NQL-BXUbjTeL.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-YPptloKl.js → pieDiagram-4H26LBE5-JddiYlWQ.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-dgk3DSzm.js → quadrantDiagram-W4KKPZXB-DK5HKzXO.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-BH2En2i9.js → requirementDiagram-4Y6WPE33-Y-uipa_6.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-BB98feeI.js → sankeyDiagram-5OEKKPKP-BbWeqo8H.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-CunAIGh8.js → sequenceDiagram-3UESZ5HK-tX2gOoo5.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-DTJs_-I2.js → stateDiagram-AJRCARHV-CACN457G.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DaUeO2zt.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-Cd4AN7O0.js → timeline-definition-PNZ67QCA-DnHWKSOq.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-xIG-rUU9.js → vennDiagram-CIIHVFJN-BO8Yl2FG.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-D1UyjIcG.js → wardley-L42UT6IY-1NMqqrBi.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-BVM0Mb99.js → wardleyDiagram-YWT4CUSO-C3eWgIvD.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-BX31JDSz.js → xychartDiagram-2RQKCTM6-D0h8FgFX.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/chunk-EDFD7VOX.js +0 -368
- package/chunks/chunk-GFYFLDEG.js +0 -709
- package/chunks/chunk-LUJQUNKY.js +0 -3288
- package/chunks/nonInteractiveCli-YURFHZV5.js +0 -129
- package/web-shell/assets/channel-Bi5TehaT.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-BKhhRdd1.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BKhhRdd1.js +0 -1
- package/web-shell/assets/index-C_ouplMQ.js +0 -1187
- package/web-shell/assets/index-XGDFJE-X.css +0 -5
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DrfFMYta.js +0 -1
|
@@ -1036,28 +1036,21 @@ var DaemonClient = class {
|
|
|
1036
1036
|
async workspaceAcpPreheat(timeoutMs) {
|
|
1037
1037
|
const serverBudgetMs = timeoutMs ?? 5e3;
|
|
1038
1038
|
const suffix = timeoutMs !== void 0 ? `?timeoutMs=${encodeURIComponent(timeoutMs)}` : "";
|
|
1039
|
-
return await this.
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
},
|
|
1048
|
-
serverBudgetMs + 2e3
|
|
1039
|
+
return await this.jsonRequest(
|
|
1040
|
+
`/workspace/acp/preheat${suffix}`,
|
|
1041
|
+
"POST /workspace/acp/preheat",
|
|
1042
|
+
{
|
|
1043
|
+
method: "POST",
|
|
1044
|
+
timeoutMs: serverBudgetMs + 2e3,
|
|
1045
|
+
mode: "rest"
|
|
1046
|
+
}
|
|
1049
1047
|
);
|
|
1050
1048
|
}
|
|
1051
1049
|
async workspaceAcpStatus() {
|
|
1052
|
-
return await this.
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
if (!res.ok) {
|
|
1057
|
-
throw await this.failOnError(res, "GET /workspace/acp/status");
|
|
1058
|
-
}
|
|
1059
|
-
return await res.json();
|
|
1060
|
-
}
|
|
1050
|
+
return await this.jsonRequest(
|
|
1051
|
+
"/workspace/acp/status",
|
|
1052
|
+
"GET /workspace/acp/status",
|
|
1053
|
+
{ mode: "rest" }
|
|
1061
1054
|
);
|
|
1062
1055
|
}
|
|
1063
1056
|
async workspaceProviders() {
|
|
@@ -1742,7 +1735,8 @@ var DaemonClient = class {
|
|
|
1742
1735
|
...req.sessionScope !== void 0 ? { sessionScope: req.sessionScope } : {},
|
|
1743
1736
|
...req.approvalMode !== void 0 ? { approvalMode: req.approvalMode } : {},
|
|
1744
1737
|
...req.sourceType !== void 0 ? { sourceType: req.sourceType } : {},
|
|
1745
|
-
...req.sourceId !== void 0 ? { sourceId: req.sourceId } : {}
|
|
1738
|
+
...req.sourceId !== void 0 ? { sourceId: req.sourceId } : {},
|
|
1739
|
+
...req.worktree !== void 0 ? { worktree: req.worktree } : {}
|
|
1746
1740
|
})
|
|
1747
1741
|
},
|
|
1748
1742
|
async (res) => {
|
|
@@ -3456,10 +3450,11 @@ var WorkspaceDaemonClient = class {
|
|
|
3456
3450
|
opts
|
|
3457
3451
|
);
|
|
3458
3452
|
}
|
|
3459
|
-
workspaceGit() {
|
|
3453
|
+
workspaceGit(cwd) {
|
|
3454
|
+
const suffix = cwd ? `/git?cwd=${encodeURIComponent(cwd)}` : "/git";
|
|
3460
3455
|
return this.client.workspaceJsonRequest(
|
|
3461
3456
|
this.workspaceSelector,
|
|
3462
|
-
|
|
3457
|
+
suffix,
|
|
3463
3458
|
"GET /workspaces/:workspace/git",
|
|
3464
3459
|
{ mode: "rest" }
|
|
3465
3460
|
);
|
|
@@ -4071,6 +4066,9 @@ var DaemonSessionClient = class _DaemonSessionClient {
|
|
|
4071
4066
|
get clientId() {
|
|
4072
4067
|
return this.session.clientId;
|
|
4073
4068
|
}
|
|
4069
|
+
get worktree() {
|
|
4070
|
+
return this.session.worktree;
|
|
4071
|
+
}
|
|
4074
4072
|
get lastEventId() {
|
|
4075
4073
|
return this.lastSeenEventId;
|
|
4076
4074
|
}
|
|
@@ -6257,9 +6255,11 @@ function normalizeMidTurnMessageInjected(event, base) {
|
|
|
6257
6255
|
__name(normalizeMidTurnMessageInjected, "normalizeMidTurnMessageInjected");
|
|
6258
6256
|
function createBase(event, opts) {
|
|
6259
6257
|
const serverTimestamp = extractServerTimestamp(event);
|
|
6258
|
+
const sourceRecordIds = extractSourceRecordIds(event);
|
|
6260
6259
|
return {
|
|
6261
6260
|
...event.id !== void 0 ? { eventId: event.id } : {},
|
|
6262
6261
|
...serverTimestamp !== void 0 ? { serverTimestamp } : {},
|
|
6262
|
+
...sourceRecordIds ? { sourceRecordIds } : {},
|
|
6263
6263
|
...event.originatorClientId ? { originatorClientId: event.originatorClientId } : {},
|
|
6264
6264
|
...opts.includeRawEvent ? { rawEvent: { ...event, data: redactSensitiveFields(event.data) } } : {}
|
|
6265
6265
|
};
|
|
@@ -6448,9 +6448,26 @@ function extractParentToolCallId(update) {
|
|
|
6448
6448
|
__name(extractParentToolCallId, "extractParentToolCallId");
|
|
6449
6449
|
function extractUpdateMeta(update) {
|
|
6450
6450
|
const meta = isRecord2(update["_meta"]) ? update["_meta"] : void 0;
|
|
6451
|
-
|
|
6451
|
+
if (!meta) return void 0;
|
|
6452
|
+
const { qwenTranscript: _qwenTranscript, ...displayMeta } = meta;
|
|
6453
|
+
return Object.keys(displayMeta).length > 0 ? displayMeta : void 0;
|
|
6452
6454
|
}
|
|
6453
6455
|
__name(extractUpdateMeta, "extractUpdateMeta");
|
|
6456
|
+
function extractSourceRecordIds(event) {
|
|
6457
|
+
if (!isRecord2(event.data)) return void 0;
|
|
6458
|
+
const update = getSessionUpdatePayload(event.data);
|
|
6459
|
+
const meta = update && isRecord2(update["_meta"]) ? update["_meta"] : void 0;
|
|
6460
|
+
const transcript = meta && isRecord2(meta["qwenTranscript"]) ? meta["qwenTranscript"] : void 0;
|
|
6461
|
+
const values = transcript?.["sourceRecordIds"];
|
|
6462
|
+
if (!Array.isArray(values)) return void 0;
|
|
6463
|
+
const ids = [
|
|
6464
|
+
...new Set(
|
|
6465
|
+
values.filter((value) => typeof value === "string")
|
|
6466
|
+
)
|
|
6467
|
+
];
|
|
6468
|
+
return ids.length > 0 ? ids : void 0;
|
|
6469
|
+
}
|
|
6470
|
+
__name(extractSourceRecordIds, "extractSourceRecordIds");
|
|
6454
6471
|
function extractAssistantUsage(update) {
|
|
6455
6472
|
const meta = isRecord2(update["_meta"]) ? update["_meta"] : void 0;
|
|
6456
6473
|
const usage = meta && isRecord2(meta["usage"]) ? meta["usage"] : void 0;
|
|
@@ -6515,8 +6532,9 @@ __name(normalizeToolUpdate, "normalizeToolUpdate");
|
|
|
6515
6532
|
function normalizePlanUpdate(update, base) {
|
|
6516
6533
|
const entries = Array.isArray(update["entries"]) ? update["entries"] : [];
|
|
6517
6534
|
const contentText = capDetails(formatPlanEntries(entries));
|
|
6518
|
-
const planCallId = base.eventId !== void 0 ? `${DAEMON_PLAN_TOOL_CALL_ID}-${base.eventId}` : DAEMON_PLAN_TOOL_CALL_ID;
|
|
6519
6535
|
const meta = isRecord2(update["_meta"]) ? update["_meta"] : void 0;
|
|
6536
|
+
const transcript = meta && isRecord2(meta["qwenTranscript"]) ? meta["qwenTranscript"] : void 0;
|
|
6537
|
+
const planCallId = getString2(transcript, "planToolCallId") ?? (base.eventId !== void 0 ? `${DAEMON_PLAN_TOOL_CALL_ID}-${base.eventId}` : DAEMON_PLAN_TOOL_CALL_ID);
|
|
6520
6538
|
const stats = meta && isRecord2(meta["stats"]) ? meta["stats"] : void 0;
|
|
6521
6539
|
return {
|
|
6522
6540
|
...base,
|
|
@@ -7581,24 +7599,27 @@ var TRIMMED_PERMISSION_BLOCK_ID = "__trimmed_permission_block__";
|
|
|
7581
7599
|
var MAX_TEXT_BLOCK_LENGTH = 1e5;
|
|
7582
7600
|
var TEXT_TRUNCATED_SUFFIX = "\n[truncated]\n";
|
|
7583
7601
|
var MAX_CLONE_DEPTH = 16;
|
|
7602
|
+
var truncationCallbacks = /* @__PURE__ */ new WeakMap();
|
|
7584
7603
|
var timestampFormatterCache = /* @__PURE__ */ new Map();
|
|
7585
7604
|
function createDaemonTranscriptState(opts = {}) {
|
|
7586
|
-
|
|
7605
|
+
const state = {
|
|
7587
7606
|
blocks: [],
|
|
7588
|
-
blockIndexById:
|
|
7589
|
-
toolBlockByCallId:
|
|
7590
|
-
trimmedToolNotificationByCallId:
|
|
7591
|
-
permissionBlockByRequestId:
|
|
7592
|
-
activeAssistantBlockByParent:
|
|
7593
|
-
activeThoughtBlockByParent:
|
|
7607
|
+
blockIndexById: createIndex(),
|
|
7608
|
+
toolBlockByCallId: createIndex(),
|
|
7609
|
+
trimmedToolNotificationByCallId: createIndex(),
|
|
7610
|
+
permissionBlockByRequestId: createIndex(),
|
|
7611
|
+
activeAssistantBlockByParent: createIndex(),
|
|
7612
|
+
activeThoughtBlockByParent: createIndex(),
|
|
7594
7613
|
// PR-E sidechannel: track current tool / approval mode / progress
|
|
7595
|
-
toolProgress:
|
|
7614
|
+
toolProgress: createIndex(),
|
|
7596
7615
|
awaitingResync: false,
|
|
7597
7616
|
resyncRequiredCount: 0,
|
|
7598
7617
|
nextOrdinal: 1,
|
|
7599
7618
|
now: opts.now ?? Date.now(),
|
|
7600
7619
|
maxBlocks: opts.maxBlocks ?? DEFAULT_MAX_BLOCKS
|
|
7601
7620
|
};
|
|
7621
|
+
if (opts.onTruncation) truncationCallbacks.set(state, opts.onTruncation);
|
|
7622
|
+
return state;
|
|
7602
7623
|
}
|
|
7603
7624
|
__name(createDaemonTranscriptState, "createDaemonTranscriptState");
|
|
7604
7625
|
var IN_FLIGHT_TOOL_STATUSES = /* @__PURE__ */ new Set([
|
|
@@ -7654,7 +7675,7 @@ function reduceDaemonTranscriptEvents(state, events, opts = {}) {
|
|
|
7654
7675
|
}
|
|
7655
7676
|
__name(reduceDaemonTranscriptEvents, "reduceDaemonTranscriptEvents");
|
|
7656
7677
|
function rebuildDaemonTranscriptBlockIndex(blocks) {
|
|
7657
|
-
const blockIndexById =
|
|
7678
|
+
const blockIndexById = createIndex();
|
|
7658
7679
|
blocks.forEach((block, index) => {
|
|
7659
7680
|
blockIndexById[block.id] = index;
|
|
7660
7681
|
});
|
|
@@ -7687,11 +7708,17 @@ function applyDaemonTranscriptEvent(next, event) {
|
|
|
7687
7708
|
appendTextDelta(next, "user", "activeUserBlockId", event.text, event);
|
|
7688
7709
|
break;
|
|
7689
7710
|
case "user.image.delta": {
|
|
7690
|
-
|
|
7711
|
+
const activeUserIndex = next.activeUserBlockId ? next.blockIndexById[next.activeUserBlockId] : void 0;
|
|
7712
|
+
const activeUser = activeUserIndex !== void 0 ? next.blocks[activeUserIndex] : void 0;
|
|
7713
|
+
if (activeUser?.kind !== "user" || !stringArraysEqual(activeUser.sourceRecordIds, event.sourceRecordIds)) {
|
|
7691
7714
|
const block = createTextBlock(
|
|
7692
7715
|
next,
|
|
7693
7716
|
"user",
|
|
7694
|
-
""
|
|
7717
|
+
"",
|
|
7718
|
+
event.eventId,
|
|
7719
|
+
event.serverTimestamp,
|
|
7720
|
+
void 0,
|
|
7721
|
+
event.sourceRecordIds
|
|
7695
7722
|
);
|
|
7696
7723
|
block.images = [{ data: event.data, mimeType: event.mimeType }];
|
|
7697
7724
|
appendBlock(next, block);
|
|
@@ -7919,7 +7946,7 @@ function appendTextDelta(state, kind, activeKey, text, event) {
|
|
|
7919
7946
|
const effectiveId = parentMap && parentId != null ? parentMap[parentId] : state[activeKey];
|
|
7920
7947
|
const existing = getWritableBlockById(state, effectiveId);
|
|
7921
7948
|
if (existing && existing.kind === kind && canMergeTextDelta(existing, event)) {
|
|
7922
|
-
existing.text = appendBoundedText(existing
|
|
7949
|
+
existing.text = appendBoundedText(state, existing, text);
|
|
7923
7950
|
existing.updatedAt = state.now;
|
|
7924
7951
|
if (event.eventId !== void 0) existing.eventId = event.eventId;
|
|
7925
7952
|
if (event.serverTimestamp !== void 0) {
|
|
@@ -7928,18 +7955,23 @@ function appendTextDelta(state, kind, activeKey, text, event) {
|
|
|
7928
7955
|
if ("meta" in event && event.meta) {
|
|
7929
7956
|
existing.meta = { ...existing.meta, ...event.meta };
|
|
7930
7957
|
}
|
|
7931
|
-
if (kind
|
|
7958
|
+
if (kind !== "user") existing.streaming = true;
|
|
7932
7959
|
return;
|
|
7933
7960
|
}
|
|
7961
|
+
if (existing?.kind === kind && kind !== "user") {
|
|
7962
|
+
existing.streaming = false;
|
|
7963
|
+
existing.updatedAt = state.now;
|
|
7964
|
+
}
|
|
7934
7965
|
const block = createTextBlock(
|
|
7935
7966
|
state,
|
|
7936
7967
|
kind,
|
|
7937
7968
|
text,
|
|
7938
7969
|
event.eventId,
|
|
7939
7970
|
event.serverTimestamp,
|
|
7940
|
-
"meta" in event ? event.meta : void 0
|
|
7971
|
+
"meta" in event ? event.meta : void 0,
|
|
7972
|
+
event.sourceRecordIds
|
|
7941
7973
|
);
|
|
7942
|
-
if (kind
|
|
7974
|
+
if (kind !== "user") block.streaming = true;
|
|
7943
7975
|
if (kind === "thought") block.collapsed = true;
|
|
7944
7976
|
if (parentId != null) {
|
|
7945
7977
|
block.parentToolCallId = parentId;
|
|
@@ -7969,6 +8001,9 @@ function canMergeTextDelta(existing, event) {
|
|
|
7969
8001
|
return false;
|
|
7970
8002
|
}
|
|
7971
8003
|
if (existing.meta?.qwenDiscreteMessage === true) return false;
|
|
8004
|
+
if (!stringArraysEqual(existing.sourceRecordIds, event.sourceRecordIds)) {
|
|
8005
|
+
return false;
|
|
8006
|
+
}
|
|
7972
8007
|
return !("meta" in event) || event.meta?.qwenDiscreteMessage !== true;
|
|
7973
8008
|
}
|
|
7974
8009
|
__name(canMergeTextDelta, "canMergeTextDelta");
|
|
@@ -8021,6 +8056,10 @@ function upsertToolBlock(state, event) {
|
|
|
8021
8056
|
if (event.locations !== void 0) existing.locations = event.locations;
|
|
8022
8057
|
if (event.rawInput !== void 0) existing.rawInput = event.rawInput;
|
|
8023
8058
|
if (event.rawOutput !== void 0) existing.rawOutput = event.rawOutput;
|
|
8059
|
+
existing.sourceRecordIds = unionStrings(
|
|
8060
|
+
existing.sourceRecordIds,
|
|
8061
|
+
event.sourceRecordIds
|
|
8062
|
+
);
|
|
8024
8063
|
if (event.toolName) existing.toolName = event.toolName;
|
|
8025
8064
|
if (event.toolKind) existing.toolKind = event.toolKind;
|
|
8026
8065
|
if (event.parentToolCallId && !existing.parentToolCallId) {
|
|
@@ -8055,6 +8094,7 @@ function upsertToolBlock(state, event) {
|
|
|
8055
8094
|
updatedAt: state.now,
|
|
8056
8095
|
...event.eventId !== void 0 ? { eventId: event.eventId } : {},
|
|
8057
8096
|
...event.serverTimestamp !== void 0 ? { serverTimestamp: event.serverTimestamp } : {},
|
|
8097
|
+
...event.sourceRecordIds ? { sourceRecordIds: [...event.sourceRecordIds] } : {},
|
|
8058
8098
|
...event.details ? { details: event.details } : {},
|
|
8059
8099
|
...event.content !== void 0 ? { content: event.content } : {},
|
|
8060
8100
|
...event.locations !== void 0 ? { locations: event.locations } : {},
|
|
@@ -8121,16 +8161,17 @@ function appendShellBlock(state, event) {
|
|
|
8121
8161
|
if (last?.kind === "shell" && last.stream === event.stream) {
|
|
8122
8162
|
const writable = getWritableBlockById(state, last.id);
|
|
8123
8163
|
if (writable?.kind === "shell") {
|
|
8124
|
-
writable.text = appendBoundedText(writable
|
|
8164
|
+
writable.text = appendBoundedText(state, writable, event.text);
|
|
8125
8165
|
writable.updatedAt = state.now;
|
|
8126
8166
|
if (event.eventId !== void 0) writable.eventId = event.eventId;
|
|
8127
8167
|
}
|
|
8128
8168
|
return;
|
|
8129
8169
|
}
|
|
8170
|
+
const blockId = allocateBlockId(state, "shell");
|
|
8130
8171
|
const block = {
|
|
8131
|
-
id:
|
|
8172
|
+
id: blockId,
|
|
8132
8173
|
kind: "shell",
|
|
8133
|
-
text: truncateText(event.text),
|
|
8174
|
+
text: truncateText(state, blockId, void 0, event.text),
|
|
8134
8175
|
clientReceivedAt: state.now,
|
|
8135
8176
|
createdAt: state.now,
|
|
8136
8177
|
updatedAt: state.now,
|
|
@@ -8148,7 +8189,7 @@ function appendUserShellBlock(state, event) {
|
|
|
8148
8189
|
if (last?.kind === "user_shell" && last.stream === event.stream && !state.pendingUserShellCommand) {
|
|
8149
8190
|
const writable = getWritableBlockById(state, last.id);
|
|
8150
8191
|
if (writable?.kind === "user_shell") {
|
|
8151
|
-
writable.text = appendBoundedText(writable
|
|
8192
|
+
writable.text = appendBoundedText(state, writable, event.text);
|
|
8152
8193
|
writable.updatedAt = state.now;
|
|
8153
8194
|
if (event.eventId !== void 0) writable.eventId = event.eventId;
|
|
8154
8195
|
}
|
|
@@ -8156,10 +8197,11 @@ function appendUserShellBlock(state, event) {
|
|
|
8156
8197
|
}
|
|
8157
8198
|
const pending = state.pendingUserShellCommand;
|
|
8158
8199
|
const previous = last?.kind === "user_shell" ? last : void 0;
|
|
8200
|
+
const blockId = allocateBlockId(state, "user-shell");
|
|
8159
8201
|
const block = {
|
|
8160
|
-
id:
|
|
8202
|
+
id: blockId,
|
|
8161
8203
|
kind: "user_shell",
|
|
8162
|
-
text: truncateText(event.text),
|
|
8204
|
+
text: truncateText(state, blockId, void 0, event.text),
|
|
8163
8205
|
command: pending?.command ?? previous?.command ?? "",
|
|
8164
8206
|
...pending?.cwd || previous?.cwd ? { cwd: pending?.cwd ?? previous?.cwd } : {},
|
|
8165
8207
|
clientReceivedAt: state.now,
|
|
@@ -8242,10 +8284,11 @@ function resolvePermissionBlock(state, event) {
|
|
|
8242
8284
|
}
|
|
8243
8285
|
__name(resolvePermissionBlock, "resolvePermissionBlock");
|
|
8244
8286
|
function appendStatusBlock(state, kind, text, event, opts = {}) {
|
|
8287
|
+
const blockId = allocateBlockId(state, kind);
|
|
8245
8288
|
const block = {
|
|
8246
|
-
id:
|
|
8289
|
+
id: blockId,
|
|
8247
8290
|
kind,
|
|
8248
|
-
text: truncateText(text),
|
|
8291
|
+
text: truncateText(state, blockId, void 0, text),
|
|
8249
8292
|
clientReceivedAt: state.now,
|
|
8250
8293
|
createdAt: state.now,
|
|
8251
8294
|
updatedAt: state.now,
|
|
@@ -8285,22 +8328,24 @@ function appendPromptCancelledBlock(state, event) {
|
|
|
8285
8328
|
clearActiveText(state);
|
|
8286
8329
|
}
|
|
8287
8330
|
__name(appendPromptCancelledBlock, "appendPromptCancelledBlock");
|
|
8288
|
-
function createTextBlock(state, kind, text, eventId, serverTimestamp, meta) {
|
|
8331
|
+
function createTextBlock(state, kind, text, eventId, serverTimestamp, meta, sourceRecordIds) {
|
|
8332
|
+
const blockId = allocateBlockId(state, kind);
|
|
8289
8333
|
return {
|
|
8290
|
-
id:
|
|
8334
|
+
id: blockId,
|
|
8291
8335
|
kind,
|
|
8292
|
-
text: truncateText(text),
|
|
8336
|
+
text: truncateText(state, blockId, sourceRecordIds, text),
|
|
8293
8337
|
clientReceivedAt: state.now,
|
|
8294
8338
|
createdAt: state.now,
|
|
8295
8339
|
updatedAt: state.now,
|
|
8296
8340
|
...eventId !== void 0 ? { eventId } : {},
|
|
8297
8341
|
...serverTimestamp !== void 0 ? { serverTimestamp } : {},
|
|
8342
|
+
...sourceRecordIds ? { sourceRecordIds: [...sourceRecordIds] } : {},
|
|
8298
8343
|
...meta ? { meta: { ...meta } } : {}
|
|
8299
8344
|
};
|
|
8300
8345
|
}
|
|
8301
8346
|
__name(createTextBlock, "createTextBlock");
|
|
8302
8347
|
function cloneTranscriptState(state, opts) {
|
|
8303
|
-
|
|
8348
|
+
const next = {
|
|
8304
8349
|
...state,
|
|
8305
8350
|
now: opts.now ?? Date.now(),
|
|
8306
8351
|
maxBlocks: opts.maxBlocks ?? state.maxBlocks,
|
|
@@ -8316,21 +8361,25 @@ function cloneTranscriptState(state, opts) {
|
|
|
8316
8361
|
// consumers + the WeakMap caches want.
|
|
8317
8362
|
blocks: state.blocks,
|
|
8318
8363
|
blockIndexById: state.blockIndexById,
|
|
8319
|
-
toolBlockByCallId:
|
|
8320
|
-
activeAssistantBlockByParent:
|
|
8321
|
-
|
|
8322
|
-
|
|
8323
|
-
|
|
8324
|
-
|
|
8325
|
-
|
|
8364
|
+
toolBlockByCallId: createIndex(state.toolBlockByCallId),
|
|
8365
|
+
activeAssistantBlockByParent: createIndex(
|
|
8366
|
+
state.activeAssistantBlockByParent
|
|
8367
|
+
),
|
|
8368
|
+
activeThoughtBlockByParent: createIndex(state.activeThoughtBlockByParent),
|
|
8369
|
+
trimmedToolNotificationByCallId: createIndex(
|
|
8370
|
+
state.trimmedToolNotificationByCallId
|
|
8371
|
+
),
|
|
8372
|
+
permissionBlockByRequestId: createIndex(state.permissionBlockByRequestId),
|
|
8326
8373
|
// Deep-clone the inner progress records.
|
|
8327
8374
|
// The outer spread alone shares `{ ratio?, step? }` references between
|
|
8328
8375
|
// snapshots — once `tool.progress` event handlers start mutating in
|
|
8329
8376
|
// place, the prior snapshot leaks. Pre-empt that here; cost is bounded
|
|
8330
8377
|
// by `Object.keys(state.toolProgress).length` which is small (only
|
|
8331
8378
|
// in-flight tools).
|
|
8332
|
-
toolProgress:
|
|
8333
|
-
Object.
|
|
8379
|
+
toolProgress: createIndex(
|
|
8380
|
+
Object.fromEntries(
|
|
8381
|
+
Object.entries(state.toolProgress).map(([k, v]) => [k, { ...v }])
|
|
8382
|
+
)
|
|
8334
8383
|
),
|
|
8335
8384
|
lastResyncRequired: state.lastResyncRequired !== void 0 ? { ...state.lastResyncRequired } : void 0,
|
|
8336
8385
|
// Share the reference — the reducer assigns a new object when
|
|
@@ -8340,10 +8389,14 @@ function cloneTranscriptState(state, opts) {
|
|
|
8340
8389
|
// that don't touch the suggestion.
|
|
8341
8390
|
lastFollowupSuggestion: state.lastFollowupSuggestion
|
|
8342
8391
|
};
|
|
8392
|
+
const onTruncation = opts.onTruncation ?? truncationCallbacks.get(state);
|
|
8393
|
+
if (onTruncation) truncationCallbacks.set(next, onTruncation);
|
|
8394
|
+
return next;
|
|
8343
8395
|
}
|
|
8344
8396
|
__name(cloneTranscriptState, "cloneTranscriptState");
|
|
8345
8397
|
function trimTranscriptState(state) {
|
|
8346
8398
|
if (state.blocks.length <= state.maxBlocks) return state;
|
|
8399
|
+
truncationCallbacks.get(state)?.({ kind: "blocks" });
|
|
8347
8400
|
const blocks = state.blocks.slice(-state.maxBlocks);
|
|
8348
8401
|
const keptIds = new Set(blocks.map((block) => block.id));
|
|
8349
8402
|
state.blocks = blocks;
|
|
@@ -8413,7 +8466,7 @@ var ownedBlocks = /* @__PURE__ */ new WeakMap();
|
|
|
8413
8466
|
function takeBlocksOwnership(state) {
|
|
8414
8467
|
if (ownedBlocks.get(state) === state.blocks) return;
|
|
8415
8468
|
state.blocks = [...state.blocks];
|
|
8416
|
-
state.blockIndexById =
|
|
8469
|
+
state.blockIndexById = createIndex(state.blockIndexById);
|
|
8417
8470
|
ownedBlocks.set(state, state.blocks);
|
|
8418
8471
|
}
|
|
8419
8472
|
__name(takeBlocksOwnership, "takeBlocksOwnership");
|
|
@@ -8443,14 +8496,14 @@ function truncateTranscriptBeforeBlock(state, blockIndex) {
|
|
|
8443
8496
|
__name(truncateTranscriptBeforeBlock, "truncateTranscriptBeforeBlock");
|
|
8444
8497
|
function rebuildTranscriptIndexes(state) {
|
|
8445
8498
|
state.blockIndexById = rebuildDaemonTranscriptBlockIndex(state.blocks);
|
|
8446
|
-
state.toolBlockByCallId =
|
|
8447
|
-
state.permissionBlockByRequestId =
|
|
8448
|
-
state.trimmedToolNotificationByCallId =
|
|
8499
|
+
state.toolBlockByCallId = createIndex();
|
|
8500
|
+
state.permissionBlockByRequestId = createIndex();
|
|
8501
|
+
state.trimmedToolNotificationByCallId = createIndex();
|
|
8449
8502
|
state.activeUserBlockId = void 0;
|
|
8450
8503
|
state.activeAssistantBlockId = void 0;
|
|
8451
8504
|
state.activeThoughtBlockId = void 0;
|
|
8452
|
-
state.activeAssistantBlockByParent =
|
|
8453
|
-
state.activeThoughtBlockByParent =
|
|
8505
|
+
state.activeAssistantBlockByParent = createIndex();
|
|
8506
|
+
state.activeThoughtBlockByParent = createIndex();
|
|
8454
8507
|
state.currentToolCallId = void 0;
|
|
8455
8508
|
state.pendingUserShellCommand = void 0;
|
|
8456
8509
|
state.lastFollowupSuggestion = void 0;
|
|
@@ -8526,13 +8579,18 @@ function clearActiveText(state, parentToolCallId) {
|
|
|
8526
8579
|
}
|
|
8527
8580
|
}
|
|
8528
8581
|
__name(clearActiveText, "clearActiveText");
|
|
8529
|
-
function appendBoundedText(
|
|
8530
|
-
|
|
8531
|
-
|
|
8582
|
+
function appendBoundedText(state, block, text) {
|
|
8583
|
+
const existing = "text" in block ? block.text : "";
|
|
8584
|
+
if (existing.length >= MAX_TEXT_BLOCK_LENGTH) {
|
|
8585
|
+
if (text) reportTextTruncation(state, block.id, block.sourceRecordIds);
|
|
8586
|
+
return existing;
|
|
8587
|
+
}
|
|
8588
|
+
return truncateText(state, block.id, block.sourceRecordIds, existing + text);
|
|
8532
8589
|
}
|
|
8533
8590
|
__name(appendBoundedText, "appendBoundedText");
|
|
8534
|
-
function truncateText(text) {
|
|
8591
|
+
function truncateText(state, blockId, sourceRecordIds, text) {
|
|
8535
8592
|
if (text.length <= MAX_TEXT_BLOCK_LENGTH) return text;
|
|
8593
|
+
reportTextTruncation(state, blockId, sourceRecordIds);
|
|
8536
8594
|
const keepLength = Math.max(
|
|
8537
8595
|
0,
|
|
8538
8596
|
MAX_TEXT_BLOCK_LENGTH - TEXT_TRUNCATED_SUFFIX.length
|
|
@@ -8540,6 +8598,29 @@ function truncateText(text) {
|
|
|
8540
8598
|
return `${text.slice(0, keepLength)}${TEXT_TRUNCATED_SUFFIX}`;
|
|
8541
8599
|
}
|
|
8542
8600
|
__name(truncateText, "truncateText");
|
|
8601
|
+
function reportTextTruncation(state, blockId, sourceRecordIds) {
|
|
8602
|
+
truncationCallbacks.get(state)?.({
|
|
8603
|
+
kind: "text",
|
|
8604
|
+
blockId,
|
|
8605
|
+
sourceRecordIds
|
|
8606
|
+
});
|
|
8607
|
+
}
|
|
8608
|
+
__name(reportTextTruncation, "reportTextTruncation");
|
|
8609
|
+
function createIndex(source) {
|
|
8610
|
+
return Object.assign(/* @__PURE__ */ Object.create(null), source);
|
|
8611
|
+
}
|
|
8612
|
+
__name(createIndex, "createIndex");
|
|
8613
|
+
function stringArraysEqual(left, right) {
|
|
8614
|
+
if (left === right) return true;
|
|
8615
|
+
if (!left || !right || left.length !== right.length) return false;
|
|
8616
|
+
return left.every((value, index) => value === right[index]);
|
|
8617
|
+
}
|
|
8618
|
+
__name(stringArraysEqual, "stringArraysEqual");
|
|
8619
|
+
function unionStrings(left, right) {
|
|
8620
|
+
if (!left && !right) return void 0;
|
|
8621
|
+
return [.../* @__PURE__ */ new Set([...left ?? [], ...right ?? []])];
|
|
8622
|
+
}
|
|
8623
|
+
__name(unionStrings, "unionStrings");
|
|
8543
8624
|
function pruneTrimmedToolIndexes(state) {
|
|
8544
8625
|
const maxTrimmedEntries = Math.max(0, state.maxBlocks);
|
|
8545
8626
|
const trimmedToolCallIds = Object.entries(state.toolBlockByCallId).filter(([, blockId]) => blockId === TRIMMED_TOOL_BLOCK_ID).map(([toolCallId]) => toolCallId);
|
|
@@ -8801,25 +8882,29 @@ function createState(seed) {
|
|
|
8801
8882
|
...seed,
|
|
8802
8883
|
blocks,
|
|
8803
8884
|
blockIndexById: rebuildDaemonTranscriptBlockIndex(blocks),
|
|
8804
|
-
toolBlockByCallId:
|
|
8805
|
-
trimmedToolNotificationByCallId:
|
|
8806
|
-
|
|
8807
|
-
|
|
8808
|
-
permissionBlockByRequestId:
|
|
8809
|
-
|
|
8810
|
-
|
|
8811
|
-
toolProgress:
|
|
8812
|
-
activeAssistantBlockByParent:
|
|
8813
|
-
|
|
8814
|
-
|
|
8815
|
-
activeThoughtBlockByParent:
|
|
8816
|
-
|
|
8817
|
-
|
|
8885
|
+
toolBlockByCallId: createNullIndex(seed.toolBlockByCallId),
|
|
8886
|
+
trimmedToolNotificationByCallId: createNullIndex(
|
|
8887
|
+
seed.trimmedToolNotificationByCallId
|
|
8888
|
+
),
|
|
8889
|
+
permissionBlockByRequestId: createNullIndex(
|
|
8890
|
+
seed.permissionBlockByRequestId
|
|
8891
|
+
),
|
|
8892
|
+
toolProgress: createNullIndex(seed.toolProgress),
|
|
8893
|
+
activeAssistantBlockByParent: createNullIndex(
|
|
8894
|
+
seed.activeAssistantBlockByParent
|
|
8895
|
+
),
|
|
8896
|
+
activeThoughtBlockByParent: createNullIndex(
|
|
8897
|
+
seed.activeThoughtBlockByParent
|
|
8898
|
+
),
|
|
8818
8899
|
lastResyncRequired: seed.lastResyncRequired !== void 0 ? { ...seed.lastResyncRequired } : void 0,
|
|
8819
8900
|
lastFollowupSuggestion: seed.lastFollowupSuggestion !== void 0 ? { ...seed.lastFollowupSuggestion } : void 0
|
|
8820
8901
|
};
|
|
8821
8902
|
}
|
|
8822
8903
|
__name(createState, "createState");
|
|
8904
|
+
function createNullIndex(source) {
|
|
8905
|
+
return Object.assign(/* @__PURE__ */ Object.create(null), source);
|
|
8906
|
+
}
|
|
8907
|
+
__name(createNullIndex, "createNullIndex");
|
|
8823
8908
|
|
|
8824
8909
|
// packages/sdk-typescript/src/daemon/ui/sentinels.ts
|
|
8825
8910
|
init_esbuild_shims();
|
|
@@ -2,67 +2,67 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
createDaemonStatusProvider
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-AMRWCMX4.js";
|
|
6
6
|
import "./chunk-LXXMOYPL.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-3ML52IFS.js";
|
|
8
8
|
import "./chunk-E5Z2AVNV.js";
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-THNJYTA6.js";
|
|
10
|
+
import "./chunk-QOSKUG5P.js";
|
|
11
11
|
import "./chunk-6RLROE6G.js";
|
|
12
12
|
import "./chunk-COH43MRJ.js";
|
|
13
13
|
import "./chunk-QR6U5QPP.js";
|
|
14
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-SLLG5XXE.js";
|
|
15
15
|
import "./chunk-X6YQWCIJ.js";
|
|
16
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-TQBA6DVX.js";
|
|
17
17
|
import "./chunk-W7FJ3N32.js";
|
|
18
18
|
import "./chunk-M5GB774H.js";
|
|
19
19
|
import "./chunk-UDXSXLER.js";
|
|
20
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-SQMTULHJ.js";
|
|
21
21
|
import "./chunk-VJNBRRZG.js";
|
|
22
|
-
import "./chunk-
|
|
22
|
+
import "./chunk-JDPCOUZ3.js";
|
|
23
23
|
import "./chunk-5M6IDOMF.js";
|
|
24
24
|
import "./chunk-T4TZQJ7W.js";
|
|
25
25
|
import "./chunk-H6XPXXMH.js";
|
|
26
|
-
import "./chunk-
|
|
27
|
-
import "./chunk-
|
|
28
|
-
import "./chunk-
|
|
29
|
-
import "./chunk-
|
|
26
|
+
import "./chunk-EAUYY7SS.js";
|
|
27
|
+
import "./chunk-FSL5W5TI.js";
|
|
28
|
+
import "./chunk-OONJNQ42.js";
|
|
29
|
+
import "./chunk-D2VIDMVM.js";
|
|
30
30
|
import "./chunk-E2UVIFI2.js";
|
|
31
31
|
import "./chunk-XU457J4V.js";
|
|
32
32
|
import "./chunk-VDDGDZMA.js";
|
|
33
|
-
import "./chunk-
|
|
33
|
+
import "./chunk-EIAK6Q2B.js";
|
|
34
34
|
import "./chunk-SZRN75WQ.js";
|
|
35
35
|
import "./chunk-HTO4JFDZ.js";
|
|
36
36
|
import "./chunk-CPBF7KYF.js";
|
|
37
|
-
import "./chunk-
|
|
37
|
+
import "./chunk-CPCVCKKF.js";
|
|
38
38
|
import "./chunk-6AM5D4ME.js";
|
|
39
|
-
import "./chunk-
|
|
40
|
-
import "./chunk-
|
|
41
|
-
import "./chunk-
|
|
42
|
-
import "./chunk-
|
|
43
|
-
import "./chunk-
|
|
44
|
-
import "./chunk-
|
|
39
|
+
import "./chunk-G45X5TRN.js";
|
|
40
|
+
import "./chunk-PBATSWUQ.js";
|
|
41
|
+
import "./chunk-ZEOZL37W.js";
|
|
42
|
+
import "./chunk-OOCI5VVU.js";
|
|
43
|
+
import "./chunk-53OPIXUE.js";
|
|
44
|
+
import "./chunk-DSBCU6JY.js";
|
|
45
45
|
import "./chunk-JESCGQM3.js";
|
|
46
|
-
import "./chunk-
|
|
46
|
+
import "./chunk-I6JUVU7J.js";
|
|
47
47
|
import "./chunk-4WKAA4KS.js";
|
|
48
48
|
import "./chunk-CR3C7WXL.js";
|
|
49
49
|
import "./chunk-VGC4I5JJ.js";
|
|
50
|
-
import "./chunk-
|
|
51
|
-
import "./chunk-
|
|
52
|
-
import "./chunk-
|
|
53
|
-
import "./chunk-
|
|
54
|
-
import "./chunk-
|
|
50
|
+
import "./chunk-JD3MKVKL.js";
|
|
51
|
+
import "./chunk-UEY4AYUL.js";
|
|
52
|
+
import "./chunk-BDBMYST4.js";
|
|
53
|
+
import "./chunk-EZVDJFZ7.js";
|
|
54
|
+
import "./chunk-OP4MOGXF.js";
|
|
55
55
|
import "./chunk-XVNQMZ2I.js";
|
|
56
56
|
import "./chunk-FEOZBUMT.js";
|
|
57
57
|
import "./chunk-DJ2GSRLV.js";
|
|
58
|
-
import "./chunk-
|
|
59
|
-
import "./chunk-
|
|
58
|
+
import "./chunk-6EFTQYW7.js";
|
|
59
|
+
import "./chunk-MAQQGNQ5.js";
|
|
60
60
|
import "./chunk-A4UCTEB5.js";
|
|
61
61
|
import "./chunk-XWRJCPHC.js";
|
|
62
62
|
import "./chunk-TYQMGACW.js";
|
|
63
63
|
import "./chunk-TYAMGABM.js";
|
|
64
64
|
import "./chunk-FCMNKVXT.js";
|
|
65
|
-
import "./chunk-
|
|
65
|
+
import "./chunk-C27BYUX6.js";
|
|
66
66
|
import "./chunk-75DOP5OR.js";
|
|
67
67
|
import "./chunk-DMTGGOSA.js";
|
|
68
68
|
import "./chunk-YQ3U5MUC.js";
|
|
@@ -11,11 +11,11 @@ import {
|
|
|
11
11
|
sendMessage,
|
|
12
12
|
sendTyping,
|
|
13
13
|
uploadToCdn
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-2HOVDT7W.js";
|
|
15
15
|
import {
|
|
16
16
|
ChannelBase,
|
|
17
17
|
isTerminalTaskLifecycleType
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-NIJEXGV6.js";
|
|
19
19
|
import "./chunk-UDXSXLER.js";
|
|
20
20
|
import "./chunk-H6XPXXMH.js";
|
|
21
21
|
import {
|