chainlesschain 0.166.99 → 0.166.101
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/README.md +7 -8
- package/package.json +2 -2
- package/src/assets/linux-subreaper/linux-arm64/manifest.json +1 -1
- package/src/assets/linux-subreaper/linux-x64/manifest.json +1 -1
- package/src/assets/web-panel/assets/{AIOps-BUgaCgVU.js → AIOps-BjBS_29I.js} +1 -1
- package/src/assets/web-panel/assets/{ActionButton-b0MpUSSZ.js → ActionButton-CUnnQUaj.js} +1 -1
- package/src/assets/web-panel/assets/{Analytics-hbXTvHqO.js → Analytics-BqYZxgnY.js} +3 -3
- package/src/assets/web-panel/assets/{AppLayout-CLQoAVu4.js → AppLayout-m8B886ka.js} +4 -4
- package/src/assets/web-panel/assets/{Artifacts-ytHzl2L2.js → Artifacts-JEOxU3Ug.js} +1 -1
- package/src/assets/web-panel/assets/{Audit-BuhkLm0C.js → Audit-DAXS5c9J.js} +1 -1
- package/src/assets/web-panel/assets/{BackgroundAgents-CS81hxZV.js → BackgroundAgents-e3a9XHw3.js} +1 -1
- package/src/assets/web-panel/assets/{Backup-DzR-_Qvi.js → Backup-D3Qmp68h.js} +1 -1
- package/src/assets/web-panel/assets/{BaseInput-r8Ku_lYw.js → BaseInput-C7CXyiUl.js} +1 -1
- package/src/assets/web-panel/assets/{Chat-C3Uxtoaa.js → Chat-2AHlAGi8.js} +6 -6
- package/src/assets/web-panel/assets/ChatBubbleRenderer-D3KsyCUV.js +1 -0
- package/src/assets/web-panel/assets/{Checkbox-BnG2P5yc.js → Checkbox-YfBuQlBH.js} +1 -1
- package/src/assets/web-panel/assets/{Codegen-BdgU6HZy.js → Codegen-DCCQDfTL.js} +1 -1
- package/src/assets/web-panel/assets/{Col-DT8t9wmf.js → Col-03i2WfrV.js} +1 -1
- package/src/assets/web-panel/assets/{Community-ChkxR5oe.js → Community-CJQIpng6.js} +1 -1
- package/src/assets/web-panel/assets/{Compact-DIwLeTk3.js → Compact-CCtcQ2pq.js} +1 -1
- package/src/assets/web-panel/assets/{Compliance-CAqzGLvW.js → Compliance-Vxl7ZszJ.js} +1 -1
- package/src/assets/web-panel/assets/{Cowork-Bb3jejMG.js → Cowork-DN-BwA8I.js} +2 -2
- package/src/assets/web-panel/assets/{Cron-BYRkZLta.js → Cron-Dc2Q46X7.js} +2 -2
- package/src/assets/web-panel/assets/{Crosschain-BD6z227t.js → Crosschain-CQCblsl-.js} +1 -1
- package/src/assets/web-panel/assets/{DID-DA3G5Wgo.js → DID-YYvqUR8C.js} +2 -2
- package/src/assets/web-panel/assets/{Dashboard-yaZePHOu.js → Dashboard-Cafy3DZT.js} +2 -2
- package/src/assets/web-panel/assets/{Dropdown-BqY5MBx2.js → Dropdown-BOyYpIpv.js} +1 -1
- package/src/assets/web-panel/assets/{EmailListRenderer-cIWwOgHm.js → EmailListRenderer-B7NYjc1j.js} +1 -1
- package/src/assets/web-panel/assets/{EvolutionSettings-zvV6ymca.js → EvolutionSettings-C5wfxztf.js} +1 -1
- package/src/assets/web-panel/assets/{FamilyGuardDashboard-CAmh1U2b.js → FamilyGuardDashboard-aA7KnDGK.js} +1 -1
- package/src/assets/web-panel/assets/{Federation-5qd2LCg8.js → Federation-DlgXUu1L.js} +1 -1
- package/src/assets/web-panel/assets/{FormItemContext-Bdkj1sRJ.js → FormItemContext-B5YsrLDg.js} +1 -1
- package/src/assets/web-panel/assets/{GenericCardRenderer-B-gWN2P3.js → GenericCardRenderer-DaWojPFw.js} +1 -1
- package/src/assets/web-panel/assets/{Git-BEMh_NGd.js → Git-dkhh6Fx2.js} +2 -2
- package/src/assets/web-panel/assets/{Governance-qLGvA2Hw.js → Governance-Cz6vmkjc.js} +1 -1
- package/src/assets/web-panel/assets/{Inference-DblBwYuW.js → Inference-DWt0hbh8.js} +1 -1
- package/src/assets/web-panel/assets/{KnowledgeGraph-BISegVD_.js → KnowledgeGraph-BZJ0Z-nL.js} +1 -1
- package/src/assets/web-panel/assets/Logs-BaBBmL1A.js +2 -0
- package/src/assets/web-panel/assets/MarkdownRenderer-C1yByobo.js +1 -0
- package/src/assets/web-panel/assets/{Marketplace-CHKXMOkH.js → Marketplace-ct8sgQ0s.js} +1 -1
- package/src/assets/web-panel/assets/{McpTools-B5G1elqd.js → McpTools-CXKCRGYQ.js} +3 -3
- package/src/assets/web-panel/assets/{Memory-O5Ib0uTR.js → Memory-O7ZwlS6a.js} +2 -2
- package/src/assets/web-panel/assets/{MobileBridge-BaGYL7rT.js → MobileBridge-By12C-eC.js} +1 -1
- package/src/assets/web-panel/assets/MobileProjects-Ba-EVdex.js +1 -0
- package/src/assets/web-panel/assets/{Mtc-CNjJ97jg.js → Mtc-g-932zV2.js} +2 -2
- package/src/assets/web-panel/assets/{MtcAudit-DjBN-Wqz.js → MtcAudit-BW8hB0ly.js} +4 -4
- package/src/assets/web-panel/assets/{Multisig-B850R9lO.js → Multisig-zspLaMbT.js} +3 -3
- package/src/assets/web-panel/assets/{NLProgramming-Bn8sbFfV.js → NLProgramming-dJeUPDoq.js} +1 -1
- package/src/assets/web-panel/assets/{Notes-BpLmMp3Q.js → Notes-C4msiRQL.js} +3 -3
- package/src/assets/web-panel/assets/{NotificationSettings-Dbk97rjb.js → NotificationSettings-MOCHM-qg.js} +1 -1
- package/src/assets/web-panel/assets/{OrderTableRenderer-BOBX_I72.js → OrderTableRenderer-CX0T66NM.js} +1 -1
- package/src/assets/web-panel/assets/{Organization-B45DpOuE.js → Organization-DOZurBfk.js} +4 -4
- package/src/assets/web-panel/assets/{Overflow-DmKH7eer.js → Overflow-qOT9BhUp.js} +1 -1
- package/src/assets/web-panel/assets/{P2P-CC4FaXTl.js → P2P-BMoy7Eo4.js} +2 -2
- package/src/assets/web-panel/assets/{PdhVaultBrowser-C2SgP4PI.js → PdhVaultBrowser-ByyV1q-D.js} +3 -3
- package/src/assets/web-panel/assets/{Permissions-BQB4QFj_.js → Permissions-6Qyro4ye.js} +4 -4
- package/src/assets/web-panel/assets/{PersonalDataHub-Dy6GGpn4.js → PersonalDataHub-DR3DRNSX.js} +4 -4
- package/src/assets/web-panel/assets/{Pipeline-B9HB5pRc.js → Pipeline-Cr6TTdud.js} +1 -1
- package/src/assets/web-panel/assets/{Privacy-D7pOmg-p.js → Privacy-B70otG0l.js} +1 -1
- package/src/assets/web-panel/assets/{ProjectInit-DglBqvec.js → ProjectInit-BHCqxoSk.js} +2 -2
- package/src/assets/web-panel/assets/{ProjectSettings-Bho22znM.js → ProjectSettings-B80GZpZk.js} +2 -2
- package/src/assets/web-panel/assets/{Projects-C0bSuM8U.js → Projects-cq-b9-fQ.js} +1 -1
- package/src/assets/web-panel/assets/{Providers-BgAgo1Yr.js → Providers-dsVTimHa.js} +1 -1
- package/src/assets/web-panel/assets/{QrScannerModal-C2fBjCC8.js → QrScannerModal-DRJ8YepZ.js} +1 -1
- package/src/assets/web-panel/assets/{QuickAsk-C8MiF-rk.js → QuickAsk-BSXdEjIB.js} +1 -1
- package/src/assets/web-panel/assets/{Recommend-D_TzHdQf.js → Recommend-CQLJGyKC.js} +1 -1
- package/src/assets/web-panel/assets/{RemoteSession-BHO7b6xE.js → RemoteSession-BF9WUFVZ.js} +2 -2
- package/src/assets/web-panel/assets/{Reputation-BPxNmNhD.js → Reputation-Cy9o5tvW.js} +1 -1
- package/src/assets/web-panel/assets/{Row-fwhot5Bk.js → Row-BP346_3b.js} +1 -1
- package/src/assets/web-panel/assets/{RssFeed-CZbD1B-5.js → RssFeed-BKulxXf3.js} +3 -3
- package/src/assets/web-panel/assets/{Search-BRs6YpAE.js → Search-EemQj2Dv.js} +1 -1
- package/src/assets/web-panel/assets/{Security-CB344tKC.js → Security-DcWPAwwk.js} +4 -4
- package/src/assets/web-panel/assets/{Services-Beo-7fEl.js → Services-Bltqciay.js} +2 -2
- package/src/assets/web-panel/assets/{Skeleton-CDXx96vD.js → Skeleton-BwRyOGY8.js} +1 -1
- package/src/assets/web-panel/assets/{Skills-b-mQTJK4.js → Skills-D98qlvpJ.js} +1 -1
- package/src/assets/web-panel/assets/{Sla-BvjP-IS9.js → Sla-BUTtBMY0.js} +1 -1
- package/src/assets/web-panel/assets/{SpeechSettings-C6wsV-cO.js → SpeechSettings-C7kcY_98.js} +1 -1
- package/src/assets/web-panel/assets/{SyncSettings-BQZoko-e.js → SyncSettings-Bsk6lKvT.js} +2 -2
- package/src/assets/web-panel/assets/{Tasks-6Z0rJJVO.js → Tasks-DvSrtz0P.js} +1 -1
- package/src/assets/web-panel/assets/{Templates-Cc9IXtEQ.js → Templates-BUM6LwPs.js} +1 -1
- package/src/assets/web-panel/assets/{Tenant-BLc7AjOI.js → Tenant-D9TkOm7z.js} +1 -1
- package/src/assets/web-panel/assets/{Terminal-CUN49v85.js → Terminal-CP8ZVErN.js} +2 -2
- package/src/assets/web-panel/assets/{TimelineRenderer-CX-SksHN.js → TimelineRenderer-V3SoKZ1T.js} +1 -1
- package/src/assets/web-panel/assets/{Tokens-Btrm0-rK.js → Tokens-CCRlUTOA.js} +1 -1
- package/src/assets/web-panel/assets/{Trigger-CIboUvKe.js → Trigger-CznUcPme.js} +1 -1
- package/src/assets/web-panel/assets/{Trust-Rv9jEs5v.js → Trust-D1GIk_NF.js} +1 -1
- package/src/assets/web-panel/assets/{UkeySign-B_xomdD5.js → UkeySign-DHtvtyC-.js} +1 -1
- package/src/assets/web-panel/assets/{VideoEditing-CrvWeMow.js → VideoEditing-CVxdaJIq.js} +1 -1
- package/src/assets/web-panel/assets/{Wallet-BjvWgk_7.js → Wallet-D221OjyE.js} +4 -4
- package/src/assets/web-panel/assets/{WebAuthn-CwfpFw92.js → WebAuthn-Cw0-ESsq.js} +5 -5
- package/src/assets/web-panel/assets/{WorkflowEditor-Dkk2QsOe.js → WorkflowEditor-ZYScrBx3.js} +1 -1
- package/src/assets/web-panel/assets/{chat-Dah1DVes.js → chat-BU0e1obR.js} +1 -1
- package/src/assets/web-panel/assets/{colors-JEpgQ10k.js → colors-gzYweuha.js} +1 -1
- package/src/assets/web-panel/assets/{compact-item--DuG_cxf.js → compact-item-ChAXal_k.js} +1 -1
- package/src/assets/web-panel/assets/{createContext-BJ_GZvon.js → createContext-of3FolD7.js} +1 -1
- package/src/assets/web-panel/assets/devWarning-Pa13TVrO.js +1 -0
- package/src/assets/web-panel/assets/{hasIn-yZRLDmWK.js → hasIn-4PsK_Kx8.js} +1 -1
- package/src/assets/web-panel/assets/{index-DQ4Fch3e.js → index-1dzYRBbg.js} +1 -1
- package/src/assets/web-panel/assets/{index-L9CFyRIi.js → index-B5L7zddz.js} +1 -1
- package/src/assets/web-panel/assets/{index-DxnkldGo.js → index-BOeX7BzS.js} +1 -1
- package/src/assets/web-panel/assets/{index-D6Le2m3d.js → index-BdxRVNPY.js} +1 -1
- package/src/assets/web-panel/assets/{index-DaDLWIWo.js → index-BfI4dXbi.js} +1 -1
- package/src/assets/web-panel/assets/{index-o2qO_dYf.js → index-Bftq5rJR.js} +1 -1
- package/src/assets/web-panel/assets/index-BhQg-v6V.js +1 -0
- package/src/assets/web-panel/assets/{index-DhX48E81.js → index-By-pper5.js} +1 -1
- package/src/assets/web-panel/assets/{index-Bdg_nWD1.js → index-CCLsbul3.js} +1 -1
- package/src/assets/web-panel/assets/{index-cHx5KzUt.js → index-CGFL59q4.js} +1 -1
- package/src/assets/web-panel/assets/{index-DemMuw7n.js → index-CHv_63Cp.js} +1 -1
- package/src/assets/web-panel/assets/{index-DZBesaCN.js → index-CO2owKe0.js} +1 -1
- package/src/assets/web-panel/assets/{index-CxB49Mow.js → index-CeEE_SGZ.js} +1 -1
- package/src/assets/web-panel/assets/{index-BKl40wrO.js → index-Cn1clrxx.js} +1 -1
- package/src/assets/web-panel/assets/{index-VIgVth92.js → index-Cx4Z6nUl.js} +1 -1
- package/src/assets/web-panel/assets/{index-kZE-K3ZO.js → index-CxzBcXOa.js} +1 -1
- package/src/assets/web-panel/assets/{index-rkvSOceQ.js → index-CyDQNprx.js} +1 -1
- package/src/assets/web-panel/assets/{index-Cmr0AzcK.js → index-D-Zss5KL.js} +1 -1
- package/src/assets/web-panel/assets/{index-DddwZCT9.js → index-D1PGrfHE.js} +1 -1
- package/src/assets/web-panel/assets/{index-BUjyj7qR.js → index-DDYj14Q4.js} +1 -1
- package/src/assets/web-panel/assets/{index-CjuD8smQ.js → index-DEB5fQqG.js} +1 -1
- package/src/assets/web-panel/assets/{index-asia_JPc.js → index-DEXBckNR.js} +1 -1
- package/src/assets/web-panel/assets/{index-DFJbJ8rs.js → index-DEzjUgkl.js} +1 -1
- package/src/assets/web-panel/assets/{index-CFj7ylAJ.js → index-DJVrzXtk.js} +1 -1
- package/src/assets/web-panel/assets/index-DUD5o-vW.js +1 -0
- package/src/assets/web-panel/assets/{index-DroaQypF.js → index-DZ0oKtBg.js} +1 -1
- package/src/assets/web-panel/assets/{index-DbMGGcpZ.js → index-D_5LTPMH.js} +1 -1
- package/src/assets/web-panel/assets/{index-IjOa5lYn.js → index-D_9k680X.js} +1 -1
- package/src/assets/web-panel/assets/{index-vdTrEOj7.js → index-D_ialOHx.js} +1 -1
- package/src/assets/web-panel/assets/{index-9L3Pg2tc.js → index-DjRAIRX7.js} +1 -1
- package/src/assets/web-panel/assets/{index-Dq-8PFhL.js → index-Djfgsjfy.js} +1 -1
- package/src/assets/web-panel/assets/{index-CJLz3SpM.js → index-DsoV9rzn.js} +1 -1
- package/src/assets/web-panel/assets/{index-BWkKE8Oj.js → index-Dy0ojH6G.js} +3 -3
- package/src/assets/web-panel/assets/{index-C8nXkCMf.js → index-E8oDMSAo.js} +1 -1
- package/src/assets/web-panel/assets/{index-C56b8e9s.js → index-Ef5YkVAn.js} +1 -1
- package/src/assets/web-panel/assets/{index-C6ohEAEV.js → index-Wr91cnWr.js} +1 -1
- package/src/assets/web-panel/assets/{index-1QZASeW1.js → index-cFkMIx1x.js} +1 -1
- package/src/assets/web-panel/assets/{index-BM7xJKGD.js → index-wo0De0iG.js} +1 -1
- package/src/assets/web-panel/assets/{index-CQedFuDw.js → index-yMf7zmWv.js} +1 -1
- package/src/assets/web-panel/assets/{initDefaultProps-anKyyjGc.js → initDefaultProps-D0Bx6pgr.js} +1 -1
- package/src/assets/web-panel/assets/{motion-Cqp0nx5A.js → motion-BnLuJqJ5.js} +1 -1
- package/src/assets/web-panel/assets/{move-Ca3mgkM2.js → move-Bxpq9xgR.js} +1 -1
- package/src/assets/web-panel/assets/{mtc-parser-BmwuhJ3z.js → mtc-parser-BdmrNhOs.js} +1 -1
- package/src/assets/web-panel/assets/{omit-C9Mf05WJ.js → omit-tjJD34BZ.js} +1 -1
- package/src/assets/web-panel/assets/{pickAttrs-2PbxB9Ds.js → pickAttrs-CMFzLt7b.js} +1 -1
- package/src/assets/web-panel/assets/{placementArrow-CTVbOFHt.js → placementArrow-BZf6O3cd.js} +1 -1
- package/src/assets/web-panel/assets/{responsiveObserve-Nrm8Vbmr.js → responsiveObserve-DFDLazsV.js} +1 -1
- package/src/assets/web-panel/assets/{slide-Dh4r1zqR.js → slide-CMbTvp4Y.js} +1 -1
- package/src/assets/web-panel/assets/{statusUtils-vzNoQL-r.js → statusUtils-FOan8MI7.js} +1 -1
- package/src/assets/web-panel/assets/{styleChecker-BXpGfNkI.js → styleChecker-DTABspd4.js} +1 -1
- package/src/assets/web-panel/assets/{useFlexGapSupport-CVWBRdhs.js → useFlexGapSupport-CNHXWBpY.js} +1 -1
- package/src/assets/web-panel/assets/{useFs-BJWMLffI.js → useFs-5K-c_RoL.js} +1 -1
- package/src/assets/web-panel/assets/{usePersonalDataHub-CWCe5VHG.js → usePersonalDataHub-Di0hL4G-.js} +1 -1
- package/src/assets/web-panel/assets/{vnode-D-NBEb8m.js → vnode-DTyDv4ja.js} +1 -1
- package/src/assets/web-panel/assets/{zoom-C0mnhfGf.js → zoom-ontRt8ft.js} +1 -1
- package/src/assets/web-panel/index.html +1 -1
- package/src/commands/eval.js +11 -8
- package/src/data/changelog.json +26 -0
- package/src/harness/provider-backed-compaction.js +13 -5
- package/src/harness/worktree-isolator.js +20 -8
- package/src/lib/chat-core.js +57 -25
- package/src/lib/context-memory-kernel/live-compaction.js +142 -61
- package/src/lib/eval/verify01-execution-window.js +70 -0
- package/src/lib/eval/verify01-execution.js +9 -1
- package/src/lib/eval/verify01-host-capture.js +6 -2
- package/src/lib/formal-budget-authority.js +533 -0
- package/src/lib/formal-budget-contract.js +609 -0
- package/src/lib/formal-budget-transport.js +345 -0
- package/src/lib/provider-http-error.js +16 -0
- package/src/lib/stream-retry.js +195 -1
- package/src/runtime/agent-core.js +272 -32
- package/src/runtime/headless-stream.js +136 -4
- package/src/assets/web-panel/assets/ChatBubbleRenderer-RvblDu77.js +0 -1
- package/src/assets/web-panel/assets/Logs-BD2UR7kE.js +0 -2
- package/src/assets/web-panel/assets/MarkdownRenderer-B-TlDCmr.js +0 -1
- package/src/assets/web-panel/assets/MobileProjects-Dsctbob8.js +0 -1
- package/src/assets/web-panel/assets/devWarning-B6kQEceX.js +0 -1
- package/src/assets/web-panel/assets/index-CSeiH6HA.js +0 -1
- package/src/assets/web-panel/assets/index-CayGTz6d.js +0 -1
|
@@ -3782,7 +3782,13 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
3782
3782
|
? (event) => {
|
|
3783
3783
|
try {
|
|
3784
3784
|
if (event.type === "token-usage") {
|
|
3785
|
-
|
|
3785
|
+
requireSynchronousRecoveryResult(
|
|
3786
|
+
store.appendTokenUsage(
|
|
3787
|
+
sessionId,
|
|
3788
|
+
projectRuntimeTokenUsage(event),
|
|
3789
|
+
),
|
|
3790
|
+
"appendTokenUsage",
|
|
3791
|
+
);
|
|
3786
3792
|
return;
|
|
3787
3793
|
}
|
|
3788
3794
|
const outcome =
|
|
@@ -4294,6 +4300,44 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
4294
4300
|
let usageUnknownEvent;
|
|
4295
4301
|
const compactionCallId = `compact-${++slashRequestSeq}`;
|
|
4296
4302
|
let compactionProviderStarted = false;
|
|
4303
|
+
let compatibilityResult = null;
|
|
4304
|
+
let settledCompactionUsage = null;
|
|
4305
|
+
let costExceeded = false;
|
|
4306
|
+
const settleCompactionUsage = (event) => {
|
|
4307
|
+
if (settledCompactionUsage) return;
|
|
4308
|
+
if (!compactionProviderStarted || event?.callId !== compactionCallId) {
|
|
4309
|
+
throw new Error("compaction usage does not match its provider call");
|
|
4310
|
+
}
|
|
4311
|
+
const projected = projectRuntimeTokenUsage({
|
|
4312
|
+
...event,
|
|
4313
|
+
source: "semantic-compaction",
|
|
4314
|
+
});
|
|
4315
|
+
try {
|
|
4316
|
+
persistUsageEvent?.({ type: "token-usage", ...projected });
|
|
4317
|
+
requireSynchronousRecoveryResult(
|
|
4318
|
+
recordSessionBudgetUsage(
|
|
4319
|
+
options.sessionBudget,
|
|
4320
|
+
projected,
|
|
4321
|
+
"headless semantic compaction usage settlement",
|
|
4322
|
+
),
|
|
4323
|
+
"recordUsage",
|
|
4324
|
+
);
|
|
4325
|
+
} catch (error) {
|
|
4326
|
+
// A completed provider call must not be reclassified or replayed
|
|
4327
|
+
// when its accounting write fails.
|
|
4328
|
+
throw markRuntimeLedgerPersistenceError(error);
|
|
4329
|
+
}
|
|
4330
|
+
settledCompactionUsage = Object.freeze({
|
|
4331
|
+
...projected,
|
|
4332
|
+
usage: Object.freeze(projected.usage),
|
|
4333
|
+
ledgerSettled: typeof persistUsageEvent === "function",
|
|
4334
|
+
});
|
|
4335
|
+
emit({ type: "token_usage", ...projected });
|
|
4336
|
+
if (costBudget) {
|
|
4337
|
+
costBudget.add(projected);
|
|
4338
|
+
costExceeded = costBudget.exceeded();
|
|
4339
|
+
}
|
|
4340
|
+
};
|
|
4297
4341
|
try {
|
|
4298
4342
|
const providerCompactionOptions = {
|
|
4299
4343
|
...(evolutionIngress === null ? {} : { evolutionIngress }),
|
|
@@ -4340,7 +4384,6 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
4340
4384
|
if (cutover.canonical) {
|
|
4341
4385
|
const { compactLiveMessagesCanonical } =
|
|
4342
4386
|
await import("../lib/context-memory-kernel/live-compaction.js");
|
|
4343
|
-
let compatibilityResult = null;
|
|
4344
4387
|
const canonical = await compactLiveMessagesCanonical(messages, {
|
|
4345
4388
|
compressor: {
|
|
4346
4389
|
maxTokens: Math.max(
|
|
@@ -4352,6 +4395,23 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
4352
4395
|
dropped,
|
|
4353
4396
|
providerCompactionOptions,
|
|
4354
4397
|
);
|
|
4398
|
+
if (
|
|
4399
|
+
compatibilityResult.usageEvent &&
|
|
4400
|
+
!compatibilityResult.usageUnknownEvent
|
|
4401
|
+
) {
|
|
4402
|
+
settleCompactionUsage(compatibilityResult.usageEvent);
|
|
4403
|
+
const settledStats = { ...compatibilityResult.stats };
|
|
4404
|
+
if (settledCompactionUsage.ledgerSettled) {
|
|
4405
|
+
settledStats.summaryCallId = compactionCallId;
|
|
4406
|
+
settledStats.summaryUsageLedgerSettled = true;
|
|
4407
|
+
} else {
|
|
4408
|
+
// Ordinary nonpersistent runs have no durable ledger to
|
|
4409
|
+
// attest. Keep their known usage without inventing one.
|
|
4410
|
+
delete settledStats.summaryCallId;
|
|
4411
|
+
delete settledStats.summaryUsageLedgerSettled;
|
|
4412
|
+
}
|
|
4413
|
+
return { ...compatibilityResult, stats: settledStats };
|
|
4414
|
+
}
|
|
4355
4415
|
return compatibilityResult;
|
|
4356
4416
|
},
|
|
4357
4417
|
},
|
|
@@ -4411,6 +4471,63 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
4411
4471
|
} catch (error) {
|
|
4412
4472
|
if (isAbortError(error) || options.signal?.aborted) throw error;
|
|
4413
4473
|
if (error?.runtimeLedgerPersistence === true) throw error;
|
|
4474
|
+
const { getRejectedCompactionUsage } =
|
|
4475
|
+
await import("../lib/context-memory-kernel/live-compaction.js");
|
|
4476
|
+
const rejectedUsage = getRejectedCompactionUsage(error);
|
|
4477
|
+
if (
|
|
4478
|
+
rejectedUsage &&
|
|
4479
|
+
settledCompactionUsage &&
|
|
4480
|
+
settledCompactionUsage.callId === compactionCallId &&
|
|
4481
|
+
(!rejectedUsage.callId ||
|
|
4482
|
+
rejectedUsage.callId === compactionCallId) &&
|
|
4483
|
+
(!rejectedUsage.receipt.callId ||
|
|
4484
|
+
rejectedUsage.receipt.callId === compactionCallId) &&
|
|
4485
|
+
rejectedUsage.provider === settledCompactionUsage.provider &&
|
|
4486
|
+
rejectedUsage.model === settledCompactionUsage.model &&
|
|
4487
|
+
JSON.stringify(rejectedUsage.usage) ===
|
|
4488
|
+
JSON.stringify(settledCompactionUsage.usage)
|
|
4489
|
+
) {
|
|
4490
|
+
emit({
|
|
4491
|
+
type: "compaction-degraded",
|
|
4492
|
+
code: error.code,
|
|
4493
|
+
reason: "canonical_compaction_plan_rejected",
|
|
4494
|
+
summaryMode: "none",
|
|
4495
|
+
});
|
|
4496
|
+
if (costExceeded) {
|
|
4497
|
+
sawError = true;
|
|
4498
|
+
emit({
|
|
4499
|
+
type: "cost_budget_exhausted",
|
|
4500
|
+
limit_usd: options.maxCostUsd,
|
|
4501
|
+
spent_usd: costBudget.spentUsd,
|
|
4502
|
+
session_id: sessionId,
|
|
4503
|
+
turn: turns,
|
|
4504
|
+
});
|
|
4505
|
+
break;
|
|
4506
|
+
}
|
|
4507
|
+
continue;
|
|
4508
|
+
}
|
|
4509
|
+
if (settledCompactionUsage) {
|
|
4510
|
+
// Only a kernel-owned precommit rejection permits continuing. A
|
|
4511
|
+
// commit failure may have changed durable state, but cannot erase
|
|
4512
|
+
// the provider usage that this host already settled.
|
|
4513
|
+
emit({
|
|
4514
|
+
type: "compaction-degraded",
|
|
4515
|
+
code: error.code,
|
|
4516
|
+
reason: "canonical_compaction_settlement_failed",
|
|
4517
|
+
summaryMode: "none",
|
|
4518
|
+
});
|
|
4519
|
+
emit({
|
|
4520
|
+
type: "result",
|
|
4521
|
+
subtype: "error_compaction_settlement",
|
|
4522
|
+
is_error: true,
|
|
4523
|
+
code: error.code || "CC_COMPACTION_SETTLEMENT_FAILED",
|
|
4524
|
+
error:
|
|
4525
|
+
"Compaction settlement failed; the paid compaction is not retried",
|
|
4526
|
+
session_id: sessionId,
|
|
4527
|
+
});
|
|
4528
|
+
sawError = true;
|
|
4529
|
+
break;
|
|
4530
|
+
}
|
|
4414
4531
|
if (error?.code === AGENT_EVOLUTION_INGRESS_FAILED_CODE) {
|
|
4415
4532
|
evolutionIngressFailed = true;
|
|
4416
4533
|
sawError = true;
|
|
@@ -4431,6 +4548,22 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
4431
4548
|
"headless semantic compaction",
|
|
4432
4549
|
);
|
|
4433
4550
|
}
|
|
4551
|
+
emit({
|
|
4552
|
+
...event,
|
|
4553
|
+
type: "compaction_usage_unknown",
|
|
4554
|
+
usage_outcome: "unknown",
|
|
4555
|
+
});
|
|
4556
|
+
emit({
|
|
4557
|
+
type: "result",
|
|
4558
|
+
subtype: "error_compaction_usage_unknown",
|
|
4559
|
+
is_error: true,
|
|
4560
|
+
code: "CC_COMPACTION_USAGE_UNKNOWN",
|
|
4561
|
+
error:
|
|
4562
|
+
"Compaction provider usage is unknown; the paid compaction is not retried",
|
|
4563
|
+
session_id: sessionId,
|
|
4564
|
+
});
|
|
4565
|
+
sawError = true;
|
|
4566
|
+
break;
|
|
4434
4567
|
}
|
|
4435
4568
|
if (error?.code === AGENT_EVOLUTION_INGRESS_FAILED_CODE) {
|
|
4436
4569
|
emit({
|
|
@@ -4487,8 +4620,7 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
4487
4620
|
sawError = true;
|
|
4488
4621
|
break;
|
|
4489
4622
|
}
|
|
4490
|
-
|
|
4491
|
-
if (usageEvent) {
|
|
4623
|
+
if (usageEvent && !settledCompactionUsage) {
|
|
4492
4624
|
const event = {
|
|
4493
4625
|
type: "token-usage",
|
|
4494
4626
|
callId: compactionCallId,
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{I as v,P as m,J as S,U as s,R as a,S as y,K as C,Q as x,V as w,_ as B,b as n}from"./vendor-Bn1JzzAn.js";import{_ as k}from"./index-BWkKE8Oj.js";import"./icons-DG5UD-6K.js";const N={__name:"ChatBubbleRenderer",props:{event:{type:Object,required:!0}},setup(c,{expose:d}){d();const t=c,r=n(()=>{const e=t.event.content||{};return e.text||e.body||e.message||e.title||JSON.stringify(e).slice(0,200)}),i=n(()=>{const e=t.event.content||{};return e.from||e.sender||e.senderName||t.event.actor||"(unknown)"}),l=n(()=>{const e=(t.event.actor||"").toLowerCase();return e.includes("self")||e==="me"||e.endsWith("_self")}),o=n(()=>{const e=t.event.source.adapter||"";return e.startsWith("messaging-qq")?"magenta":e==="wechat"?"green":"blue"}),u=n(()=>{if(!t.event.occurredAt)return"";try{const e=new Date(t.event.occurredAt),p=e.getFullYear(),f=String(e.getMonth()+1).padStart(2,"0"),g=String(e.getDate()).padStart(2,"0"),b=String(e.getHours()).padStart(2,"0"),h=String(e.getMinutes()).padStart(2,"0");return`${p}-${f}-${g} ${b}:${h}`}catch{return""}}),_={props:t,messageText:r,actorLabel:i,isMine:l,adapterColor:o,formattedTime:u,computed:n};return Object.defineProperty(_,"__isScriptSetup",{enumerable:!1,value:!0}),_}},T={class:"bubble"},M={class:"meta"},R={class:"actor"},V={class:"time"},q={class:"body"};function D(c,d,t,r,i,l){const o=v("a-tag");return m(),S("div",{class:B(["chat-row",{mine:r.isMine}])},[s("div",T,[s("div",M,[s("span",R,a(r.actorLabel),1),s("span",V,a(r.formattedTime),1)]),s("div",q,a(r.messageText),1),t.event.source.adapter?(m(),y(o,{key:0,class:"src",color:r.adapterColor},{default:C(()=>[x(a(t.event.source.adapter),1)]),_:1},8,["color"])):w("v-if",!0)])],2)}const j=k(N,[["render",D],["__scopeId","data-v-49238629"],["__file","/tmp/cc-web-panel-mnKWcd/repo/packages/web-panel/src/components/pdh/renderers/ChatBubbleRenderer.vue"]]);export{j as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{I as s,J as g,U as d,c as o,K as _,V as k,S as N,R as S,F as V,Z as Q,w as M,n as C,o as R,b as T,r,P as p,Q as O,_ as U}from"./vendor-Bn1JzzAn.js";import{_ as E,u as W}from"./index-BWkKE8Oj.js";import{R as j}from"./icons-DG5UD-6K.js";const q={__name:"Logs",setup(K,{expose:a}){a();const x=W(),e=r("status"),y=r(!1),v=r(""),c=r(""),i=r(""),f=r(!0),n=r(null),h={status:"status",doctor:"doctor","skill-sources":"skill sources","llm-providers":"llm providers"},m=T(()=>c.value.split(`
|
|
2
|
-
`)),b=T(()=>{if(!i.value)return m.value;const t=i.value.toLowerCase();return m.value.filter(u=>u.toLowerCase().includes(t))});function L(t){return t.includes("✖")||t.includes("error")||t.includes("Error")||t.includes("failed")?"line-error":t.includes("✔")||t.includes("✓")||t.includes("success")||t.includes("running")?"line-success":t.includes("warn")||t.includes("Warn")||t.includes("○")?"line-warn":t.startsWith(" ")||t.startsWith(" ")?"line-indent":""}function l(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function w(t){if(!i.value)return t;const u=i.value.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return t.replace(new RegExp(`(${u})`,"gi"),"<mark>$1</mark>")}async function B(){y.value=!0,v.value="",c.value="";const t=h[e.value]||"status";try{const{output:u}=await x.execute(t,3e4);c.value=u,f.value&&(await C(),n.value&&(n.value.scrollTop=n.value.scrollHeight))}catch(u){v.value=`执行失败: ${u.message}`,c.value=v.value}finally{y.value=!1}}M(b,async()=>{f.value&&(await C(),n.value&&(n.value.scrollTop=n.value.scrollHeight))}),R(B);const H={ws:x,activeTab:e,loading:y,error:v,rawOutput:c,searchQuery:i,autoScroll:f,logContainer:n,TAB_COMMANDS:h,allLines:m,filteredLines:b,lineClass:L,escapeHtml:l,highlightSearch:w,loadLog:B,ref:r,computed:T,watch:M,nextTick:C,onMounted:R,get ReloadOutlined(){return j},get useWsStore(){return W}};return Object.defineProperty(H,"__isScriptSetup",{enumerable:!1,value:!0}),H}},z={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},A={style:{display:"flex",gap:"10px",margin:"12px 0"}},D={ref:"logContainer",class:"log-box"},F={key:0,style:{"text-align":"center",padding:"40px",color:"var(--text-muted)"}},I={key:1,style:{"text-align":"center",padding:"40px",color:"var(--text-muted)"}},P={key:2},J=["innerHTML"];function Z(K,a,x,e,y,v){const c=s("a-checkbox"),i=s("a-button"),f=s("a-space"),n=s("a-tab-pane"),h=s("a-tabs"),m=s("a-input-search"),b=s("a-tag"),L=s("a-spin");return p(),g("div",null,[d("div",z,[a[5]||(a[5]=d("div",null,[d("h2",{class:"page-title"},"日志查看"),d("p",{class:"page-sub"},"系统运行日志与诊断输出")],-1)),o(f,null,{default:_(()=>[o(c,{checked:e.autoScroll,"onUpdate:checked":a[0]||(a[0]=l=>e.autoScroll=l)},{default:_(()=>[...a[3]||(a[3]=[O("自动滚动",-1)])]),_:1},8,["checked"]),o(i,{type:"primary",ghost:"",loading:e.loading,onClick:e.loadLog},{icon:_(()=>[o(e.ReloadOutlined)]),default:_(()=>[a[4]||(a[4]=O(" 刷新 ",-1))]),_:1},8,["loading"])]),_:1})]),k(" Tab Selector "),o(h,{activeKey:e.activeTab,"onUpdate:activeKey":a[1]||(a[1]=l=>e.activeTab=l),onChange:e.loadLog,style:{"margin-bottom":"0"}},{default:_(()=>[o(n,{key:"status",tab:"系统状态"}),o(n,{key:"doctor",tab:"环境诊断"}),o(n,{key:"skill-sources",tab:"技能来源"}),o(n,{key:"llm-providers",tab:"LLM 提供商"})]),_:1},8,["activeKey"]),k(" Search Bar "),d("div",A,[o(m,{value:e.searchQuery,"onUpdate:value":a[2]||(a[2]=l=>e.searchQuery=l),placeholder:"搜索日志内容...","allow-clear":"",style:{flex:"1"}},null,8,["value"]),e.filteredLines.length!==e.allLines.length?(p(),N(b,{key:0,color:"blue"},{default:_(()=>[O(S(e.filteredLines.length)+" / "+S(e.allLines.length)+" 行 ",1)]),_:1})):k("v-if",!0)]),k(" Log Output "),d("div",D,[e.loading?(p(),g("div",F,[o(L,{size:"large"}),a[6]||(a[6]=d("div",{style:{"margin-top":"10px"}},"加载中...",-1))])):e.filteredLines.length?(p(),g("div",P,[(p(!0),g(V,null,Q(e.filteredLines,(l,w)=>(p(),g("div",{key:w,class:U(["log-line",e.lineClass(l)]),innerHTML:e.highlightSearch(e.escapeHtml(l))},null,10,J))),128))])):(p(),g("div",I,S(e.error||"暂无日志内容,点击刷新加载"),1))],512)])}const $=E(q,[["render",Z],["__scopeId","data-v-8c2906e0"],["__file","/tmp/cc-web-panel-mnKWcd/repo/packages/web-panel/src/views/Logs.vue"]]);export{$ as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{P as a,J as d,b as c}from"./vendor-Bn1JzzAn.js";import{r as s}from"./markdown-Yo_c6Krv.js";import{_ as p}from"./index-BWkKE8Oj.js";const _={__name:"MarkdownRenderer",props:{content:{type:String,default:""}},setup(t,{expose:o}){o();const e=t,r=c(()=>s(e.content||"")),n={props:e,rendered:r,computed:c,get renderMarkdown(){return s}};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}},i=["innerHTML"];function m(t,o,e,r,n,u){return a(),d("div",{class:"markdown-content",innerHTML:r.rendered},null,8,i)}const w=p(_,[["render",m],["__scopeId","data-v-0b0b9f63"],["__file","/tmp/cc-web-panel-mnKWcd/repo/packages/web-panel/src/components/MarkdownRenderer.vue"]]);export{w as M};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{I as n,J as g,c as l,K as r,N as u,P as h,U as o,R as t,Q as m}from"./vendor-Bn1JzzAn.js";import{_ as v,b}from"./index-BWkKE8Oj.js";import{a8 as y,M}from"./icons-DG5UD-6K.js";const B={__name:"MobileProjects",setup(p,{expose:i}){i();const c=u(),{t:e}=b();function a(){c.push("/projects")}function _(){c.push("/mobile-bridge")}const s={router:c,t:e,goToProjects:a,goToMobileBridge:_,get useRouter(){return u},get useI18n(){return b},get MobileOutlined(){return M},get FolderOutlined(){return y}};return Object.defineProperty(s,"__isScriptSetup",{enumerable:!1,value:!0}),s}},x={class:"mobile-projects-placeholder"},O={class:"title"},k={class:"subtitle"},w={class:"explainer"};function T(p,i,c,e,a,_){const s=n("a-alert"),d=n("a-button"),f=n("a-space"),P=n("a-empty"),j=n("a-card");return h(),g("div",x,[l(j,null,{default:r(()=>[l(P,{description:!1},{image:r(()=>[l(e.MobileOutlined,{style:{fontSize:"64px",color:"#bfbfbf"}})]),default:r(()=>[o("h2",O,t(e.t("mobileProjects.title")),1),o("p",k,t(e.t("mobileProjects.subtitle")),1),l(s,{message:e.t("mobileProjects.v02Banner"),type:"info","show-icon":"",class:"banner"},null,8,["message"]),o("div",w,[o("h3",null,t(e.t("mobileProjects.currentDirection")),1),o("p",null,t(e.t("mobileProjects.currentDirectionBody")),1),o("ul",null,[o("li",null,t(e.t("mobileProjects.stepPhone")),1),o("li",null,t(e.t("mobileProjects.stepTap")),1),o("li",null,t(e.t("mobileProjects.stepPull")),1)]),o("h3",null,t(e.t("mobileProjects.reverseDirection")),1),o("p",null,t(e.t("mobileProjects.reverseDirectionBody")),1)]),l(f,{class:"actions"},{default:r(()=>[l(d,{type:"primary",onClick:e.goToProjects},{default:r(()=>[l(e.FolderOutlined),m(" "+t(e.t("mobileProjects.viewLocalProjects")),1)]),_:1}),l(d,{onClick:e.goToMobileBridge},{default:r(()=>[l(e.MobileOutlined),m(" "+t(e.t("mobileProjects.checkBridge")),1)]),_:1})]),_:1})]),_:1})]),_:1})])}const N=v(B,[["render",T],["__scopeId","data-v-9262cc45"],["__file","/tmp/cc-web-panel-mnKWcd/repo/packages/web-panel/src/views/MobileProjects.vue"]]);export{N as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Q as r}from"./index-BWkKE8Oj.js";const o=((n,a,e)=>{r(n,`[ant-design-vue: ${a}] ${e}`)});export{o as d};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{C as o}from"./Col-DT8t9wmf.js";import{a0 as t}from"./index-BWkKE8Oj.js";import"./vendor-Bn1JzzAn.js";import"./index-DemMuw7n.js";import"./icons-DG5UD-6K.js";const s=t(o);export{s as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{A as o}from"./Row-fwhot5Bk.js";import{a0 as t}from"./index-BWkKE8Oj.js";import"./vendor-Bn1JzzAn.js";import"./responsiveObserve-Nrm8Vbmr.js";import"./useFlexGapSupport-CVWBRdhs.js";import"./styleChecker-BXpGfNkI.js";import"./index-DemMuw7n.js";import"./icons-DG5UD-6K.js";const l=t(o);export{l as default};
|