@qwen-code/qwen-code 0.21.6-preview.0 → 0.21.7-nightly.20260807.fca8f3c1f
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundled/qc-helper/docs/configuration/settings.md +19 -9
- package/bundled/qc-helper/docs/features/channels/dingtalk.md +1 -1
- package/bundled/qc-helper/docs/features/channels/github.md +31 -19
- package/bundled/qc-helper/docs/features/code-review.md +30 -1
- package/bundled/qc-helper/docs/qwen-serve.md +1 -1
- package/bundled/review/SKILL.md +59 -22
- package/chunks/{MaxSizedBox-A3UYJS6B.js → MaxSizedBox-NHT7OJY4.js} +38 -38
- package/chunks/{StandaloneSessionPicker-NGLY26I4.js → StandaloneSessionPicker-B2BHAP6E.js} +56 -55
- package/chunks/{acp-startup-profiler-3RICG2YW.js → acp-startup-profiler-ORIQ2CCQ.js} +2 -2
- package/chunks/{acpAgent-V54T2EEL.js → acpAgent-ITFWQGW2.js} +1091 -150
- package/chunks/{agent-2P53VL2L.js → agent-CQ66PAFN.js} +35 -35
- package/chunks/{agent-headless-6X4GCFRD.js → agent-headless-XFODWIW2.js} +35 -35
- package/chunks/{anthropicContentGenerator-3CAHEZBM.js → anthropicContentGenerator-DTMVEL5M.js} +7 -7
- package/chunks/{artifact-tool-RROCCJDA.js → artifact-tool-U4VOZIK5.js} +2 -2
- package/chunks/{askUserQuestion-2EPPBPUZ.js → askUserQuestion-XOBQLPFA.js} +2 -2
- package/chunks/{bridge-TCFMLKHR.js → bridge-5XPZZ43S.js} +41 -41
- package/chunks/{channel-management-service-5XPPTWUQ.js → channel-management-service-FSQ7SHYI.js} +1 -1
- package/chunks/{channel-settings-store-B4HNMNQV.js → channel-settings-store-ZRWVDSMY.js} +42 -42
- package/chunks/{channel-worker-group-SVGPDH2C.js → channel-worker-group-JWQK224X.js} +5 -5
- package/chunks/{channel-worker-manager-72ZK2GTS.js → channel-worker-manager-77E3OXRQ.js} +5 -5
- package/chunks/{channel-worker-supervisor-NUEDVHX4.js → channel-worker-supervisor-62YWUGP2.js} +3 -3
- package/chunks/{chunk-XC656O42.js → chunk-22NBYCPD.js} +3 -3
- package/chunks/chunk-2VSTGY6M.js +107 -0
- package/chunks/{chunk-MBEMTXQT.js → chunk-3K7FH2KQ.js} +1 -32
- package/chunks/{chunk-ZH7G3A4U.js → chunk-3KY5HXE6.js} +4 -4
- package/chunks/{chunk-QYPT3QUD.js → chunk-3ULCB3NE.js} +3 -3
- package/chunks/{chunk-DOICUTPO.js → chunk-4L3YFXQL.js} +11 -10
- package/chunks/{chunk-WIPQR44Y.js → chunk-4UKNQ2HI.js} +3 -3
- package/chunks/{chunk-AU3XNTMV.js → chunk-52AXQBAY.js} +3 -3
- package/chunks/{chunk-6KEN3RIC.js → chunk-5JFKVENR.js} +3 -3
- package/chunks/{chunk-TVFC3XF5.js → chunk-5OYWFYX3.js} +7 -7
- package/chunks/{chunk-4E5PO6R7.js → chunk-6IKXD7ZR.js} +4 -4
- package/chunks/{chunk-5L6CQ4ZU.js → chunk-6M26GBKX.js} +2 -2
- package/chunks/{chunk-XOZ2R6XI.js → chunk-7GXFPUOL.js} +3578 -1487
- package/chunks/{chunk-4T6QMNX2.js → chunk-7HMDOAIC.js} +185 -12
- package/chunks/{chunk-33FNCQSY.js → chunk-7MH4J33A.js} +2 -2
- package/chunks/{chunk-2AGOQ7QO.js → chunk-7UFKAV7Y.js} +118 -6
- package/chunks/{chunk-JELIWHXD.js → chunk-AOHJKPKL.js} +1 -1
- package/chunks/{chunk-SPUDIAHX.js → chunk-ASSORJG6.js} +530 -388
- package/chunks/{chunk-GLNBDYUX.js → chunk-AXMWHKXA.js} +6 -2
- package/chunks/{chunk-H36SETQS.js → chunk-B2GJNDTV.js} +1 -1
- package/chunks/{chunk-RTWF7FF7.js → chunk-BDE433DP.js} +5 -5
- package/chunks/{chunk-6D6V55ZQ.js → chunk-BEBG3YE6.js} +1 -1
- package/chunks/{chunk-QMBEW7EW.js → chunk-BGG4MBYD.js} +2 -2
- package/chunks/{chunk-QL4TN4HS.js → chunk-BRVWYMKV.js} +1 -1
- package/chunks/{chunk-6WBWIPBF.js → chunk-BVWVWGLE.js} +2 -2
- package/chunks/{chunk-WPKIU4PA.js → chunk-CFJIT7IA.js} +6 -6
- package/chunks/{chunk-2UISUFHQ.js → chunk-CJXIIILK.js} +3 -3
- package/chunks/{chunk-WK4TJUEA.js → chunk-CKASRHZI.js} +1 -1
- package/chunks/{chunk-Z7JILXGX.js → chunk-CNIID3TV.js} +3 -3
- package/chunks/{chunk-KKN2IE7Q.js → chunk-CTJLZLB5.js} +1 -1
- package/chunks/{chunk-URJHXOSO.js → chunk-CYR3HI5X.js} +3 -3
- package/chunks/{chunk-4LKVQFHM.js → chunk-DREZZAZM.js} +2 -2
- package/chunks/{chunk-QWUYFMAR.js → chunk-E24IQ3WV.js} +87 -67
- package/chunks/{chunk-WXS647W5.js → chunk-E2DXJHVN.js} +3 -3
- package/chunks/{chunk-2U7GPHA6.js → chunk-E33LOKRA.js} +1 -1
- package/chunks/{chunk-CDHNGCJI.js → chunk-ECTZI76Q.js} +7 -7
- package/chunks/{chunk-2DNKEBXY.js → chunk-EI3HZX6C.js} +1 -1
- package/chunks/{chunk-U25CMJYY.js → chunk-EKPKKXY2.js} +1 -1
- package/chunks/{chunk-432XCUHF.js → chunk-EQL65XGA.js} +1 -1
- package/chunks/{chunk-TYERNYH4.js → chunk-EUNWC2VS.js} +2 -2
- package/chunks/{chunk-546CDN6D.js → chunk-F4SQY4RB.js} +3 -3
- package/chunks/{chunk-NKST54XA.js → chunk-FBPPGNA4.js} +1 -1
- package/chunks/{chunk-MFBUJMQ3.js → chunk-FCBM3ZRY.js} +4 -4
- package/chunks/{chunk-UH7Z7Y45.js → chunk-FOGU3LJX.js} +1 -1
- package/chunks/{chunk-O656RSMC.js → chunk-FTJUO7R2.js} +18 -10
- package/chunks/{chunk-E4WHKETF.js → chunk-FVKHVJZQ.js} +2 -49
- package/chunks/{chunk-XZCMQUOF.js → chunk-GDXET5XU.js} +31 -3387
- package/chunks/{chunk-A5YZ3FA2.js → chunk-GM463R2B.js} +1 -1
- package/chunks/{chunk-MOHAWIAW.js → chunk-GNPNYXJB.js} +2 -2
- package/chunks/{chunk-HKNSU4WX.js → chunk-GUHLKZ57.js} +198 -35
- package/chunks/{chunk-N47ZM2KI.js → chunk-HCVI44SK.js} +12 -12
- package/chunks/{chunk-BK2UNYWD.js → chunk-HIBNSEJE.js} +12 -0
- package/chunks/{chunk-FDV3CXTD.js → chunk-HMUV7245.js} +3 -3
- package/chunks/{chunk-DOA7MCDY.js → chunk-I3LJQR5I.js} +973 -892
- package/chunks/{chunk-D7D7RXIJ.js → chunk-IC4Z6LX6.js} +1 -1
- package/chunks/{chunk-HU5TUALO.js → chunk-IIJEYBNH.js} +3 -3
- package/chunks/{chunk-DTAPI453.js → chunk-IUFV6FYU.js} +2 -2
- package/chunks/{chunk-MISUEWB4.js → chunk-J6SZID63.js} +12 -8
- package/chunks/{chunk-OWAK7LMW.js → chunk-KGJGEEVR.js} +7 -0
- package/chunks/{chunk-C4GRKMUL.js → chunk-KGT25P47.js} +5 -5
- package/chunks/{chunk-BFHXDAR7.js → chunk-KKBPOU75.js} +1 -1
- package/chunks/{chunk-T4XY5CT4.js → chunk-KNTWLSVD.js} +7 -7
- package/chunks/{chunk-3ZRS2XNY.js → chunk-KU4MUGRF.js} +1 -1
- package/chunks/{chunk-MGSSJT27.js → chunk-L4N6TIP7.js} +5 -3
- package/chunks/{chunk-VDLXPEI5.js → chunk-LFVXMYII.js} +3 -3
- package/chunks/{chunk-WVAESIM6.js → chunk-LZC3B5N2.js} +4 -4
- package/chunks/{chunk-XSGQKR37.js → chunk-M5RUXX6P.js} +358 -20
- package/chunks/{chunk-6O5DVH27.js → chunk-M6HMMKVG.js} +1 -1
- package/chunks/{chunk-PQTK2FVO.js → chunk-MA5SUU2Q.js} +4 -4
- package/chunks/{chunk-XNZBXQCG.js → chunk-MKVZE4ZJ.js} +1 -1
- package/chunks/{chunk-7FUVSN4D.js → chunk-MPLEQFEL.js} +1 -1
- package/chunks/{chunk-I7JDGNG6.js → chunk-MVUQRLOH.js} +9 -5
- package/chunks/{chunk-GLWP3FDB.js → chunk-MZSJ43WV.js} +31 -2
- package/chunks/{chunk-ZPPP6VCL.js → chunk-NG2R4N5O.js} +1 -1
- package/chunks/chunk-NKLP3DCK.js +22 -0
- package/chunks/{chunk-WIRAPZ62.js → chunk-NLREQJFK.js} +7 -1
- package/chunks/{chunk-IKXE3AAC.js → chunk-OCEXSMWS.js} +2 -2
- package/chunks/{chunk-3RXUYQJI.js → chunk-OIVKILPI.js} +49 -0
- package/chunks/{chunk-LBWNSLJK.js → chunk-ONSZH6VM.js} +2 -2
- package/chunks/{chunk-XKTCA6BW.js → chunk-ORTYIRZU.js} +5 -5
- package/chunks/{chunk-5CDI4UOY.js → chunk-ORYNZTB7.js} +131 -48
- package/chunks/{chunk-DYA25Y7U.js → chunk-OWMAZHIX.js} +1 -1
- package/chunks/{chunk-Y5HIDFKZ.js → chunk-P2PTEG3P.js} +4 -4
- package/chunks/{chunk-IISDPZ5X.js → chunk-P4PAGFDT.js} +1 -1
- package/chunks/{chunk-P7LKADIT.js → chunk-PRYJZGR4.js} +7 -7
- package/chunks/{chunk-NYZAL2W2.js → chunk-PVNUY34T.js} +4 -4
- package/chunks/{chunk-GTM6IHBB.js → chunk-Q3JQ7OSU.js} +2 -1
- package/chunks/{chunk-SQ3ZJOYL.js → chunk-QBUXNKTM.js} +20 -20
- package/chunks/{chunk-Z5S6KH2B.js → chunk-QT34NLGU.js} +6 -6
- package/chunks/{chunk-UKZEXS6K.js → chunk-R574ATRM.js} +11 -0
- package/chunks/{chunk-MVLM6PJK.js → chunk-RFA3YH5R.js} +6 -2
- package/chunks/chunk-RGSBTHSU.js +3381 -0
- package/chunks/{chunk-3DTM3RPU.js → chunk-S7CV4KO6.js} +3 -3
- package/chunks/{chunk-6KZP75GT.js → chunk-SDSQ7C4Y.js} +1 -1
- package/chunks/{chunk-YAVY33G4.js → chunk-SEZ556DZ.js} +1 -1
- package/chunks/chunk-SOORFWKY.js +155 -0
- package/chunks/{chunk-DBIEZC7T.js → chunk-ST774VGY.js} +42 -16
- package/chunks/{chunk-X6DV3WKN.js → chunk-T444EKH5.js} +1 -1
- package/chunks/{chunk-CJBRIJ7W.js → chunk-T7WJWZCG.js} +3 -3
- package/chunks/{chunk-NAYPZ72V.js → chunk-TPQ6RO65.js} +1 -1
- package/chunks/{chunk-KVUBYJDM.js → chunk-TZEZYNYD.js} +1 -1
- package/chunks/{chunk-YUVTZ4UH.js → chunk-U5G2PZAQ.js} +114 -18
- package/chunks/{chunk-XC2VAFVZ.js → chunk-UVX4Y6IN.js} +1 -1
- package/chunks/{chunk-WAOLM6SQ.js → chunk-VHINCBEK.js} +1 -1
- package/chunks/{chunk-AFZTZLFB.js → chunk-VIOH2OOE.js} +3 -3
- package/chunks/{chunk-M744OFVE.js → chunk-W7U4ESW2.js} +1 -1
- package/chunks/{chunk-URN76TKR.js → chunk-WCG5O7IP.js} +2 -2
- package/chunks/{chunk-QG2ACINA.js → chunk-WIAN5MYB.js} +1 -1
- package/chunks/{chunk-ZQL73PPE.js → chunk-WLAO54CV.js} +2 -2
- package/chunks/{chunk-EKWNNQQD.js → chunk-X26KCG3L.js} +16 -10
- package/chunks/{chunk-AVDEBBMI.js → chunk-X6VISCPN.js} +2 -2
- package/chunks/{chunk-A6SX5TAH.js → chunk-XCWO3SMQ.js} +9 -5
- package/chunks/{chunk-WVRJKSIG.js → chunk-XR4VN3GB.js} +1 -1
- package/chunks/{chunk-BU4BRCPX.js → chunk-Y4F5PBY5.js} +5 -5
- package/chunks/{chunk-3PRJYMXC.js → chunk-Y4NGLFGJ.js} +1 -1
- package/chunks/{chunk-DG563ZCS.js → chunk-YD26XH5B.js} +3 -3
- package/chunks/{chunk-3LGZEYOF.js → chunk-YHEEE624.js} +2 -2
- package/chunks/{chunk-QONSRAEV.js → chunk-YP5KH5Y7.js} +1 -1
- package/chunks/{chunk-EHMN6SEG.js → chunk-YPQ4IEVV.js} +4 -4
- package/chunks/{chunk-CXYBX4AL.js → chunk-Z2MB7HS7.js} +1 -1
- package/chunks/{chunk-72DZPDH4.js → chunk-ZFJBQATO.js} +10 -5
- package/chunks/{chunk-7GYP5COR.js → chunk-ZXU5UHMI.js} +1 -1
- package/chunks/{computer-use-GTOP2CVH.js → computer-use-4WCG6FX3.js} +35 -35
- package/chunks/{config-utils-LIRO7NSU.js → config-utils-K7SCOWHD.js} +2 -2
- package/chunks/{contextCommand-K6T6RRF3.js → contextCommand-MLJEOUZY.js} +38 -38
- package/chunks/{core-runtime-D2626QQU.js → core-runtime-LKSDQXFB.js} +35 -35
- package/chunks/{create-sub-session-6EWLAZD5.js → create-sub-session-E4PBYXV5.js} +2 -2
- package/chunks/create-sub-session-ZJ7OYXRW.js +772 -0
- package/chunks/{cron-create-CCRIULJE.js → cron-create-GRBWYMIJ.js} +4 -4
- package/chunks/{cron-delete-FCFW6BGP.js → cron-delete-4CMKBR2M.js} +4 -4
- package/chunks/{cron-list-QDBVCHRF.js → cron-list-W7K4ASOA.js} +4 -4
- package/chunks/{daemon-CCIX4BMG.js → daemon-SCTQMM7Z.js} +165 -5
- package/chunks/{daemon-status-provider-2EHRZZVF.js → daemon-status-provider-2TPABSC6.js} +45 -45
- package/chunks/{daemon-trust-policy-B3EPDJDR.js → daemon-trust-policy-U5Q3LRKV.js} +41 -41
- package/chunks/{daemon-trust-policy-monitor-MFM5X26G.js → daemon-trust-policy-monitor-REIZABHN.js} +41 -41
- package/chunks/{deferred-core-runtime-KXN7HLN7.js → deferred-core-runtime-ONWSGDPN.js} +35 -35
- package/chunks/discovery-XLHITE74.js +220 -0
- package/chunks/{display-image-GUJA352B.js → display-image-O2XFPQTC.js} +4 -4
- package/chunks/{dist-A7H2KKUC.js → dist-K4WWQBHS.js} +277 -98
- package/chunks/{dist-IKGVITP3.js → dist-KS4O2NKE.js} +99 -6
- package/chunks/{earlyInputCapture-WUNYYFOS.js → earlyInputCapture-Q7CO2QN4.js} +36 -36
- package/chunks/{edit-DMFCBP2D.js → edit-PBU33DGY.js} +35 -35
- package/chunks/{enter-worktree-5SVBCXFC.js → enter-worktree-WCRF2AA5.js} +35 -35
- package/chunks/{enterPlanMode-QUIZFQ4M.js → enterPlanMode-E2RXSZSG.js} +35 -35
- package/chunks/{environment-U6QP23VJ.js → environment-KA6OBBY4.js} +38 -38
- package/chunks/{errors-GZWFA6ON.js → errors-XYCANYTN.js} +38 -38
- package/chunks/{exit-worktree-FUB44KAF.js → exit-worktree-CQLRKE26.js} +35 -35
- package/chunks/{exitPlanMode-XSHHYR73.js → exitPlanMode-AP7XQVRL.js} +35 -35
- package/chunks/{fast-path-JHQJSIMZ.js → fast-path-DHKCBUUQ.js} +2 -2
- package/chunks/{gemini-O44ETOKT.js → gemini-RGYIKOL6.js} +78 -78
- package/chunks/{geminiContentGenerator-TTM4TZJM.js → geminiContentGenerator-ZLI7NARI.js} +6 -6
- package/chunks/{glob-YECOWTRW.js → glob-R4R7OG4W.js} +35 -35
- package/chunks/{goal-tools-3AZKX5WQ.js → goal-tools-APOW6UXL.js} +3 -3
- package/chunks/{grep-BZO4LOTA.js → grep-BO5M2UCN.js} +35 -35
- package/chunks/{handleAutoUpdate-TOO52D6H.js → handleAutoUpdate-ZTHIKBZM.js} +40 -40
- package/chunks/{i18n-ARJYXZQ5.js → i18n-GNC2NNVA.js} +37 -37
- package/chunks/{image-gen-J6Q2YBEU.js → image-gen-2XYVOLT5.js} +9 -9
- package/chunks/{initializer-CEZ4RPQV.js → initializer-VXLEBSSB.js} +42 -42
- package/chunks/{installationInfo-AEGIIQAT.js → installationInfo-QBJ7GECU.js} +36 -36
- package/chunks/{keychain-token-storage-7BT4TQ2A.js → keychain-token-storage-TVAMTNP7.js} +2 -2
- package/chunks/{list-7XLPV5GC.js → list-VLARA3NO.js} +44 -44
- package/chunks/{list-agents-GC4BRET7.js → list-agents-KFFIIS2G.js} +2 -2
- package/chunks/{loadedSettingsAdapter-YK5SBHOT.js → loadedSettingsAdapter-AQWO3DKQ.js} +41 -41
- package/chunks/{loggingContentGenerator-I7QDXS43.js → loggingContentGenerator-JPOQJB44.js} +17 -17
- package/chunks/{loop-wakeup-SQQSBMEY.js → loop-wakeup-TLMJPMMP.js} +5 -5
- package/chunks/{ls-63CC3NNX.js → ls-UVVE2XGE.js} +4 -4
- package/chunks/{lsp-P6NVJVNT.js → lsp-QMEA2VLB.js} +2 -2
- package/chunks/{managed-npm-update-YSL7PA7G.js → managed-npm-update-LEIM7R7Z.js} +48 -39
- package/chunks/{mcp-RKFQZXP6.js → mcp-WDSZDEUK.js} +41 -41
- package/chunks/{monitor-QHHJIKGL.js → monitor-XEIMDJKT.js} +35 -35
- package/chunks/{nonInteractiveCli-XEBIE7MG.js → nonInteractiveCli-GA7CHB27.js} +75 -75
- package/chunks/{notebook-edit-SG7X2EQA.js → notebook-edit-HBVYJEYN.js} +35 -35
- package/chunks/{openaiContentGenerator-63CVR33K.js → openaiContentGenerator-D6DYXZD3.js} +19 -19
- package/chunks/{pidfile-I3CXJGQD.js → pidfile-DWDNVKET.js} +36 -36
- package/chunks/{processUtils-LJ3DSANX.js → processUtils-Y2SQQ2RR.js} +2 -2
- package/chunks/{qwenContentGenerator-JINBVCH6.js → qwenContentGenerator-MTXRA2IT.js} +40 -40
- package/chunks/{qwenOAuth2-SY2O3NRR.js → qwenOAuth2-HQSYUQ2E.js} +8 -8
- package/chunks/{read-file-PGTXF25I.js → read-file-IUAEEXBO.js} +10 -10
- package/chunks/{read-mcp-resource-RTSSEER5.js → read-mcp-resource-2TNSJTC3.js} +2 -2
- package/chunks/{record-artifact-E6AWQU2Z.js → record-artifact-RAON52FC.js} +3 -3
- package/chunks/{resumeHistoryUtils-FB2NFVZ2.js → resumeHistoryUtils-J244DBOH.js} +42 -41
- package/chunks/{ripGrep-IY3KGPM6.js → ripGrep-NBENZCHO.js} +35 -35
- package/chunks/{run-qwen-serve-UYEMGPKA.js → run-qwen-serve-2G754FJE.js} +516 -87
- package/chunks/{runtime-CG3BKRFE.js → runtime-KBSESBIX.js} +44 -44
- package/chunks/{scheduler-VFUVGDE5.js → scheduler-INHLDC26.js} +35 -35
- package/chunks/{sdk-exporters-http-IL2346MJ.js → sdk-exporters-http-KHAB5JSD.js} +2 -2
- package/chunks/{sdk-impl-SYKGVWOZ.js → sdk-impl-KD7FSTC3.js} +2 -2
- package/chunks/{send-message-TL6FIMMN.js → send-message-ZM7MRUGP.js} +5 -5
- package/chunks/{serve-ZCCQ2G2L.js → serve-G2BCUQNM.js} +42 -42
- package/chunks/{server-WS7LWXPP.js → server-3BD6DIW3.js} +7952 -611
- package/chunks/{session-IQLCT32T.js → session-HGXANTYW.js} +78 -78
- package/chunks/{settings-NX4EUIE6.js → settings-VYFBEZ2R.js} +40 -40
- package/chunks/{shell-THDYM4CS.js → shell-3LBKDXAW.js} +35 -35
- package/chunks/{skill-OXXZBNQB.js → skill-W576UXSL.js} +14 -14
- package/chunks/{skill-settings-T3JZ33T2.js → skill-settings-ZNUIJMJT.js} +40 -40
- package/chunks/{spawnChannel-COLJMSA7.js → spawnChannel-AUUVHV5S.js} +37 -37
- package/chunks/{standalone-update-ICW7H5IF.js → standalone-update-WEQVL7DN.js} +38 -38
- package/chunks/{startInteractiveUI-6BDRXSMF.js → startInteractiveUI-V3B5M5PY.js} +473 -233
- package/chunks/{stdioHelpers-HGIYTWAY.js → stdioHelpers-7A2EE64Z.js} +5 -3
- package/chunks/{syntheticOutput-BN7E626U.js → syntheticOutput-ZLCUTKO2.js} +3 -3
- package/chunks/{task-create-2X4UP4F3.js → task-create-CQP5UEA3.js} +9 -9
- package/chunks/{task-list-WOLJPZ64.js → task-list-XLEZOJXP.js} +5 -5
- package/chunks/{task-stop-TNXRNAL2.js → task-stop-7ZQM5CFF.js} +2 -2
- package/chunks/{task-update-VDUSN36E.js → task-update-JA75U2SN.js} +9 -9
- package/chunks/{team-create-BCSMDK4Z.js → team-create-4TEVQYI5.js} +35 -35
- package/chunks/{team-delete-D2VMSDOT.js → team-delete-MHY3UZGY.js} +5 -5
- package/chunks/{team-plan-approval-B5YRLJFV.js → team-plan-approval-UOSTAB7R.js} +35 -35
- package/chunks/{terminal-image-renderer-PW6Z6VFY.js → terminal-image-renderer-VO6W4YSM.js} +41 -36
- package/chunks/{theme-manager-CMVKD2JH.js → theme-manager-HOYUCAJ5.js} +36 -36
- package/chunks/{todoWrite-MHWHO5UO.js → todoWrite-UPVOHYGD.js} +4 -4
- package/chunks/{tool-search-SQTUSG6P.js → tool-search-NRMWTH3L.js} +13 -13
- package/chunks/{total-session-admission-XAXOSE46.js → total-session-admission-KHBGXD6A.js} +41 -41
- package/chunks/{trustedFolders-Z2UAEG2V.js → trustedFolders-AH242HLO.js} +37 -37
- package/chunks/{update-relaunch-JBLI6LJF.js → update-relaunch-R3M25PND.js} +6 -6
- package/chunks/{updateCheck-FDAVGOFT.js → updateCheck-4O2CMHMG.js} +39 -39
- package/chunks/{useAutoAcceptIndicator-PDZFIYRM.js → useAutoAcceptIndicator-KZSKP3RY.js} +44 -44
- package/chunks/{validateNonInterActiveAuth-Q4763ONQ.js → validateNonInterActiveAuth-7AXUFNBE.js} +72 -72
- package/chunks/{version-C7MPCGWD.js → version-BE7H2MTM.js} +1 -1
- package/chunks/{web-fetch-L7RAPOJB.js → web-fetch-C7FQ24BP.js} +13 -13
- package/chunks/{web-search-IDOYUOWX.js → web-search-7FPW6ECJ.js} +9 -9
- package/chunks/web-shell-static-O73YPVVC.js +33 -0
- package/chunks/{workflow-HXURUJB5.js → workflow-3LAE5AL7.js} +36 -36
- package/chunks/{workspace-providers-status-JZ3GPWNU.js → workspace-providers-status-UXZKS6SE.js} +44 -44
- package/chunks/{workspace-registration-store-SM2PWB6L.js → workspace-registration-store-DSS57KLV.js} +1 -1
- package/chunks/{workspace-registry-6W4ES7BJ.js → workspace-registry-VOSOZ4WU.js} +41 -41
- package/chunks/{workspace-service-V47ZFJRX.js → workspace-service-MWWHXZGQ.js} +46 -46
- package/chunks/{workspace-skills-status-6ZQ45XKA.js → workspace-skills-status-DN56VF74.js} +42 -42
- package/chunks/{workspace-trust-reconciler-6V25LMCN.js → workspace-trust-reconciler-3GOQYMND.js} +50 -50
- package/chunks/{write-file-H2QOF25K.js → write-file-B4YZQZ2K.js} +35 -35
- package/chunks/{zoom-image-JTUSS43N.js → zoom-image-L4QKXYG2.js} +10 -10
- package/cli.js +15 -15
- package/package.json +3 -3
- package/web-shell/assets/{arc-DtI1rZcQ.js → arc-Ip-FFDJ0.js} +1 -1
- package/web-shell/assets/{architectureDiagram-3BPJPVTR-BPZwSVct.js → architectureDiagram-3BPJPVTR-CChqgwIb.js} +1 -1
- package/web-shell/assets/{blockDiagram-GPEHLZMM-BIQ03j4C.js → blockDiagram-GPEHLZMM-BHN-Tfss.js} +1 -1
- package/web-shell/assets/{c4Diagram-AAUBKEIU-CB0RyFGm.js → c4Diagram-AAUBKEIU-BhyjzDjN.js} +1 -1
- package/web-shell/assets/channel-Cu8qd6OB.js +1 -0
- package/web-shell/assets/{chunk-2J33WTMH-B3WoS-4H.js → chunk-2J33WTMH-BB9eyHrx.js} +1 -1
- package/web-shell/assets/{chunk-4BX2VUAB-C98xYZ1X.js → chunk-4BX2VUAB-BeV7ce_J.js} +1 -1
- package/web-shell/assets/{chunk-55IACEB6-CbTIWRwQ.js → chunk-55IACEB6-DO7kXDiV.js} +1 -1
- package/web-shell/assets/{chunk-727SXJPM-DWGnKTPu.js → chunk-727SXJPM-B27MPznD.js} +1 -1
- package/web-shell/assets/{chunk-AQP2D5EJ-4__QyCEX.js → chunk-AQP2D5EJ-DHIjqjD_.js} +1 -1
- package/web-shell/assets/{chunk-FMBD7UC4-DFtG1YCW.js → chunk-FMBD7UC4-DabMqyN2.js} +1 -1
- package/web-shell/assets/{chunk-ND2GUHAM-rvAhW51N.js → chunk-ND2GUHAM-Dw7Nnnxc.js} +1 -1
- package/web-shell/assets/{chunk-QZHKN3VN-DfiU9pwZ.js → chunk-QZHKN3VN-DdaZew1Q.js} +1 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-BI3KrXhq.js +1 -0
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BI3KrXhq.js +1 -0
- package/web-shell/assets/{cose-bilkent-S5V4N54A-Cc4EIdxu.js → cose-bilkent-S5V4N54A-CgBpCYH5.js} +1 -1
- package/web-shell/assets/{dagre-BM42HDAG-CZNj4dGW.js → dagre-BM42HDAG-BB4IU8G0.js} +1 -1
- package/web-shell/assets/{diagram-2AECGRRQ-D5tiqQCr.js → diagram-2AECGRRQ-BcUTHU37.js} +1 -1
- package/web-shell/assets/{diagram-5GNKFQAL-pwzw0jVO.js → diagram-5GNKFQAL-B6Lyihyv.js} +1 -1
- package/web-shell/assets/{diagram-KO2AKTUF-4CWiM00x.js → diagram-KO2AKTUF-CRIJOjpG.js} +1 -1
- package/web-shell/assets/{diagram-LMA3HP47-Dd7rc7Qf.js → diagram-LMA3HP47-DdNiwWWT.js} +1 -1
- package/web-shell/assets/{diagram-OG6HWLK6-_vzV52ml.js → diagram-OG6HWLK6-Dz4b32Do.js} +1 -1
- package/web-shell/assets/{erDiagram-TEJ5UH35-CqbE2bx_.js → erDiagram-TEJ5UH35-D-8NGw77.js} +1 -1
- package/web-shell/assets/{flowDiagram-I6XJVG4X-CaxNr7w4.js → flowDiagram-I6XJVG4X-Dun26LyM.js} +1 -1
- package/web-shell/assets/{ganttDiagram-6RSMTGT7-AGjrtfUA.js → ganttDiagram-6RSMTGT7-F10Hu1Gc.js} +1 -1
- package/web-shell/assets/{gitGraphDiagram-PVQCEYII-ADG2zSkc.js → gitGraphDiagram-PVQCEYII-Bf8Ez6-D.js} +1 -1
- package/web-shell/assets/{index-BOryKCqt.js → index-BXqw-nGq.js} +1 -1
- package/web-shell/assets/index-QQlUCJGg.css +5 -0
- package/web-shell/assets/index-hcgjV7vS.js +1768 -0
- package/web-shell/assets/{infoDiagram-5YYISTIA-CE3B_IoZ.js → infoDiagram-5YYISTIA-DVgTMLvj.js} +1 -1
- package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-CN-Frhoi.js → ishikawaDiagram-YF4QCWOH-uT-KepvK.js} +1 -1
- package/web-shell/assets/{journeyDiagram-JHISSGLW-CGgezS93.js → journeyDiagram-JHISSGLW-Vg_XadQf.js} +1 -1
- package/web-shell/assets/{kanban-definition-UN3LZRKU-BqWijky5.js → kanban-definition-UN3LZRKU-Dyv1ESBE.js} +1 -1
- package/web-shell/assets/{linear-D8sfpZf6.js → linear-BMIepYX3.js} +1 -1
- package/web-shell/assets/{mermaid.core-3PA4QrzM.js → mermaid.core-zA8pJ9ag.js} +5 -5
- package/web-shell/assets/{mindmap-definition-RKZ34NQL-D9QxwiCY.js → mindmap-definition-RKZ34NQL-BCW_BZ_5.js} +1 -1
- package/web-shell/assets/{pieDiagram-4H26LBE5-Bioaf6uE.js → pieDiagram-4H26LBE5-DseNEGp2.js} +1 -1
- package/web-shell/assets/{quadrantDiagram-W4KKPZXB-DBb2AS73.js → quadrantDiagram-W4KKPZXB-6Z7wr1Fi.js} +1 -1
- package/web-shell/assets/{requirementDiagram-4Y6WPE33-DXOvZ3KB.js → requirementDiagram-4Y6WPE33-CVOlCRPf.js} +1 -1
- package/web-shell/assets/{sankeyDiagram-5OEKKPKP-D9qg09Dm.js → sankeyDiagram-5OEKKPKP-CGhgrUJZ.js} +1 -1
- package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DSAUIfpw.js → sequenceDiagram-3UESZ5HK-dlqmpLuQ.js} +1 -1
- package/web-shell/assets/{stateDiagram-AJRCARHV-BPZkzfQ3.js → stateDiagram-AJRCARHV-B9EW10Xb.js} +1 -1
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CJTZJJ5X.js +1 -0
- package/web-shell/assets/{timeline-definition-PNZ67QCA-UDaQp9sP.js → timeline-definition-PNZ67QCA-BBRh0mgZ.js} +1 -1
- package/web-shell/assets/{vennDiagram-CIIHVFJN-2ouhAnHO.js → vennDiagram-CIIHVFJN-B8Gs-REP.js} +1 -1
- package/web-shell/assets/{wardley-L42UT6IY-Cq_WEvTK.js → wardley-L42UT6IY-D_y80Ur7.js} +1 -1
- package/web-shell/assets/{wardleyDiagram-YWT4CUSO-Dt24aXOM.js → wardleyDiagram-YWT4CUSO-D-CNfHJ-.js} +1 -1
- package/web-shell/assets/{xychartDiagram-2RQKCTM6-A5Xk2WCH.js → xychartDiagram-2RQKCTM6-DQ5CvELo.js} +1 -1
- package/web-shell/index.html +2 -2
- package/chunks/create-sub-session-MWUWNBM6.js +0 -401
- package/web-shell/assets/channel-vfbVFuM1.js +0 -1
- package/web-shell/assets/classDiagram-4FO5ZUOK-Cvr8atq3.js +0 -1
- package/web-shell/assets/classDiagram-v2-Q7XG4LA2-Cvr8atq3.js +0 -1
- package/web-shell/assets/index-Cb1LjsCv.css +0 -5
- package/web-shell/assets/index-CvJDaIy8.js +0 -1756
- package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DInOqnhZ.js +0 -1
|
@@ -2,18 +2,21 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
HistoryReplayer
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-X26KCG3L.js";
|
|
6
|
+
import {
|
|
7
|
+
isA2uiToolMeta
|
|
8
|
+
} from "./chunk-7HMDOAIC.js";
|
|
6
9
|
import {
|
|
7
10
|
ChannelDeliveryError,
|
|
8
11
|
MAX_CHANNEL_DELIVERY_TEXT_LENGTH
|
|
9
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-YP5KH5Y7.js";
|
|
10
13
|
import {
|
|
11
14
|
redactLogCredentials
|
|
12
15
|
} from "./chunk-M5GB774H.js";
|
|
13
16
|
import {
|
|
14
17
|
getUserSettingsPath,
|
|
15
18
|
loadSettings
|
|
16
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-U5G2PZAQ.js";
|
|
17
20
|
import {
|
|
18
21
|
getSystemDefaultsPath,
|
|
19
22
|
getSystemSettingsPath
|
|
@@ -21,22 +24,22 @@ import {
|
|
|
21
24
|
import {
|
|
22
25
|
findEnvFiles,
|
|
23
26
|
preResolveHomeEnvOverrides
|
|
24
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-OCEXSMWS.js";
|
|
25
28
|
import {
|
|
26
29
|
getResponseText,
|
|
27
30
|
ideContextStore
|
|
28
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-I3LJQR5I.js";
|
|
29
32
|
import {
|
|
30
33
|
MAX_CHANNEL_DELIVERY_NAME_LENGTH,
|
|
31
34
|
MAX_CHANNEL_DELIVERY_TARGET_ID_LENGTH
|
|
32
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-GNPNYXJB.js";
|
|
33
36
|
import {
|
|
34
37
|
parseGoalSnapshotV2
|
|
35
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-3K7FH2KQ.js";
|
|
36
39
|
import {
|
|
37
40
|
Storage,
|
|
38
41
|
createDebugLogger
|
|
39
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-OIVKILPI.js";
|
|
40
43
|
import {
|
|
41
44
|
init_esbuild_shims
|
|
42
45
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -44,6 +47,35 @@ import {
|
|
|
44
47
|
__name
|
|
45
48
|
} from "./chunk-J2S4EL5Y.js";
|
|
46
49
|
|
|
50
|
+
// packages/cli/src/serve/live/session-source.ts
|
|
51
|
+
init_esbuild_shims();
|
|
52
|
+
var LIVE_SESSION_SOURCE_PREFIX = "realtime_voice:";
|
|
53
|
+
function isReservedLiveSessionSource(source) {
|
|
54
|
+
return source.sourceType === "default" && source.sourceId?.startsWith(LIVE_SESSION_SOURCE_PREFIX) === true;
|
|
55
|
+
}
|
|
56
|
+
__name(isReservedLiveSessionSource, "isReservedLiveSessionSource");
|
|
57
|
+
function isCompatibleLiveSessionSource(source) {
|
|
58
|
+
const sourceId = source.sourceId;
|
|
59
|
+
return isReservedLiveSessionSource(source) && typeof sourceId === "string" && sourceId.length > LIVE_SESSION_SOURCE_PREFIX.length;
|
|
60
|
+
}
|
|
61
|
+
__name(isCompatibleLiveSessionSource, "isCompatibleLiveSessionSource");
|
|
62
|
+
function isStandaloneConversationSessionSource(source) {
|
|
63
|
+
return source.sourceId === void 0 && (source.sourceType === void 0 || source.sourceType === "default");
|
|
64
|
+
}
|
|
65
|
+
__name(isStandaloneConversationSessionSource, "isStandaloneConversationSessionSource");
|
|
66
|
+
async function readLoadableLiveConversationMetadata(sessionId, readMetadata) {
|
|
67
|
+
const metadata = await readMetadata(sessionId);
|
|
68
|
+
if (metadata.parentSessionId === void 0 && (isCompatibleLiveSessionSource(metadata) || isStandaloneConversationSessionSource(metadata))) {
|
|
69
|
+
return metadata;
|
|
70
|
+
}
|
|
71
|
+
if (metadata.parentSessionId === void 0 || metadata.sourceType !== void 0 || metadata.sourceId !== void 0) {
|
|
72
|
+
return void 0;
|
|
73
|
+
}
|
|
74
|
+
const parent = await readMetadata(metadata.parentSessionId);
|
|
75
|
+
return parent.parentSessionId === void 0 && (isCompatibleLiveSessionSource(parent) || isStandaloneConversationSessionSource(parent)) ? metadata : void 0;
|
|
76
|
+
}
|
|
77
|
+
__name(readLoadableLiveConversationMetadata, "readLoadableLiveConversationMetadata");
|
|
78
|
+
|
|
47
79
|
// packages/cli/src/runtime/workspace-remember-errors.ts
|
|
48
80
|
init_esbuild_shims();
|
|
49
81
|
var MAX_REMEMBER_ERROR_DETAILS_CHARS = 1e3;
|
|
@@ -566,6 +598,305 @@ __name(loadSettingsCached, "loadSettingsCached");
|
|
|
566
598
|
|
|
567
599
|
// packages/cli/src/acp-integration/session/history-replay-page.ts
|
|
568
600
|
init_esbuild_shims();
|
|
601
|
+
|
|
602
|
+
// packages/cli/src/acp-integration/session/acp-tool-result-text-projection.ts
|
|
603
|
+
init_esbuild_shims();
|
|
604
|
+
import { Buffer } from "node:buffer";
|
|
605
|
+
var ACP_TOOL_RESULT_TEXT_JSON_BYTE_BUDGET = 65536;
|
|
606
|
+
var ACP_TOOL_RESULT_TEXT_TRUNCATION_MARKER = "\n[... truncated for ACP transport ...]\n";
|
|
607
|
+
var EMPTY_CONTENT_ARRAY_JSON_BYTES = Buffer.byteLength("[]", "utf8");
|
|
608
|
+
var EMPTY_TEXT_BLOCK_JSON_BYTES = Buffer.byteLength(
|
|
609
|
+
JSON.stringify(createTextBlock("")),
|
|
610
|
+
"utf8"
|
|
611
|
+
);
|
|
612
|
+
var JSON_ARRAY_SEPARATOR_BYTES = 1;
|
|
613
|
+
var JSON_STRING_DELIMITER_BYTES = 2;
|
|
614
|
+
var TRUNCATION_MARKER_PAYLOAD_BYTES = jsonStringJsonByteLength(ACP_TOOL_RESULT_TEXT_TRUNCATION_MARKER) - JSON_STRING_DELIMITER_BYTES;
|
|
615
|
+
var MAX_CANONICAL_TEXT_BLOCKS = Math.floor(
|
|
616
|
+
(ACP_TOOL_RESULT_TEXT_JSON_BYTE_BUDGET - EMPTY_CONTENT_ARRAY_JSON_BYTES + JSON_ARRAY_SEPARATOR_BYTES) / (EMPTY_TEXT_BLOCK_JSON_BYTES + JSON_ARRAY_SEPARATOR_BYTES)
|
|
617
|
+
);
|
|
618
|
+
function createTextBlock(text) {
|
|
619
|
+
return {
|
|
620
|
+
type: "content",
|
|
621
|
+
content: { type: "text", text }
|
|
622
|
+
};
|
|
623
|
+
}
|
|
624
|
+
__name(createTextBlock, "createTextBlock");
|
|
625
|
+
function isObjectRecord(value) {
|
|
626
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
627
|
+
}
|
|
628
|
+
__name(isObjectRecord, "isObjectRecord");
|
|
629
|
+
function hasExactKeys(value, first, second) {
|
|
630
|
+
const keys = Object.keys(value);
|
|
631
|
+
return keys.length === 2 && Object.hasOwn(value, first) && Object.hasOwn(value, second);
|
|
632
|
+
}
|
|
633
|
+
__name(hasExactKeys, "hasExactKeys");
|
|
634
|
+
function canonicalTextBlocks(value) {
|
|
635
|
+
if (!Array.isArray(value)) return void 0;
|
|
636
|
+
for (const block of value) {
|
|
637
|
+
if (!isObjectRecord(block) || !hasExactKeys(block, "type", "content") || block["type"] !== "content" || !isObjectRecord(block["content"]) || !hasExactKeys(block["content"], "type", "text") || block["content"]["type"] !== "text" || typeof block["content"]["text"] !== "string") {
|
|
638
|
+
return void 0;
|
|
639
|
+
}
|
|
640
|
+
}
|
|
641
|
+
return value;
|
|
642
|
+
}
|
|
643
|
+
__name(canonicalTextBlocks, "canonicalTextBlocks");
|
|
644
|
+
function jsonPayloadBytesAt(value, index) {
|
|
645
|
+
const code = value.charCodeAt(index);
|
|
646
|
+
if (code === 34 || code === 92) return 2;
|
|
647
|
+
if (code <= 31) {
|
|
648
|
+
return code === 8 || code === 9 || code === 10 || code === 12 || code === 13 ? 2 : 6;
|
|
649
|
+
}
|
|
650
|
+
if (code <= 127) return 1;
|
|
651
|
+
if (code <= 2047) return 2;
|
|
652
|
+
if (code >= 55296 && code <= 56319) {
|
|
653
|
+
const next = value.charCodeAt(index + 1);
|
|
654
|
+
return next >= 56320 && next <= 57343 ? 4 : 6;
|
|
655
|
+
}
|
|
656
|
+
if (code >= 56320 && code <= 57343) return 6;
|
|
657
|
+
return 3;
|
|
658
|
+
}
|
|
659
|
+
__name(jsonPayloadBytesAt, "jsonPayloadBytesAt");
|
|
660
|
+
function jsonPayloadWidthAt(value, index) {
|
|
661
|
+
const code = value.charCodeAt(index);
|
|
662
|
+
if (code < 55296 || code > 56319) return 1;
|
|
663
|
+
const next = value.charCodeAt(index + 1);
|
|
664
|
+
return next >= 56320 && next <= 57343 ? 2 : 1;
|
|
665
|
+
}
|
|
666
|
+
__name(jsonPayloadWidthAt, "jsonPayloadWidthAt");
|
|
667
|
+
function jsonStringPayloadByteLength(value, stopAfterBytes = Number.POSITIVE_INFINITY) {
|
|
668
|
+
let bytes = 0;
|
|
669
|
+
for (let index = 0; index < value.length; ) {
|
|
670
|
+
bytes += jsonPayloadBytesAt(value, index);
|
|
671
|
+
if (bytes > stopAfterBytes) return bytes;
|
|
672
|
+
index += jsonPayloadWidthAt(value, index);
|
|
673
|
+
}
|
|
674
|
+
return bytes;
|
|
675
|
+
}
|
|
676
|
+
__name(jsonStringPayloadByteLength, "jsonStringPayloadByteLength");
|
|
677
|
+
function jsonStringJsonByteLength(value) {
|
|
678
|
+
return JSON_STRING_DELIMITER_BYTES + jsonStringPayloadByteLength(value);
|
|
679
|
+
}
|
|
680
|
+
__name(jsonStringJsonByteLength, "jsonStringJsonByteLength");
|
|
681
|
+
function jsonPayloadWidthBefore(value, end) {
|
|
682
|
+
const last = value.charCodeAt(end - 1);
|
|
683
|
+
if (last >= 56320 && last <= 57343 && end >= 2) {
|
|
684
|
+
const previous = value.charCodeAt(end - 2);
|
|
685
|
+
if (previous >= 55296 && previous <= 56319) return 2;
|
|
686
|
+
}
|
|
687
|
+
return 1;
|
|
688
|
+
}
|
|
689
|
+
__name(jsonPayloadWidthBefore, "jsonPayloadWidthBefore");
|
|
690
|
+
function selectPrefix(value, budget) {
|
|
691
|
+
let end = 0;
|
|
692
|
+
let bytes = 0;
|
|
693
|
+
while (end < value.length) {
|
|
694
|
+
const partBytes = jsonPayloadBytesAt(value, end);
|
|
695
|
+
if (bytes + partBytes > budget) break;
|
|
696
|
+
bytes += partBytes;
|
|
697
|
+
end += jsonPayloadWidthAt(value, end);
|
|
698
|
+
}
|
|
699
|
+
return end;
|
|
700
|
+
}
|
|
701
|
+
__name(selectPrefix, "selectPrefix");
|
|
702
|
+
function selectSuffix(value, budget) {
|
|
703
|
+
let start = value.length;
|
|
704
|
+
let bytes = 0;
|
|
705
|
+
while (start > 0) {
|
|
706
|
+
const partWidth = jsonPayloadWidthBefore(value, start);
|
|
707
|
+
const partBytes = jsonPayloadBytesAt(value, start - partWidth);
|
|
708
|
+
if (bytes + partBytes > budget) break;
|
|
709
|
+
bytes += partBytes;
|
|
710
|
+
start -= partWidth;
|
|
711
|
+
}
|
|
712
|
+
return start;
|
|
713
|
+
}
|
|
714
|
+
__name(selectSuffix, "selectSuffix");
|
|
715
|
+
function copyString(value) {
|
|
716
|
+
return value.split("").join("");
|
|
717
|
+
}
|
|
718
|
+
__name(copyString, "copyString");
|
|
719
|
+
function truncateStringPayload(value, originalPayloadBytes, payloadBudget) {
|
|
720
|
+
if (originalPayloadBytes <= payloadBudget) return value;
|
|
721
|
+
if (payloadBudget < TRUNCATION_MARKER_PAYLOAD_BYTES) {
|
|
722
|
+
return copyString(value.slice(0, selectPrefix(value, payloadBudget)));
|
|
723
|
+
}
|
|
724
|
+
const sourceBudget = payloadBudget - TRUNCATION_MARKER_PAYLOAD_BYTES;
|
|
725
|
+
const headBudget = Math.floor(sourceBudget * 0.2);
|
|
726
|
+
const tailBudget = sourceBudget - headBudget;
|
|
727
|
+
const headEnd = selectPrefix(value, headBudget);
|
|
728
|
+
const tailStart = selectSuffix(value, tailBudget);
|
|
729
|
+
return copyString(value.slice(0, headEnd)) + ACP_TOOL_RESULT_TEXT_TRUNCATION_MARKER + copyString(value.slice(tailStart));
|
|
730
|
+
}
|
|
731
|
+
__name(truncateStringPayload, "truncateStringPayload");
|
|
732
|
+
function contentSkeletonBytes(blockCount) {
|
|
733
|
+
if (blockCount === 0) return EMPTY_CONTENT_ARRAY_JSON_BYTES;
|
|
734
|
+
return EMPTY_CONTENT_ARRAY_JSON_BYTES + blockCount * EMPTY_TEXT_BLOCK_JSON_BYTES + (blockCount - 1) * JSON_ARRAY_SEPARATOR_BYTES;
|
|
735
|
+
}
|
|
736
|
+
__name(contentSkeletonBytes, "contentSkeletonBytes");
|
|
737
|
+
function fallbackContent() {
|
|
738
|
+
return [createTextBlock(ACP_TOOL_RESULT_TEXT_TRUNCATION_MARKER)];
|
|
739
|
+
}
|
|
740
|
+
__name(fallbackContent, "fallbackContent");
|
|
741
|
+
function jsonByteLength(value) {
|
|
742
|
+
return Buffer.byteLength(JSON.stringify(value), "utf8");
|
|
743
|
+
}
|
|
744
|
+
__name(jsonByteLength, "jsonByteLength");
|
|
745
|
+
function allocatePayloadBudgets(payloadBytes, availableBytes) {
|
|
746
|
+
const base = payloadBytes.map(
|
|
747
|
+
(bytes) => Math.min(bytes, TRUNCATION_MARKER_PAYLOAD_BYTES)
|
|
748
|
+
);
|
|
749
|
+
let remaining = availableBytes - base.reduce((sum, bytes) => sum + bytes, 0);
|
|
750
|
+
if (remaining < 0) return void 0;
|
|
751
|
+
const capacities = payloadBytes.map((bytes, index) => ({
|
|
752
|
+
index,
|
|
753
|
+
capacity: bytes - base[index]
|
|
754
|
+
}));
|
|
755
|
+
const sorted = capacities.filter(({ capacity }) => capacity > 0).sort(
|
|
756
|
+
(left, right) => left.capacity === right.capacity ? left.index - right.index : left.capacity - right.capacity
|
|
757
|
+
);
|
|
758
|
+
let active = sorted.length;
|
|
759
|
+
let position = 0;
|
|
760
|
+
let level = 0;
|
|
761
|
+
let remainder = 0;
|
|
762
|
+
while (position < sorted.length && active > 0 && remaining > 0) {
|
|
763
|
+
const nextLevel = sorted[position].capacity;
|
|
764
|
+
const cost = (nextLevel - level) * active;
|
|
765
|
+
if (cost > remaining) {
|
|
766
|
+
level += Math.floor(remaining / active);
|
|
767
|
+
remainder = remaining % active;
|
|
768
|
+
remaining = 0;
|
|
769
|
+
break;
|
|
770
|
+
}
|
|
771
|
+
level = nextLevel;
|
|
772
|
+
remaining -= cost;
|
|
773
|
+
while (position < sorted.length && sorted[position].capacity === nextLevel) {
|
|
774
|
+
position++;
|
|
775
|
+
active--;
|
|
776
|
+
}
|
|
777
|
+
}
|
|
778
|
+
const allocations = base.map(
|
|
779
|
+
(bytes, index) => bytes + Math.min(capacities[index].capacity, level)
|
|
780
|
+
);
|
|
781
|
+
if (remainder > 0) {
|
|
782
|
+
for (const { index, capacity } of capacities) {
|
|
783
|
+
if (remainder === 0) break;
|
|
784
|
+
if (capacity > level) {
|
|
785
|
+
allocations[index]++;
|
|
786
|
+
remainder--;
|
|
787
|
+
}
|
|
788
|
+
}
|
|
789
|
+
}
|
|
790
|
+
return allocations;
|
|
791
|
+
}
|
|
792
|
+
__name(allocatePayloadBudgets, "allocatePayloadBudgets");
|
|
793
|
+
function projectContent(original) {
|
|
794
|
+
if (original.length > MAX_CANONICAL_TEXT_BLOCKS) return fallbackContent();
|
|
795
|
+
const skeletonBytes = contentSkeletonBytes(original.length);
|
|
796
|
+
const availablePayloadBytes = ACP_TOOL_RESULT_TEXT_JSON_BYTE_BUDGET - skeletonBytes;
|
|
797
|
+
let remainingPayloadBytes = availablePayloadBytes;
|
|
798
|
+
let needsProjection = false;
|
|
799
|
+
for (const block of original) {
|
|
800
|
+
const payloadBytes2 = jsonStringPayloadByteLength(
|
|
801
|
+
block.content.text,
|
|
802
|
+
remainingPayloadBytes
|
|
803
|
+
);
|
|
804
|
+
if (payloadBytes2 > remainingPayloadBytes) {
|
|
805
|
+
needsProjection = true;
|
|
806
|
+
break;
|
|
807
|
+
}
|
|
808
|
+
remainingPayloadBytes -= payloadBytes2;
|
|
809
|
+
}
|
|
810
|
+
if (!needsProjection) return original;
|
|
811
|
+
const baseScans = original.map(
|
|
812
|
+
(block) => jsonStringPayloadByteLength(
|
|
813
|
+
block.content.text,
|
|
814
|
+
TRUNCATION_MARKER_PAYLOAD_BYTES
|
|
815
|
+
)
|
|
816
|
+
);
|
|
817
|
+
const basePayloadBytes = baseScans.map(
|
|
818
|
+
(bytes) => Math.min(bytes, TRUNCATION_MARKER_PAYLOAD_BYTES)
|
|
819
|
+
);
|
|
820
|
+
const baseTotal = basePayloadBytes.reduce((sum, bytes) => sum + bytes, 0);
|
|
821
|
+
if (baseTotal > availablePayloadBytes) return fallbackContent();
|
|
822
|
+
const payloadBytes = original.map((block, index) => {
|
|
823
|
+
if (baseScans[index] <= TRUNCATION_MARKER_PAYLOAD_BYTES) {
|
|
824
|
+
return baseScans[index];
|
|
825
|
+
}
|
|
826
|
+
const maximumAllocation = availablePayloadBytes - baseTotal + basePayloadBytes[index];
|
|
827
|
+
const bytes = jsonStringPayloadByteLength(
|
|
828
|
+
block.content.text,
|
|
829
|
+
maximumAllocation
|
|
830
|
+
);
|
|
831
|
+
return bytes <= maximumAllocation ? bytes : maximumAllocation + 1;
|
|
832
|
+
});
|
|
833
|
+
const allocations = allocatePayloadBudgets(
|
|
834
|
+
payloadBytes,
|
|
835
|
+
availablePayloadBytes
|
|
836
|
+
);
|
|
837
|
+
if (!allocations) return fallbackContent();
|
|
838
|
+
const projected = original.map((block, index) => {
|
|
839
|
+
if (payloadBytes[index] <= allocations[index]) return block;
|
|
840
|
+
return createTextBlock(
|
|
841
|
+
truncateStringPayload(
|
|
842
|
+
block.content.text,
|
|
843
|
+
payloadBytes[index],
|
|
844
|
+
allocations[index]
|
|
845
|
+
)
|
|
846
|
+
);
|
|
847
|
+
});
|
|
848
|
+
return jsonByteLength(projected) <= ACP_TOOL_RESULT_TEXT_JSON_BYTE_BUDGET ? projected : fallbackContent();
|
|
849
|
+
}
|
|
850
|
+
__name(projectContent, "projectContent");
|
|
851
|
+
function projectRawOutput(value) {
|
|
852
|
+
const payloadBudget = ACP_TOOL_RESULT_TEXT_JSON_BYTE_BUDGET - JSON_STRING_DELIMITER_BYTES;
|
|
853
|
+
const payloadBytes = jsonStringPayloadByteLength(value, payloadBudget);
|
|
854
|
+
if (payloadBytes <= payloadBudget) return value;
|
|
855
|
+
const projected = truncateStringPayload(value, payloadBytes, payloadBudget);
|
|
856
|
+
return jsonByteLength(projected) <= ACP_TOOL_RESULT_TEXT_JSON_BYTE_BUDGET ? projected : ACP_TOOL_RESULT_TEXT_TRUNCATION_MARKER;
|
|
857
|
+
}
|
|
858
|
+
__name(projectRawOutput, "projectRawOutput");
|
|
859
|
+
function a2uiMeta(meta) {
|
|
860
|
+
if (!meta) return void 0;
|
|
861
|
+
const toolName = typeof meta["toolName"] === "string" ? meta["toolName"] : void 0;
|
|
862
|
+
const serverId = typeof meta["serverId"] === "string" ? meta["serverId"] : void 0;
|
|
863
|
+
return toolName === void 0 && serverId === void 0 ? void 0 : {
|
|
864
|
+
...toolName === void 0 ? {} : { toolName },
|
|
865
|
+
...serverId === void 0 ? {} : { serverId }
|
|
866
|
+
};
|
|
867
|
+
}
|
|
868
|
+
__name(a2uiMeta, "a2uiMeta");
|
|
869
|
+
function projectAcpToolResultUpdate(update) {
|
|
870
|
+
const record = update;
|
|
871
|
+
if (record["sessionUpdate"] !== "tool_call_update") return update;
|
|
872
|
+
const meta = isObjectRecord(record["_meta"]) ? record["_meta"] : void 0;
|
|
873
|
+
if (isA2uiToolMeta(a2uiMeta(meta))) return update;
|
|
874
|
+
const content = canonicalTextBlocks(record["content"]);
|
|
875
|
+
const rawOutput = record["rawOutput"];
|
|
876
|
+
if (content?.length === 1 && typeof rawOutput === "string" && rawOutput === content[0].content.text) {
|
|
877
|
+
const projectedContent2 = projectContent(content);
|
|
878
|
+
if (projectedContent2 === content) return update;
|
|
879
|
+
const projectedText = projectedContent2[0].content.text;
|
|
880
|
+
return {
|
|
881
|
+
...record,
|
|
882
|
+
content: projectedContent2,
|
|
883
|
+
rawOutput: projectedText
|
|
884
|
+
};
|
|
885
|
+
}
|
|
886
|
+
const projectedContent = content ? projectContent(content) : void 0;
|
|
887
|
+
const projectedRawOutput = typeof rawOutput === "string" ? projectRawOutput(rawOutput) : void 0;
|
|
888
|
+
const contentChanged = projectedContent !== void 0 && projectedContent !== content;
|
|
889
|
+
const rawOutputChanged = projectedRawOutput !== void 0 && projectedRawOutput !== rawOutput;
|
|
890
|
+
if (!contentChanged && !rawOutputChanged) return update;
|
|
891
|
+
return {
|
|
892
|
+
...record,
|
|
893
|
+
...contentChanged ? { content: projectedContent } : {},
|
|
894
|
+
...rawOutputChanged ? { rawOutput: projectedRawOutput } : {}
|
|
895
|
+
};
|
|
896
|
+
}
|
|
897
|
+
__name(projectAcpToolResultUpdate, "projectAcpToolResultUpdate");
|
|
898
|
+
|
|
899
|
+
// packages/cli/src/acp-integration/session/history-replay-page.ts
|
|
569
900
|
function createReplayCumulativeUsage() {
|
|
570
901
|
return {
|
|
571
902
|
promptTokens: 0,
|
|
@@ -582,27 +913,27 @@ function copyCumulativeUsage(target, source) {
|
|
|
582
913
|
target.apiTimeMs = source.apiTimeMs;
|
|
583
914
|
}
|
|
584
915
|
__name(copyCumulativeUsage, "copyCumulativeUsage");
|
|
585
|
-
function
|
|
916
|
+
function isObjectRecord2(value) {
|
|
586
917
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
587
918
|
}
|
|
588
|
-
__name(
|
|
919
|
+
__name(isObjectRecord2, "isObjectRecord");
|
|
589
920
|
function isCumulativeUsage(value) {
|
|
590
|
-
if (!
|
|
921
|
+
if (!isObjectRecord2(value)) return false;
|
|
591
922
|
return typeof value["promptTokens"] === "number" && Number.isFinite(value["promptTokens"]) && typeof value["cachedTokens"] === "number" && Number.isFinite(value["cachedTokens"]) && typeof value["candidateTokens"] === "number" && Number.isFinite(value["candidateTokens"]) && typeof value["apiTimeMs"] === "number" && Number.isFinite(value["apiTimeMs"]);
|
|
592
923
|
}
|
|
593
924
|
__name(isCumulativeUsage, "isCumulativeUsage");
|
|
594
925
|
function isPendingReplayToolCall(value) {
|
|
595
|
-
if (!
|
|
926
|
+
if (!isObjectRecord2(value)) return false;
|
|
596
927
|
return typeof value["callId"] === "string" && typeof value["toolName"] === "string" && (value["timestamp"] === void 0 || typeof value["timestamp"] === "string") && typeof value["recordId"] === "string";
|
|
597
928
|
}
|
|
598
929
|
__name(isPendingReplayToolCall, "isPendingReplayToolCall");
|
|
599
930
|
function isCurrentPendingReplayToolCall(value) {
|
|
600
|
-
if (!
|
|
931
|
+
if (!isObjectRecord2(value)) return false;
|
|
601
932
|
return typeof value["callId"] === "string" && typeof value["toolName"] === "string" && typeof value["sourceRecordId"] === "string" && (value["sourceTimestamp"] === void 0 || typeof value["sourceTimestamp"] === "string");
|
|
602
933
|
}
|
|
603
934
|
__name(isCurrentPendingReplayToolCall, "isCurrentPendingReplayToolCall");
|
|
604
935
|
function parseTranscriptReplayState(replay, logger) {
|
|
605
|
-
if (!
|
|
936
|
+
if (!isObjectRecord2(replay)) {
|
|
606
937
|
return {
|
|
607
938
|
pendingToolCalls: [],
|
|
608
939
|
cumulativeUsage: createReplayCumulativeUsage()
|
|
@@ -650,12 +981,13 @@ function replayContext(sessionId, updates, cumulativeUsage, config) {
|
|
|
650
981
|
return {
|
|
651
982
|
sessionId,
|
|
652
983
|
sendUpdate: /* @__PURE__ */ __name(async (update) => {
|
|
984
|
+
const projectedUpdate = projectAcpToolResultUpdate(update);
|
|
653
985
|
if (activeRecordId === null) {
|
|
654
|
-
updates.push(
|
|
986
|
+
updates.push(projectedUpdate);
|
|
655
987
|
return;
|
|
656
988
|
}
|
|
657
|
-
const record =
|
|
658
|
-
const meta =
|
|
989
|
+
const record = projectedUpdate;
|
|
990
|
+
const meta = isObjectRecord2(record["_meta"]) ? record["_meta"] : {};
|
|
659
991
|
updates.push({
|
|
660
992
|
...record,
|
|
661
993
|
_meta: { ...meta, "qwen.session.recordId": activeRecordId }
|
|
@@ -701,7 +1033,7 @@ function liftSessionUpdateTimestamps(updates) {
|
|
|
701
1033
|
return updates.map((update) => {
|
|
702
1034
|
const record = update;
|
|
703
1035
|
const meta = record["_meta"];
|
|
704
|
-
const timestamp =
|
|
1036
|
+
const timestamp = isObjectRecord2(meta) ? meta["timestamp"] : void 0;
|
|
705
1037
|
return typeof timestamp === "number" || typeof timestamp === "string" ? { ...record, timestamp } : update;
|
|
706
1038
|
});
|
|
707
1039
|
}
|
|
@@ -711,7 +1043,8 @@ async function replayTranscriptRecordPage({
|
|
|
711
1043
|
page,
|
|
712
1044
|
config,
|
|
713
1045
|
encodeCursor,
|
|
714
|
-
logger
|
|
1046
|
+
logger,
|
|
1047
|
+
finalizeDangling = true
|
|
715
1048
|
}) {
|
|
716
1049
|
const state = parseTranscriptReplayState(page.replay, logger);
|
|
717
1050
|
const updates = [];
|
|
@@ -723,7 +1056,7 @@ async function replayTranscriptRecordPage({
|
|
|
723
1056
|
try {
|
|
724
1057
|
const replayPageState = await replayer.replayPage(page.records, {
|
|
725
1058
|
pendingToolCalls: page.direction === "backward" ? [] : state.pendingToolCalls,
|
|
726
|
-
finalizeDangling: page.direction === "backward" || !page.hasMore,
|
|
1059
|
+
finalizeDangling: finalizeDangling && (page.direction === "backward" || !page.hasMore),
|
|
727
1060
|
gaps: page.gaps,
|
|
728
1061
|
...state.goalState ? { goalState: state.goalState } : {}
|
|
729
1062
|
});
|
|
@@ -822,6 +1155,10 @@ function normalizeChannelDelivery(deliveryId, delivery, text) {
|
|
|
822
1155
|
__name(normalizeChannelDelivery, "normalizeChannelDelivery");
|
|
823
1156
|
|
|
824
1157
|
export {
|
|
1158
|
+
LIVE_SESSION_SOURCE_PREFIX,
|
|
1159
|
+
isReservedLiveSessionSource,
|
|
1160
|
+
isCompatibleLiveSessionSource,
|
|
1161
|
+
readLoadableLiveConversationMetadata,
|
|
825
1162
|
createWorkspaceMemoryExtractionErrorLogger,
|
|
826
1163
|
extractRememberErrorCode,
|
|
827
1164
|
workspaceMemoryFailureCode,
|
|
@@ -843,6 +1180,7 @@ export {
|
|
|
843
1180
|
parseChannelDelivery,
|
|
844
1181
|
normalizeChannelDeliveryText,
|
|
845
1182
|
normalizeChannelDelivery,
|
|
1183
|
+
projectAcpToolResultUpdate,
|
|
846
1184
|
createReplayCumulativeUsage,
|
|
847
1185
|
copyCumulativeUsage,
|
|
848
1186
|
collectHistoryReplayUpdates,
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
t
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-F4SQY4RB.js";
|
|
6
6
|
import {
|
|
7
7
|
SessionReferenceService,
|
|
8
8
|
SessionService,
|
|
9
9
|
readManyFiles,
|
|
10
10
|
stripTerminalControlSequences
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-I3LJQR5I.js";
|
|
12
12
|
import {
|
|
13
13
|
emptyMcpResourceText,
|
|
14
14
|
formatMcpResourceContents,
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
} from "./chunk-ZPJWUGCS.js";
|
|
17
17
|
import {
|
|
18
18
|
shouldRunVisionBridge
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-FTJUO7R2.js";
|
|
20
20
|
import {
|
|
21
21
|
Storage,
|
|
22
22
|
getErrorMessage,
|
|
@@ -24,7 +24,7 @@ import {
|
|
|
24
24
|
isSubpath,
|
|
25
25
|
unescapePath,
|
|
26
26
|
unescapeShellSpecials
|
|
27
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-OIVKILPI.js";
|
|
28
28
|
import {
|
|
29
29
|
init_esbuild_shims
|
|
30
30
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
import {
|
|
4
4
|
getInboxesDir
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-7MH4J33A.js";
|
|
6
6
|
import {
|
|
7
7
|
require_proper_lockfile
|
|
8
8
|
} from "./chunk-KRXPRVGL.js";
|
|
@@ -11,11 +11,11 @@ import {
|
|
|
11
11
|
} from "./chunk-VGC4I5JJ.js";
|
|
12
12
|
import {
|
|
13
13
|
atomicWriteJSON
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-FOGU3LJX.js";
|
|
15
15
|
import {
|
|
16
16
|
createDebugLogger,
|
|
17
17
|
isNodeError
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-OIVKILPI.js";
|
|
19
19
|
import {
|
|
20
20
|
init_esbuild_shims
|
|
21
21
|
} from "./chunk-5O2XNYP6.js";
|
|
@@ -75,7 +75,7 @@ var LOCK_OPTIONS = {
|
|
|
75
75
|
// Stale locks from crashed processes are expected in multi-agent
|
|
76
76
|
// scenarios; log at debug level for traceability without noise.
|
|
77
77
|
onCompromised: /* @__PURE__ */ __name((err) => {
|
|
78
|
-
debug.debug("mailbox lock compromised:", err
|
|
78
|
+
debug.debug("mailbox lock compromised:", err);
|
|
79
79
|
}, "onCompromised")
|
|
80
80
|
};
|
|
81
81
|
var inboxLocks = /* @__PURE__ */ new Map();
|
|
@@ -106,7 +106,11 @@ async function withInboxLock(inboxPath, fn) {
|
|
|
106
106
|
try {
|
|
107
107
|
return await fn();
|
|
108
108
|
} finally {
|
|
109
|
-
|
|
109
|
+
try {
|
|
110
|
+
await release();
|
|
111
|
+
} catch (error) {
|
|
112
|
+
debug.debug("Failed to release mailbox lock:", error);
|
|
113
|
+
}
|
|
110
114
|
}
|
|
111
115
|
});
|
|
112
116
|
}
|
|
@@ -79,6 +79,14 @@ function logSlowClientWarning(data) {
|
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
81
|
__name(logSlowClientWarning, "logSlowClientWarning");
|
|
82
|
+
function subscriberDiagnosticHandled(sub, diagnostic) {
|
|
83
|
+
try {
|
|
84
|
+
return sub.onSubscriberDiagnostic?.(diagnostic) === true;
|
|
85
|
+
} catch {
|
|
86
|
+
return false;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
__name(subscriberDiagnosticHandled, "subscriberDiagnosticHandled");
|
|
82
90
|
var SubscriberLimitExceededError = class extends Error {
|
|
83
91
|
static {
|
|
84
92
|
__name(this, "SubscriberLimitExceededError");
|
|
@@ -222,7 +230,17 @@ var EventBus = class {
|
|
|
222
230
|
maxQueuedBytes: sub.maxQueuedBytes,
|
|
223
231
|
...pushResult.reason === "queue_bytes_overflow" ? { eventBytes: pushResult.eventBytes } : {}
|
|
224
232
|
};
|
|
225
|
-
|
|
233
|
+
const evictionDiagnostic = {
|
|
234
|
+
type: "client_evicted",
|
|
235
|
+
data: {
|
|
236
|
+
...evictionData,
|
|
237
|
+
triggerEventType: event.type,
|
|
238
|
+
triggerEventBytes: eventBytes
|
|
239
|
+
}
|
|
240
|
+
};
|
|
241
|
+
if (!subscriberDiagnosticHandled(sub, evictionDiagnostic)) {
|
|
242
|
+
logSubscriberEvicted(evictionData);
|
|
243
|
+
}
|
|
226
244
|
const evictionFrame = {
|
|
227
245
|
v: EVENT_SCHEMA_VERSION,
|
|
228
246
|
type: "client_evicted",
|
|
@@ -254,7 +272,17 @@ var EventBus = class {
|
|
|
254
272
|
maxQueuedBytes: sub.maxQueuedBytes,
|
|
255
273
|
threshold
|
|
256
274
|
};
|
|
257
|
-
|
|
275
|
+
const warningDiagnostic = {
|
|
276
|
+
type: "slow_client_warning",
|
|
277
|
+
data: {
|
|
278
|
+
...warningData,
|
|
279
|
+
triggerEventType: event.type,
|
|
280
|
+
triggerEventBytes: eventBytes
|
|
281
|
+
}
|
|
282
|
+
};
|
|
283
|
+
if (!subscriberDiagnosticHandled(sub, warningDiagnostic)) {
|
|
284
|
+
logSlowClientWarning(warningData);
|
|
285
|
+
}
|
|
258
286
|
const warningFrame = {
|
|
259
287
|
v: EVENT_SCHEMA_VERSION,
|
|
260
288
|
type: "slow_client_warning",
|
|
@@ -301,6 +329,7 @@ var EventBus = class {
|
|
|
301
329
|
warnBytesThreshold: WARN_THRESHOLD_RATIO * this.maxQueuedBytes,
|
|
302
330
|
warnBytesResetThreshold: WARN_RESET_RATIO * this.maxQueuedBytes,
|
|
303
331
|
warned: false,
|
|
332
|
+
onSubscriberDiagnostic: opts.onSubscriberDiagnostic,
|
|
304
333
|
dispose: /* @__PURE__ */ __name(() => {
|
|
305
334
|
}, "dispose")
|
|
306
335
|
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
// Force strict mode and setup for ESM
|
|
2
|
+
"use strict";
|
|
3
|
+
import {
|
|
4
|
+
init_esbuild_shims
|
|
5
|
+
} from "./chunk-5O2XNYP6.js";
|
|
6
|
+
|
|
7
|
+
// packages/cli/src/serve/live/types.ts
|
|
8
|
+
init_esbuild_shims();
|
|
9
|
+
var LIVE_HOST_PROTOCOL_VERSION = 6;
|
|
10
|
+
var LIVE_HOST_BUNDLE_ID = "com.alibaba.qwen-code.live-host";
|
|
11
|
+
var LIVE_INPUT_AUDIO_EPOCH_BYTES = 8;
|
|
12
|
+
|
|
13
|
+
export {
|
|
14
|
+
LIVE_HOST_PROTOCOL_VERSION,
|
|
15
|
+
LIVE_HOST_BUNDLE_ID,
|
|
16
|
+
LIVE_INPUT_AUDIO_EPOCH_BYTES
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* @license
|
|
20
|
+
* Copyright 2026 Qwen Team
|
|
21
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
22
|
+
*/
|