chainlesschain 0.166.100 → 0.166.102
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/package.json +3 -3
- 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-Cd4iUOPt.js → AIOps-CyHIMEd8.js} +1 -1
- package/src/assets/web-panel/assets/{ActionButton--ucr-zko.js → ActionButton-vuNxDpHm.js} +1 -1
- package/src/assets/web-panel/assets/{Analytics-DbejYMWk.js → Analytics-D0quEM0q.js} +3 -3
- package/src/assets/web-panel/assets/{AppLayout-CLgKxeGw.js → AppLayout-xRSVpbCs.js} +5 -5
- package/src/assets/web-panel/assets/{Artifacts-CTT5BIL5.js → Artifacts-ktfVAZBC.js} +1 -1
- package/src/assets/web-panel/assets/{Audit-DP-WBWe9.js → Audit-UJW6maH4.js} +1 -1
- package/src/assets/web-panel/assets/{BackgroundAgents-B6VqheJk.js → BackgroundAgents-BYrfdCoT.js} +1 -1
- package/src/assets/web-panel/assets/{Backup-VWJK5zim.js → Backup-IBgsJ7BK.js} +1 -1
- package/src/assets/web-panel/assets/{BaseInput-YGFO9RHd.js → BaseInput-BmP8_zxy.js} +1 -1
- package/src/assets/web-panel/assets/{Chat-CVfydnCd.js → Chat-urkw8_BF.js} +5 -5
- package/src/assets/web-panel/assets/{ChatBubbleRenderer-BICpB-qU.js → ChatBubbleRenderer-Cw44zZbh.js} +1 -1
- package/src/assets/web-panel/assets/{Checkbox-Bd5vKRMk.js → Checkbox-CYboo-__.js} +1 -1
- package/src/assets/web-panel/assets/{Codegen-DHNgPHvg.js → Codegen-DaqR_Ay8.js} +1 -1
- package/src/assets/web-panel/assets/{Col-CA2BYQ8T.js → Col-04BSIj_z.js} +1 -1
- package/src/assets/web-panel/assets/{Community-DnKJ-qpI.js → Community-DxFk7Trv.js} +1 -1
- package/src/assets/web-panel/assets/{Compact-C9BZ8t4r.js → Compact-mjgWlMCB.js} +1 -1
- package/src/assets/web-panel/assets/{Compliance-ByyQ2FOl.js → Compliance-CC5ee7QV.js} +1 -1
- package/src/assets/web-panel/assets/{Cowork-rXTwXE_c.js → Cowork-BK4BhHZd.js} +2 -2
- package/src/assets/web-panel/assets/{Cron-BuW-HODy.js → Cron-CP6jAxq0.js} +2 -2
- package/src/assets/web-panel/assets/{Crosschain-OudNtbYW.js → Crosschain-DJPaViZS.js} +1 -1
- package/src/assets/web-panel/assets/{DID-BQ6BxYNN.js → DID-BTLxkuOj.js} +2 -2
- package/src/assets/web-panel/assets/{Dashboard-Cz5HG8tz.js → Dashboard-Djkiqh3d.js} +2 -2
- package/src/assets/web-panel/assets/{Dropdown-BzclHOVv.js → Dropdown-t_eUhqom.js} +1 -1
- package/src/assets/web-panel/assets/{EmailListRenderer-CbJETFdy.js → EmailListRenderer-7w6USx_J.js} +1 -1
- package/src/assets/web-panel/assets/{EvolutionSettings-Dx_pJG3d.js → EvolutionSettings-mU5IHEk5.js} +1 -1
- package/src/assets/web-panel/assets/{FamilyGuardDashboard-6JCS1MNg.js → FamilyGuardDashboard-BCh-VBBC.js} +1 -1
- package/src/assets/web-panel/assets/{Federation-BrPkMYaf.js → Federation-Be_VpjI2.js} +1 -1
- package/src/assets/web-panel/assets/{FormItemContext-Bhc9pobs.js → FormItemContext-D_lzQ7PI.js} +1 -1
- package/src/assets/web-panel/assets/{GenericCardRenderer-BxOh07uQ.js → GenericCardRenderer-LYu3KapV.js} +1 -1
- package/src/assets/web-panel/assets/{Git-D_idoujr.js → Git-BBeF-PP4.js} +2 -2
- package/src/assets/web-panel/assets/{Governance-ZGfIRE-x.js → Governance-CoF8Kzg7.js} +1 -1
- package/src/assets/web-panel/assets/{Inference-DpAmcwbw.js → Inference-C4DLMnXS.js} +1 -1
- package/src/assets/web-panel/assets/{KnowledgeGraph-D1S1UTgP.js → KnowledgeGraph-B2mlNewk.js} +1 -1
- package/src/assets/web-panel/assets/{Logs-2sc8V5XV.js → Logs-DMZ_44Ya.js} +2 -2
- package/src/assets/web-panel/assets/MarkdownRenderer-Ck7Iv_9e.js +1 -0
- package/src/assets/web-panel/assets/{Marketplace-0xlFUKbe.js → Marketplace-BqDzTew_.js} +1 -1
- package/src/assets/web-panel/assets/{McpTools-D25eJLGm.js → McpTools-BbwSbDN9.js} +3 -3
- package/src/assets/web-panel/assets/{Memory-BLRGd9hM.js → Memory-DAaTWgrm.js} +2 -2
- package/src/assets/web-panel/assets/{MobileBridge-zpFINGzn.js → MobileBridge-BjbTGxoR.js} +1 -1
- package/src/assets/web-panel/assets/{MobileProjects-Cbyd-8kx.js → MobileProjects-DMODOBr-.js} +1 -1
- package/src/assets/web-panel/assets/{Mtc-DgXgUlHc.js → Mtc-DT9N2rCs.js} +2 -2
- package/src/assets/web-panel/assets/{MtcAudit-DzcL-dKH.js → MtcAudit-DagMfUVv.js} +2 -2
- package/src/assets/web-panel/assets/{Multisig-C3OrZ6VN.js → Multisig-C1BKP6nM.js} +3 -3
- package/src/assets/web-panel/assets/{NLProgramming-Bqp_vWA7.js → NLProgramming-B5LFh72i.js} +1 -1
- package/src/assets/web-panel/assets/{Notes-Dyn45-Ht.js → Notes-Q77V3ltW.js} +3 -3
- package/src/assets/web-panel/assets/{NotificationSettings-CLjafGZr.js → NotificationSettings-HxdpNIBs.js} +1 -1
- package/src/assets/web-panel/assets/OrderTableRenderer-Dc0DpvBH.js +1 -0
- package/src/assets/web-panel/assets/{Organization-5gr9hyLm.js → Organization-QL3NZ7uW.js} +4 -4
- package/src/assets/web-panel/assets/{Overflow-BRdU02hT.js → Overflow-B_gqOKho.js} +1 -1
- package/src/assets/web-panel/assets/{P2P-DIi7fzh6.js → P2P-BBJubU8Z.js} +2 -2
- package/src/assets/web-panel/assets/{PdhVaultBrowser-BCbS1KpA.js → PdhVaultBrowser-CFnGd-2E.js} +3 -3
- package/src/assets/web-panel/assets/{Permissions-BjeP9VtA.js → Permissions-BKkznIUM.js} +4 -4
- package/src/assets/web-panel/assets/{PersonalDataHub-y8PXOQUc.js → PersonalDataHub-DYK7ZAcd.js} +4 -4
- package/src/assets/web-panel/assets/{Pipeline-B0fL5uxY.js → Pipeline-CoeKpjoN.js} +1 -1
- package/src/assets/web-panel/assets/{Privacy-C8jCDn8Z.js → Privacy-Diw4G-92.js} +1 -1
- package/src/assets/web-panel/assets/{ProjectInit-B_L6Dc6V.js → ProjectInit-CHBOFkma.js} +2 -2
- package/src/assets/web-panel/assets/{ProjectSettings-Bb1CYbZh.js → ProjectSettings-BJIsgdOf.js} +2 -2
- package/src/assets/web-panel/assets/{Projects-CUSV10Cn.js → Projects-GJjItXIk.js} +1 -1
- package/src/assets/web-panel/assets/{Providers-mBSTDJ0E.js → Providers-o8QCimor.js} +1 -1
- package/src/assets/web-panel/assets/{QrScannerModal-CHxgalvt.js → QrScannerModal-z2W-zvhW.js} +1 -1
- package/src/assets/web-panel/assets/{QuickAsk-DI9KIMEV.js → QuickAsk-_yubhsna.js} +1 -1
- package/src/assets/web-panel/assets/{Recommend-B5_zW1JH.js → Recommend-CucgJwih.js} +1 -1
- package/src/assets/web-panel/assets/{RemoteSession-BkH4bmM5.js → RemoteSession-EzfIIRg1.js} +2 -2
- package/src/assets/web-panel/assets/{Reputation-DJrAqwAq.js → Reputation-_shttE67.js} +1 -1
- package/src/assets/web-panel/assets/{Row-xZ3MAM34.js → Row-DQA_S8-9.js} +1 -1
- package/src/assets/web-panel/assets/{RssFeed-CCsrLLiu.js → RssFeed-BOqWawXT.js} +3 -3
- package/src/assets/web-panel/assets/{Search-CTCRKvaP.js → Search-Dx1v2xOq.js} +1 -1
- package/src/assets/web-panel/assets/{Security-D7joyfp2.js → Security-Bt4HHsT4.js} +4 -4
- package/src/assets/web-panel/assets/{Services-oqHPmTG4.js → Services-sruHiQ-r.js} +2 -2
- package/src/assets/web-panel/assets/{Skeleton-BR_32bTG.js → Skeleton-CiBxvmOJ.js} +1 -1
- package/src/assets/web-panel/assets/{Skills-BoRz9mln.js → Skills-De9qKODU.js} +1 -1
- package/src/assets/web-panel/assets/{Sla-UAGUHZ9b.js → Sla-B_6yn8Wp.js} +1 -1
- package/src/assets/web-panel/assets/{SpeechSettings-DeP_rMgv.js → SpeechSettings-C2CafExS.js} +1 -1
- package/src/assets/web-panel/assets/{SyncSettings-CSzzMmeA.js → SyncSettings-Dhh3Qmb0.js} +2 -2
- package/src/assets/web-panel/assets/{Tasks-CcqOLsLB.js → Tasks-Mvo5mTWm.js} +1 -1
- package/src/assets/web-panel/assets/{Templates-cDbkGSDG.js → Templates-D7WVTQQy.js} +1 -1
- package/src/assets/web-panel/assets/{Tenant-DmOy58cq.js → Tenant-7ur9Yfxd.js} +1 -1
- package/src/assets/web-panel/assets/{Terminal-CsRZH5vr.js → Terminal-BgzrOA6k.js} +2 -2
- package/src/assets/web-panel/assets/{TimelineRenderer-BgJrk6HG.js → TimelineRenderer-Dco20pT1.js} +1 -1
- package/src/assets/web-panel/assets/{Tokens-CCQglKDE.js → Tokens-hN6qBPag.js} +1 -1
- package/src/assets/web-panel/assets/{Trigger-t-Gt3oBY.js → Trigger-C4f_twAM.js} +1 -1
- package/src/assets/web-panel/assets/{Trust-DQgu2kI0.js → Trust-Wf1SMypp.js} +1 -1
- package/src/assets/web-panel/assets/{UkeySign-Cod2WUGj.js → UkeySign-DUXSyg3N.js} +1 -1
- package/src/assets/web-panel/assets/{VideoEditing-SGN5zaVK.js → VideoEditing-BvqsJaL0.js} +1 -1
- package/src/assets/web-panel/assets/{Wallet-CnLEL-LD.js → Wallet-CgAbcjKl.js} +3 -3
- package/src/assets/web-panel/assets/{WebAuthn-C2keUpD6.js → WebAuthn-DaLT0W3s.js} +2 -2
- package/src/assets/web-panel/assets/{WorkflowEditor-B1GvrwWJ.js → WorkflowEditor-CQqAXoaS.js} +1 -1
- package/src/assets/web-panel/assets/{chat-1E9_P_qY.js → chat-BhlohFTB.js} +1 -1
- package/src/assets/web-panel/assets/{colors-DuU6Os4q.js → colors-D7HqXIL8.js} +1 -1
- package/src/assets/web-panel/assets/{compact-item-C5NfOAcM.js → compact-item-Bqk4FCLY.js} +1 -1
- package/src/assets/web-panel/assets/{createContext-D4Fxz9qQ.js → createContext-CEmWrWf0.js} +1 -1
- package/src/assets/web-panel/assets/devWarning-YPX_TU7w.js +1 -0
- package/src/assets/web-panel/assets/{hasIn-C6C49iFk.js → hasIn-CDY0pFi2.js} +1 -1
- package/src/assets/web-panel/assets/{index-DP2DCKD-.js → index-1HBam9t1.js} +1 -1
- package/src/assets/web-panel/assets/{index-B-bb-R99.js → index-6f6n0KFR.js} +1 -1
- package/src/assets/web-panel/assets/{index-BmvU4Tp_.js → index-B8L3_-sG.js} +1 -1
- package/src/assets/web-panel/assets/{index-BsH8mFp4.js → index-BHGOdvOQ.js} +1 -1
- package/src/assets/web-panel/assets/{index-BVE2wCeb.js → index-BNrvBWDS.js} +1 -1
- package/src/assets/web-panel/assets/{index-CJS6GTpv.js → index-BPmRkxeX.js} +1 -1
- package/src/assets/web-panel/assets/{index-C7mh6xlu.js → index-BXRooi-O.js} +1 -1
- package/src/assets/web-panel/assets/{index-BZKRZYTX.js → index-BiLu-ImR.js} +1 -1
- package/src/assets/web-panel/assets/{index-jFg3CPlQ.js → index-BuKGuH_y.js} +1 -1
- package/src/assets/web-panel/assets/{index-BULggEX6.js → index-BxXFRLTZ.js} +1 -1
- package/src/assets/web-panel/assets/{index-DPzunJER.js → index-BxYO6nde.js} +1 -1
- package/src/assets/web-panel/assets/{index-AO6iDCSL.js → index-C02yDu4f.js} +1 -1
- package/src/assets/web-panel/assets/{index-BU5mPkNX.js → index-C3opQg47.js} +1 -1
- package/src/assets/web-panel/assets/{index-DSypQU1h.js → index-C9mvnSii.js} +1 -1
- package/src/assets/web-panel/assets/{index-DZgT7pH-.js → index-CVrwozwH.js} +1 -1
- package/src/assets/web-panel/assets/{index-CpiOzt7U.js → index-CYcjOnDX.js} +1 -1
- package/src/assets/web-panel/assets/{index-BlHkc48f.js → index-Cf1ha8l0.js} +1 -1
- package/src/assets/web-panel/assets/{index-CXb8gEWh.js → index-Chxt0t-A.js} +1 -1
- package/src/assets/web-panel/assets/{index-HQXFl8fh.js → index-CkjgSHVz.js} +1 -1
- package/src/assets/web-panel/assets/{index-DpaGe-dr.js → index-CkqBoCiu.js} +3 -3
- package/src/assets/web-panel/assets/{index-C2nO02uW.js → index-CqK0J4Sj.js} +1 -1
- package/src/assets/web-panel/assets/{index-Bu6qMjf4.js → index-CrsM-oiD.js} +1 -1
- package/src/assets/web-panel/assets/{index-Bk-paNL3.js → index-Cur88hoN.js} +1 -1
- package/src/assets/web-panel/assets/{index-CXn-e3ki.js → index-D0nfNmbq.js} +1 -1
- package/src/assets/web-panel/assets/index-D53szVZQ.js +1 -0
- package/src/assets/web-panel/assets/{index-CDVwN9Sv.js → index-DEzL7s7P.js} +1 -1
- package/src/assets/web-panel/assets/{index-B_ON9La1.js → index-DGKRAO61.js} +1 -1
- package/src/assets/web-panel/assets/{index-CQJoh5rw.js → index-DPBoWNwq.js} +1 -1
- package/src/assets/web-panel/assets/{index-cnDfwWU5.js → index-DRcDWMwP.js} +1 -1
- package/src/assets/web-panel/assets/{index-BBVqlelF.js → index-DmKdCWq1.js} +1 -1
- package/src/assets/web-panel/assets/{index-BYg1dtne.js → index-DpI1LqJX.js} +1 -1
- package/src/assets/web-panel/assets/{index-B5lzRoHp.js → index-DuMt3ewl.js} +1 -1
- package/src/assets/web-panel/assets/{index-gh11zJ9h.js → index-Dwob5XoD.js} +1 -1
- package/src/assets/web-panel/assets/index-Ub2nJbV2.js +1 -0
- package/src/assets/web-panel/assets/{index-D1TXgNPA.js → index-XErJQ1yF.js} +1 -1
- package/src/assets/web-panel/assets/{index-DFK6PTGJ.js → index-aBHlgMrq.js} +1 -1
- package/src/assets/web-panel/assets/{index-Dh-vezHe.js → index-e9oCy7_4.js} +1 -1
- package/src/assets/web-panel/assets/{index-bW6vfpLH.js → index-lBAbMOzg.js} +1 -1
- package/src/assets/web-panel/assets/{index-lNmDaf3J.js → index-o_lc3eww.js} +1 -1
- package/src/assets/web-panel/assets/{initDefaultProps-3DSfnIpD.js → initDefaultProps-CIeEUxIN.js} +1 -1
- package/src/assets/web-panel/assets/{motion-DxGLmgA0.js → motion-IPIj1ZtP.js} +1 -1
- package/src/assets/web-panel/assets/{move-DrlLG6m5.js → move-BfSeXZ-f.js} +1 -1
- package/src/assets/web-panel/assets/{mtc-parser-BITbrJSb.js → mtc-parser-DX03-Xp4.js} +1 -1
- package/src/assets/web-panel/assets/{omit-D7k5vIbk.js → omit-z9EannfX.js} +1 -1
- package/src/assets/web-panel/assets/{pickAttrs-BJSvYFWo.js → pickAttrs-DXKmRkqZ.js} +1 -1
- package/src/assets/web-panel/assets/{placementArrow-Bf4to1jA.js → placementArrow-k2HV7cIU.js} +1 -1
- package/src/assets/web-panel/assets/{responsiveObserve-BXzeyzTa.js → responsiveObserve-bX7CsyWy.js} +1 -1
- package/src/assets/web-panel/assets/{slide-DLzNUNdj.js → slide-NskjQLbJ.js} +1 -1
- package/src/assets/web-panel/assets/{statusUtils-wBBnrRm_.js → statusUtils-B3IoG-Er.js} +1 -1
- package/src/assets/web-panel/assets/{styleChecker-BnmJzXNr.js → styleChecker-DHv_UilX.js} +1 -1
- package/src/assets/web-panel/assets/{useFlexGapSupport-DrN8MrJb.js → useFlexGapSupport-DEqGB5Ng.js} +1 -1
- package/src/assets/web-panel/assets/{useFs-dnkYGkjY.js → useFs-Bl9CbrqZ.js} +1 -1
- package/src/assets/web-panel/assets/{usePersonalDataHub-k_xkv7-k.js → usePersonalDataHub-O-Ukv93M.js} +1 -1
- package/src/assets/web-panel/assets/{vnode-B-v8PXpK.js → vnode-hGCHTaZt.js} +1 -1
- package/src/assets/web-panel/assets/{zoom-Coue8wAK.js → zoom-BWhIVeKQ.js} +1 -1
- package/src/assets/web-panel/index.html +1 -1
- package/src/command-help-index.json +1 -1
- package/src/commands/agent.js +64 -40
- 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/lib/config-schema.js +18 -5
- package/src/lib/context-memory-kernel/live-compaction.js +142 -61
- package/src/lib/context-memory-kernel/memory-query-index.js +5 -2
- package/src/lib/context-memory-kernel/runtime.js +4 -0
- package/src/lib/context-memory-kernel/segmented-memory-port.js +28 -3
- package/src/lib/context-source-ledger.js +52 -9
- 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/goal-condition-engine.js +25 -2
- package/src/lib/llm-config-defaults.js +10 -4
- package/src/lib/llm-pricing.js +16 -4
- package/src/lib/model-capabilities.js +26 -0
- package/src/lib/model-catalog-review.js +18 -1
- package/src/lib/model-context-catalog.js +41 -1
- package/src/lib/openai-responses.js +8 -0
- package/src/lib/skill-retrieval-router.js +1 -0
- package/src/lib/usage-pricing-context.js +33 -2
- package/src/repl/agent-repl.js +247 -153
- package/src/runtime/agent-core.js +371 -97
- package/src/runtime/coding-agent-contract-shared.cjs +14 -1
- package/src/runtime/headless-runner.js +1 -0
- package/src/runtime/headless-stream.js +137 -4
- package/src/runtime/mcp-tool-search.js +0 -0
- package/src/runtime/provider-stream-state.js +14 -1
- package/src/assets/web-panel/assets/MarkdownRenderer-575jjYE6.js +0 -1
- package/src/assets/web-panel/assets/OrderTableRenderer-Bx8wMauC.js +0 -1
- package/src/assets/web-panel/assets/devWarning-zDWbYMr7.js +0 -1
- package/src/assets/web-panel/assets/index-BPBsZZnT.js +0 -1
- package/src/assets/web-panel/assets/index-CtGQDg7m.js +0 -1
|
@@ -583,7 +583,7 @@ const CODING_AGENT_TOOL_CONTRACTS = Object.freeze([
|
|
|
583
583
|
kind: "skill",
|
|
584
584
|
tier: "extension",
|
|
585
585
|
description:
|
|
586
|
-
"
|
|
586
|
+
"Search available skills by query/category. Returns up to 20 descriptors by default (maximum 64); use nextOffset for more. Skill bodies are loaded only when selected.",
|
|
587
587
|
inputSchema: {
|
|
588
588
|
type: "object",
|
|
589
589
|
properties: {
|
|
@@ -596,6 +596,19 @@ const CODING_AGENT_TOOL_CONTRACTS = Object.freeze([
|
|
|
596
596
|
type: "string",
|
|
597
597
|
description: "Search keyword to filter skills",
|
|
598
598
|
},
|
|
599
|
+
limit: {
|
|
600
|
+
type: "integer",
|
|
601
|
+
minimum: 1,
|
|
602
|
+
maximum: 64,
|
|
603
|
+
description: "Descriptors per page; default 20",
|
|
604
|
+
},
|
|
605
|
+
offset: {
|
|
606
|
+
type: "integer",
|
|
607
|
+
minimum: 0,
|
|
608
|
+
maximum: 10000,
|
|
609
|
+
description:
|
|
610
|
+
"Use nextOffset from the previous page; default 0. Query results are bounded to the top 64 matches.",
|
|
611
|
+
},
|
|
599
612
|
},
|
|
600
613
|
},
|
|
601
614
|
...TOOL_POLICY_METADATA.list_skills,
|
|
@@ -2623,6 +2623,7 @@ async function runAgentHeadlessInWorkspace(
|
|
|
2623
2623
|
apiKey,
|
|
2624
2624
|
cwd,
|
|
2625
2625
|
skillLoader: _runtimeSkillLoader,
|
|
2626
|
+
serviceTier: options.serviceTier,
|
|
2626
2627
|
...(skillDecisionRuntime === null ? {} : { skillDecisionRuntime }),
|
|
2627
2628
|
...captureSkillRuntimeDependencies(options, evolutionIngress?.tenantId),
|
|
2628
2629
|
...(skillOutcomeIndex === null ? {} : { skillOutcomeIndex }),
|
|
@@ -3632,6 +3632,7 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
3632
3632
|
apiKey,
|
|
3633
3633
|
cwd,
|
|
3634
3634
|
additionalDirectories,
|
|
3635
|
+
serviceTier: options.serviceTier,
|
|
3635
3636
|
sandbox: options.sandbox,
|
|
3636
3637
|
shellPolicyOverrides: options.shellPolicyOverrides,
|
|
3637
3638
|
...(skillOutcomeIndex === null ? {} : { skillOutcomeIndex }),
|
|
@@ -3782,7 +3783,13 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
3782
3783
|
? (event) => {
|
|
3783
3784
|
try {
|
|
3784
3785
|
if (event.type === "token-usage") {
|
|
3785
|
-
|
|
3786
|
+
requireSynchronousRecoveryResult(
|
|
3787
|
+
store.appendTokenUsage(
|
|
3788
|
+
sessionId,
|
|
3789
|
+
projectRuntimeTokenUsage(event),
|
|
3790
|
+
),
|
|
3791
|
+
"appendTokenUsage",
|
|
3792
|
+
);
|
|
3786
3793
|
return;
|
|
3787
3794
|
}
|
|
3788
3795
|
const outcome =
|
|
@@ -4294,6 +4301,44 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
4294
4301
|
let usageUnknownEvent;
|
|
4295
4302
|
const compactionCallId = `compact-${++slashRequestSeq}`;
|
|
4296
4303
|
let compactionProviderStarted = false;
|
|
4304
|
+
let compatibilityResult = null;
|
|
4305
|
+
let settledCompactionUsage = null;
|
|
4306
|
+
let costExceeded = false;
|
|
4307
|
+
const settleCompactionUsage = (event) => {
|
|
4308
|
+
if (settledCompactionUsage) return;
|
|
4309
|
+
if (!compactionProviderStarted || event?.callId !== compactionCallId) {
|
|
4310
|
+
throw new Error("compaction usage does not match its provider call");
|
|
4311
|
+
}
|
|
4312
|
+
const projected = projectRuntimeTokenUsage({
|
|
4313
|
+
...event,
|
|
4314
|
+
source: "semantic-compaction",
|
|
4315
|
+
});
|
|
4316
|
+
try {
|
|
4317
|
+
persistUsageEvent?.({ type: "token-usage", ...projected });
|
|
4318
|
+
requireSynchronousRecoveryResult(
|
|
4319
|
+
recordSessionBudgetUsage(
|
|
4320
|
+
options.sessionBudget,
|
|
4321
|
+
projected,
|
|
4322
|
+
"headless semantic compaction usage settlement",
|
|
4323
|
+
),
|
|
4324
|
+
"recordUsage",
|
|
4325
|
+
);
|
|
4326
|
+
} catch (error) {
|
|
4327
|
+
// A completed provider call must not be reclassified or replayed
|
|
4328
|
+
// when its accounting write fails.
|
|
4329
|
+
throw markRuntimeLedgerPersistenceError(error);
|
|
4330
|
+
}
|
|
4331
|
+
settledCompactionUsage = Object.freeze({
|
|
4332
|
+
...projected,
|
|
4333
|
+
usage: Object.freeze(projected.usage),
|
|
4334
|
+
ledgerSettled: typeof persistUsageEvent === "function",
|
|
4335
|
+
});
|
|
4336
|
+
emit({ type: "token_usage", ...projected });
|
|
4337
|
+
if (costBudget) {
|
|
4338
|
+
costBudget.add(projected);
|
|
4339
|
+
costExceeded = costBudget.exceeded();
|
|
4340
|
+
}
|
|
4341
|
+
};
|
|
4297
4342
|
try {
|
|
4298
4343
|
const providerCompactionOptions = {
|
|
4299
4344
|
...(evolutionIngress === null ? {} : { evolutionIngress }),
|
|
@@ -4340,7 +4385,6 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
4340
4385
|
if (cutover.canonical) {
|
|
4341
4386
|
const { compactLiveMessagesCanonical } =
|
|
4342
4387
|
await import("../lib/context-memory-kernel/live-compaction.js");
|
|
4343
|
-
let compatibilityResult = null;
|
|
4344
4388
|
const canonical = await compactLiveMessagesCanonical(messages, {
|
|
4345
4389
|
compressor: {
|
|
4346
4390
|
maxTokens: Math.max(
|
|
@@ -4352,6 +4396,23 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
4352
4396
|
dropped,
|
|
4353
4397
|
providerCompactionOptions,
|
|
4354
4398
|
);
|
|
4399
|
+
if (
|
|
4400
|
+
compatibilityResult.usageEvent &&
|
|
4401
|
+
!compatibilityResult.usageUnknownEvent
|
|
4402
|
+
) {
|
|
4403
|
+
settleCompactionUsage(compatibilityResult.usageEvent);
|
|
4404
|
+
const settledStats = { ...compatibilityResult.stats };
|
|
4405
|
+
if (settledCompactionUsage.ledgerSettled) {
|
|
4406
|
+
settledStats.summaryCallId = compactionCallId;
|
|
4407
|
+
settledStats.summaryUsageLedgerSettled = true;
|
|
4408
|
+
} else {
|
|
4409
|
+
// Ordinary nonpersistent runs have no durable ledger to
|
|
4410
|
+
// attest. Keep their known usage without inventing one.
|
|
4411
|
+
delete settledStats.summaryCallId;
|
|
4412
|
+
delete settledStats.summaryUsageLedgerSettled;
|
|
4413
|
+
}
|
|
4414
|
+
return { ...compatibilityResult, stats: settledStats };
|
|
4415
|
+
}
|
|
4355
4416
|
return compatibilityResult;
|
|
4356
4417
|
},
|
|
4357
4418
|
},
|
|
@@ -4411,6 +4472,63 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
4411
4472
|
} catch (error) {
|
|
4412
4473
|
if (isAbortError(error) || options.signal?.aborted) throw error;
|
|
4413
4474
|
if (error?.runtimeLedgerPersistence === true) throw error;
|
|
4475
|
+
const { getRejectedCompactionUsage } =
|
|
4476
|
+
await import("../lib/context-memory-kernel/live-compaction.js");
|
|
4477
|
+
const rejectedUsage = getRejectedCompactionUsage(error);
|
|
4478
|
+
if (
|
|
4479
|
+
rejectedUsage &&
|
|
4480
|
+
settledCompactionUsage &&
|
|
4481
|
+
settledCompactionUsage.callId === compactionCallId &&
|
|
4482
|
+
(!rejectedUsage.callId ||
|
|
4483
|
+
rejectedUsage.callId === compactionCallId) &&
|
|
4484
|
+
(!rejectedUsage.receipt.callId ||
|
|
4485
|
+
rejectedUsage.receipt.callId === compactionCallId) &&
|
|
4486
|
+
rejectedUsage.provider === settledCompactionUsage.provider &&
|
|
4487
|
+
rejectedUsage.model === settledCompactionUsage.model &&
|
|
4488
|
+
JSON.stringify(rejectedUsage.usage) ===
|
|
4489
|
+
JSON.stringify(settledCompactionUsage.usage)
|
|
4490
|
+
) {
|
|
4491
|
+
emit({
|
|
4492
|
+
type: "compaction-degraded",
|
|
4493
|
+
code: error.code,
|
|
4494
|
+
reason: "canonical_compaction_plan_rejected",
|
|
4495
|
+
summaryMode: "none",
|
|
4496
|
+
});
|
|
4497
|
+
if (costExceeded) {
|
|
4498
|
+
sawError = true;
|
|
4499
|
+
emit({
|
|
4500
|
+
type: "cost_budget_exhausted",
|
|
4501
|
+
limit_usd: options.maxCostUsd,
|
|
4502
|
+
spent_usd: costBudget.spentUsd,
|
|
4503
|
+
session_id: sessionId,
|
|
4504
|
+
turn: turns,
|
|
4505
|
+
});
|
|
4506
|
+
break;
|
|
4507
|
+
}
|
|
4508
|
+
continue;
|
|
4509
|
+
}
|
|
4510
|
+
if (settledCompactionUsage) {
|
|
4511
|
+
// Only a kernel-owned precommit rejection permits continuing. A
|
|
4512
|
+
// commit failure may have changed durable state, but cannot erase
|
|
4513
|
+
// the provider usage that this host already settled.
|
|
4514
|
+
emit({
|
|
4515
|
+
type: "compaction-degraded",
|
|
4516
|
+
code: error.code,
|
|
4517
|
+
reason: "canonical_compaction_settlement_failed",
|
|
4518
|
+
summaryMode: "none",
|
|
4519
|
+
});
|
|
4520
|
+
emit({
|
|
4521
|
+
type: "result",
|
|
4522
|
+
subtype: "error_compaction_settlement",
|
|
4523
|
+
is_error: true,
|
|
4524
|
+
code: error.code || "CC_COMPACTION_SETTLEMENT_FAILED",
|
|
4525
|
+
error:
|
|
4526
|
+
"Compaction settlement failed; the paid compaction is not retried",
|
|
4527
|
+
session_id: sessionId,
|
|
4528
|
+
});
|
|
4529
|
+
sawError = true;
|
|
4530
|
+
break;
|
|
4531
|
+
}
|
|
4414
4532
|
if (error?.code === AGENT_EVOLUTION_INGRESS_FAILED_CODE) {
|
|
4415
4533
|
evolutionIngressFailed = true;
|
|
4416
4534
|
sawError = true;
|
|
@@ -4431,6 +4549,22 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
4431
4549
|
"headless semantic compaction",
|
|
4432
4550
|
);
|
|
4433
4551
|
}
|
|
4552
|
+
emit({
|
|
4553
|
+
...event,
|
|
4554
|
+
type: "compaction_usage_unknown",
|
|
4555
|
+
usage_outcome: "unknown",
|
|
4556
|
+
});
|
|
4557
|
+
emit({
|
|
4558
|
+
type: "result",
|
|
4559
|
+
subtype: "error_compaction_usage_unknown",
|
|
4560
|
+
is_error: true,
|
|
4561
|
+
code: "CC_COMPACTION_USAGE_UNKNOWN",
|
|
4562
|
+
error:
|
|
4563
|
+
"Compaction provider usage is unknown; the paid compaction is not retried",
|
|
4564
|
+
session_id: sessionId,
|
|
4565
|
+
});
|
|
4566
|
+
sawError = true;
|
|
4567
|
+
break;
|
|
4434
4568
|
}
|
|
4435
4569
|
if (error?.code === AGENT_EVOLUTION_INGRESS_FAILED_CODE) {
|
|
4436
4570
|
emit({
|
|
@@ -4487,8 +4621,7 @@ async function runAgentHeadlessStreamInWorkspace(
|
|
|
4487
4621
|
sawError = true;
|
|
4488
4622
|
break;
|
|
4489
4623
|
}
|
|
4490
|
-
|
|
4491
|
-
if (usageEvent) {
|
|
4624
|
+
if (usageEvent && !settledCompactionUsage) {
|
|
4492
4625
|
const event = {
|
|
4493
4626
|
type: "token-usage",
|
|
4494
4627
|
callId: compactionCallId,
|
|
Binary file
|
|
@@ -4,7 +4,10 @@
|
|
|
4
4
|
* agent-core. Shared usage validation also serves non-streamed responses.
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import {
|
|
7
|
+
import {
|
|
8
|
+
projectUsagePricingContext,
|
|
9
|
+
projectEnvelopePricingContext,
|
|
10
|
+
} from "../lib/usage-pricing-context.js";
|
|
8
11
|
|
|
9
12
|
export function _isNonNegativeSafeInteger(value) {
|
|
10
13
|
return Number.isSafeInteger(value) && value >= 0;
|
|
@@ -309,6 +312,15 @@ export function _openaiReduceLine(state, raw, onToken) {
|
|
|
309
312
|
return state;
|
|
310
313
|
}
|
|
311
314
|
if (!state.responseId) state.responseId = _providerReceiptId(obj.id);
|
|
315
|
+
const pricing = projectEnvelopePricingContext(obj.usage || {}, obj);
|
|
316
|
+
for (const [key, value] of Object.entries(pricing)) {
|
|
317
|
+
if (
|
|
318
|
+
Object.hasOwn(state.pricingContext || {}, key) &&
|
|
319
|
+
state.pricingContext[key] !== value
|
|
320
|
+
)
|
|
321
|
+
pricing.pricingContextInvalid = true;
|
|
322
|
+
}
|
|
323
|
+
state.pricingContext = { ...state.pricingContext, ...pricing };
|
|
312
324
|
const delta = obj.choices?.[0]?.delta;
|
|
313
325
|
if (delta?.content) {
|
|
314
326
|
state.text += delta.content;
|
|
@@ -373,6 +385,7 @@ export function _openaiFinalize(state) {
|
|
|
373
385
|
input_tokens: state.inputTokens,
|
|
374
386
|
output_tokens: state.outputTokens,
|
|
375
387
|
cache_read_input_tokens: state.cacheReadTokens,
|
|
388
|
+
...state.pricingContext,
|
|
376
389
|
};
|
|
377
390
|
}
|
|
378
391
|
return out;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{P as c,J as d,b as s}from"./vendor-Bn1JzzAn.js";import{r as a}from"./markdown-Yo_c6Krv.js";import{_ as p}from"./index-DpaGe-dr.js";const _={__name:"MarkdownRenderer",props:{content:{type:String,default:""}},setup(t,{expose:o}){o();const e=t,r=s(()=>a(e.content||"")),n={props:e,rendered:r,computed:s,get renderMarkdown(){return a}};return Object.defineProperty(n,"__isScriptSetup",{enumerable:!1,value:!0}),n}},i=["innerHTML"];function m(t,o,e,r,n,u){return c(),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-dOhDed/repo/packages/web-panel/src/components/MarkdownRenderer.vue"]]);export{w as M};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{I as w,P as l,J as u,U as s,R as n,c as i,K as v,Q as _,V as g,b as a}from"./vendor-Bn1JzzAn.js";import{_ as S}from"./index-DpaGe-dr.js";import"./icons-DG5UD-6K.js";const k={__name:"OrderTableRenderer",props:{event:{type:Object,required:!0}},setup(p,{expose:r}){r();const o=p,e=a(()=>o.event.content||{}),d=a(()=>o.event.extra||{}),m=a(()=>d.value.merchant||e.value.merchant||e.value.counterparty||"—"),c=a(()=>e.value.title||e.value.name||e.value.itemName||e.value.text||"—"),y=a(()=>{const t=e.value.amount??e.value.price??e.value.total;return t==null?"—":`${e.value.currency||"¥"} ${typeof t=="number"?t.toFixed(2):t}`}),T=a(()=>d.value.orderNo||e.value.orderNo||e.value.orderId),f=a(()=>e.value.status||e.value.state),h=a(()=>{const t=(f.value||"").toLowerCase();return t.includes("成功")||t.includes("succe")||t.includes("paid")?"green":t.includes("退")||t.includes("refund")?"orange":t.includes("失败")||t.includes("fail")?"red":"default"}),b=a(()=>{if(!o.event.occurredAt)return"";const t=new Date(o.event.occurredAt);return`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")} ${String(t.getHours()).padStart(2,"0")}:${String(t.getMinutes()).padStart(2,"0")}`}),x={props:o,c:e,e:d,merchantText:m,itemText:c,amountText:y,orderNo:T,statusText:f,statusColor:h,formattedTime:b,computed:a};return Object.defineProperty(x,"__isScriptSetup",{enumerable:!1,value:!0}),x}},N={class:"order-card"},C={class:"head"},O={class:"time"},V={class:"row"},D={class:"val"},R={class:"row"},B={class:"val"},I={class:"row amount-row"},j={class:"val amount"},A={key:0,class:"row"},F={class:"val mono"},M={key:1,class:"row"};function P(p,r,o,e,d,m){const c=w("a-tag");return l(),u("div",N,[s("div",C,[s("span",O,n(e.formattedTime),1),i(c,{color:"gold"},{default:v(()=>[_(n(o.event.source.adapter),1)]),_:1}),i(c,null,{default:v(()=>[_(n(o.event.subtype),1)]),_:1})]),s("div",V,[r[0]||(r[0]=s("span",{class:"key"},"商户",-1)),s("span",D,n(e.merchantText),1)]),s("div",R,[r[1]||(r[1]=s("span",{class:"key"},"商品/项目",-1)),s("span",B,n(e.itemText),1)]),s("div",I,[r[2]||(r[2]=s("span",{class:"key"},"金额",-1)),s("span",j,n(e.amountText),1)]),e.orderNo?(l(),u("div",A,[r[3]||(r[3]=s("span",{class:"key"},"单号",-1)),s("span",F,n(e.orderNo),1)])):g("v-if",!0),e.statusText?(l(),u("div",M,[r[4]||(r[4]=s("span",{class:"key"},"状态",-1)),i(c,{color:e.statusColor},{default:v(()=>[_(n(e.statusText),1)]),_:1},8,["color"])])):g("v-if",!0)])}const K=S(k,[["render",P],["__scopeId","data-v-5ed5524d"],["__file","/tmp/cc-web-panel-dOhDed/repo/packages/web-panel/src/components/pdh/renderers/OrderTableRenderer.vue"]]);export{K as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Q as r}from"./index-DpaGe-dr.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-CA2BYQ8T.js";import{a0 as t}from"./index-DpaGe-dr.js";import"./vendor-Bn1JzzAn.js";import"./index-B-bb-R99.js";import"./icons-DG5UD-6K.js";const s=t(o);export{s as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{A as o}from"./Row-xZ3MAM34.js";import{a0 as t}from"./index-DpaGe-dr.js";import"./vendor-Bn1JzzAn.js";import"./responsiveObserve-BXzeyzTa.js";import"./useFlexGapSupport-DrN8MrJb.js";import"./styleChecker-BnmJzXNr.js";import"./index-B-bb-R99.js";import"./icons-DG5UD-6K.js";const l=t(o);export{l as default};
|