@zhivex-ai/core 1.23.0-next.2 → 1.24.0-next.0
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 +2 -1
- package/dist/agent/children.d.ts.map +1 -1
- package/dist/agent/children.js +1 -0
- package/dist/agent/children.js.map +1 -1
- package/dist/agent/compaction.d.ts +6 -2
- package/dist/agent/compaction.d.ts.map +1 -1
- package/dist/agent/compaction.js +25 -16
- package/dist/agent/compaction.js.map +1 -1
- package/dist/agent/context.d.ts +3 -0
- package/dist/agent/context.d.ts.map +1 -1
- package/dist/agent/context.js +20 -2
- package/dist/agent/context.js.map +1 -1
- package/dist/agent/execution.d.ts.map +1 -1
- package/dist/agent/execution.js +149 -12
- package/dist/agent/execution.js.map +1 -1
- package/dist/agent-budget-coordinator.d.ts +23 -0
- package/dist/agent-budget-coordinator.d.ts.map +1 -0
- package/dist/agent-budget-coordinator.js +109 -0
- package/dist/agent-budget-coordinator.js.map +1 -0
- package/dist/agent-state.d.ts.map +1 -1
- package/dist/agent-state.js +49 -0
- package/dist/agent-state.js.map +1 -1
- package/dist/agents-entry.d.ts +1 -1
- package/dist/agents-entry.d.ts.map +1 -1
- package/dist/api-stability.d.ts.map +1 -1
- package/dist/api-stability.js +2 -0
- package/dist/api-stability.js.map +1 -1
- package/dist/catalog-contracts.d.ts +29 -1
- package/dist/catalog-contracts.d.ts.map +1 -1
- package/dist/catalog-contracts.js +97 -2
- package/dist/catalog-contracts.js.map +1 -1
- package/dist/catalog-entry.d.ts +4 -0
- package/dist/catalog-entry.d.ts.map +1 -0
- package/dist/catalog-entry.js +4 -0
- package/dist/catalog-entry.js.map +1 -0
- package/dist/catalog-recommendation.d.ts +39 -0
- package/dist/catalog-recommendation.d.ts.map +1 -0
- package/dist/catalog-recommendation.js +133 -0
- package/dist/catalog-recommendation.js.map +1 -0
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp-http-common.d.ts +28 -0
- package/dist/mcp-http-common.d.ts.map +1 -0
- package/dist/mcp-http-common.js +92 -0
- package/dist/mcp-http-common.js.map +1 -0
- package/dist/mcp-http.d.ts +34 -0
- package/dist/mcp-http.d.ts.map +1 -0
- package/dist/mcp-http.js +225 -0
- package/dist/mcp-http.js.map +1 -0
- package/dist/mcp-oauth.d.ts +48 -0
- package/dist/mcp-oauth.d.ts.map +1 -0
- package/dist/mcp-oauth.js +165 -0
- package/dist/mcp-oauth.js.map +1 -0
- package/dist/mcp.d.ts +69 -0
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js.map +1 -1
- package/dist/safety-policy.js +2 -2
- package/dist/safety-policy.js.map +1 -1
- package/dist/types/agent-state.d.ts +43 -0
- package/dist/types/agent-state.d.ts.map +1 -1
- package/package.json +7 -3
package/README.md
CHANGED
|
@@ -48,7 +48,8 @@ surface. The package root remains backward compatible.
|
|
|
48
48
|
| `@zhivex-ai/core/agents` | Agent runtime and safety, without storage backends | Server-side |
|
|
49
49
|
| `@zhivex-ai/core/generation` | Server-side generation and model wrapping, without stores or agents | Crypto only |
|
|
50
50
|
| `@zhivex-ai/core/provider` | Adapter HTTP, SSE, realtime, and message helpers | Server-side |
|
|
51
|
-
| `@zhivex-ai/core/catalog` | Catalog contracts and
|
|
51
|
+
| `@zhivex-ai/core/catalog` | Catalog contracts, factory and opt-in auxiliary model recommendations, without a default inventory | None |
|
|
52
|
+
| `@zhivex-ai/core/mcp-http` | Opt-in Beta MCP HTTP transport and host-owned OAuth authentication | None |
|
|
52
53
|
| `@zhivex-ai/core/runtime` | Adapter, message, tool, media, retrieval, and realtime primitives | None |
|
|
53
54
|
| `@zhivex-ai/core/workflows` | Portable workflow orchestration, evaluation contracts, diffs, and gates | None |
|
|
54
55
|
| `@zhivex-ai/core/ui` | UI messages, request parsing, and response streams | None |
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"children.d.ts","sourceRoot":"","sources":["../../src/agent/children.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGhG,eAAO,MAAM,cAAc,uCAA8C,CAAC;AAG1E,eAAO,MAAM,kBAAkB,eAA+B,CAAC;AAC/D,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG;IACjD,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CACvD,CAAC;AACF,eAAO,MAAM,iBAAiB,UAAW,eAAe,SAAS,aAAa,SAE7E,CAAC;AAEF,eAAO,MAAM,eAAe,UAAW,aAAa,KAAG,
|
|
1
|
+
{"version":3,"file":"children.d.ts","sourceRoot":"","sources":["../../src/agent/children.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGhG,eAAO,MAAM,cAAc,uCAA8C,CAAC;AAG1E,eAAO,MAAM,kBAAkB,eAA+B,CAAC;AAC/D,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG;IACjD,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CACvD,CAAC;AACF,eAAO,MAAM,iBAAiB,UAAW,eAAe,SAAS,aAAa,SAE7E,CAAC;AAEF,eAAO,MAAM,eAAe,UAAW,aAAa,KAAG,aAmBrD,CAAC;AAEH,eAAO,MAAM,cAAc,UAAW,aAAa,SAAS,aAAa,SAMxE,CAAC;AAEF,gGAAgG;AAChG,eAAO,MAAM,kBAAkB,UAAiB,aAAa,UAAU,aAAa,yBAA6B,OAAO,CAAC,IAAI,CAmB5H,CAAC;AAEF,eAAO,MAAM,gBAAgB,UAAiB,aAAa,UAAU,aAAa,KAAG,OAAO,CAAC,aAAa,CAYzG,CAAC"}
|
package/dist/agent/children.js
CHANGED
|
@@ -18,6 +18,7 @@ export const projectChildRun = (state) => ({
|
|
|
18
18
|
toolErrors: countToolErrors(state.toolResults),
|
|
19
19
|
usage: state.usage,
|
|
20
20
|
childRuns: state.childRuns,
|
|
21
|
+
unknownCompactionUsage: state.compactionAttempts?.some(attempt => attempt.status !== "confirmed") ?? false,
|
|
21
22
|
startedAt: state.startedAt,
|
|
22
23
|
updatedAt: state.updatedAt,
|
|
23
24
|
error: state.error,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"children.js","sourceRoot":"","sources":["../../src/agent/children.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"children.js","sourceRoot":"","sources":["../../src/agent/children.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import type { AgentCompactionOptions, AgentCompactionRecord, AgentRunState, ModelMessage } from "../types.js";
|
|
2
|
-
export declare const compactAgentMessages: <TContext>(options: AgentCompactionOptions<TContext>, state: AgentRunState, messages: readonly ModelMessage[], beforeStep: number, context: TContext | undefined, abortSignal: AbortSignal | undefined
|
|
1
|
+
import type { AgentCompactionOptions, AgentCompactionRecord, AgentCompactionResult, AgentRunState, ModelMessage } from "../types.js";
|
|
2
|
+
export declare const compactAgentMessages: <TContext>(options: AgentCompactionOptions<TContext>, state: AgentRunState, messages: readonly ModelMessage[], beforeStep: number, context: TContext | undefined, abortSignal: AbortSignal | undefined, lifecycle?: {
|
|
3
|
+
before: (id: string, sourceDigest: string) => Promise<void>;
|
|
4
|
+
returned: (result: AgentCompactionResult) => Promise<void>;
|
|
5
|
+
failed: () => Promise<void>;
|
|
6
|
+
}) => Promise<{
|
|
3
7
|
messages: ModelMessage[];
|
|
4
8
|
record: AgentCompactionRecord;
|
|
5
9
|
} | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compaction.d.ts","sourceRoot":"","sources":["../../src/agent/compaction.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,sBAAsB,EAEtB,qBAAqB,EACrB,aAAa,EACb,YAAY,EACb,MAAM,aAAa,CAAC;AA6BrB,eAAO,MAAM,oBAAoB,GAAU,QAAQ,WACxC,sBAAsB,CAAC,QAAQ,CAAC,SAClC,aAAa,YACV,SAAS,YAAY,EAAE,cACrB,MAAM,WACT,QAAQ,GAAG,SAAS,eAChB,WAAW,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"compaction.d.ts","sourceRoot":"","sources":["../../src/agent/compaction.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,sBAAsB,EAEtB,qBAAqB,EACrB,qBAAqB,EACrB,aAAa,EACb,YAAY,EACb,MAAM,aAAa,CAAC;AA6BrB,eAAO,MAAM,oBAAoB,GAAU,QAAQ,WACxC,sBAAsB,CAAC,QAAQ,CAAC,SAClC,aAAa,YACV,SAAS,YAAY,EAAE,cACrB,MAAM,WACT,QAAQ,GAAG,SAAS,eAChB,WAAW,GAAG,SAAS,cACxB;IACV,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,QAAQ,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B,KACA,OAAO,CAAC;IAAE,QAAQ,EAAE,YAAY,EAAE,CAAC;IAAC,MAAM,EAAE,qBAAqB,CAAA;CAAE,GAAG,SAAS,CAmJjF,CAAC"}
|
package/dist/agent/compaction.js
CHANGED
|
@@ -20,7 +20,7 @@ const validateCompactionOptions = (options) => {
|
|
|
20
20
|
throw new ValidationError("Agent compaction requires maxMessages or maxEstimatedInputTokens.");
|
|
21
21
|
}
|
|
22
22
|
};
|
|
23
|
-
export const compactAgentMessages = async (options, state, messages, beforeStep, context, abortSignal) => {
|
|
23
|
+
export const compactAgentMessages = async (options, state, messages, beforeStep, context, abortSignal, lifecycle) => {
|
|
24
24
|
validateCompactionOptions(options);
|
|
25
25
|
if (state.pendingApprovals.length) {
|
|
26
26
|
return undefined;
|
|
@@ -95,21 +95,30 @@ export const compactAgentMessages = async (options, state, messages, beforeStep,
|
|
|
95
95
|
const id = `cmp_${createHash("sha256")
|
|
96
96
|
.update(`${state.runId}\0${beforeStep}\0${sourceDigest}`)
|
|
97
97
|
.digest("hex")}`;
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
98
|
+
await lifecycle?.before(id, sourceDigest);
|
|
99
|
+
let result;
|
|
100
|
+
try {
|
|
101
|
+
result = await options.compactor({
|
|
102
|
+
runId: state.runId,
|
|
103
|
+
agentId: state.agentId,
|
|
104
|
+
scope: state.scope,
|
|
105
|
+
beforeStep,
|
|
106
|
+
context,
|
|
107
|
+
messages: compactedMessages,
|
|
108
|
+
retainedMessages,
|
|
109
|
+
reasons,
|
|
110
|
+
estimatedTokensBefore,
|
|
111
|
+
sourceDigest,
|
|
112
|
+
idempotencyKey: id,
|
|
113
|
+
metadata: state.metadata,
|
|
114
|
+
abortSignal
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
catch (error) {
|
|
118
|
+
await lifecycle?.failed();
|
|
119
|
+
throw error;
|
|
120
|
+
}
|
|
121
|
+
await lifecycle?.returned(result);
|
|
113
122
|
const summary = result.summary.trim();
|
|
114
123
|
if (!summary) {
|
|
115
124
|
throw new ValidationError("Agent compactor returned an empty summary.");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compaction.js","sourceRoot":"","sources":["../../src/agent/compaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACX,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,uBAAuB,EACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,eAAe,EAChB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"compaction.js","sourceRoot":"","sources":["../../src/agent/compaction.ts"],"names":[],"mappings":"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"}
|
package/dist/agent/context.d.ts
CHANGED
|
@@ -29,6 +29,9 @@ export declare const resolveContext: <TModel extends LanguageModel, TContext, TO
|
|
|
29
29
|
usage?: import("../types.js").TokenUsage;
|
|
30
30
|
childRuns?: import("../types.js").AgentChildRun[];
|
|
31
31
|
compactions?: import("../types.js").AgentCompactionRecord[];
|
|
32
|
+
compactionAttempts?: import("../types.js").AgentCompactionAttempt[];
|
|
33
|
+
compactionRouteFingerprint?: string;
|
|
34
|
+
budgetCoordinatorId?: string;
|
|
32
35
|
handoff?: import("../types.js").AgentHandoff;
|
|
33
36
|
startedAt?: number;
|
|
34
37
|
cancelledAt?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/agent/context.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/agent/context.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EACV,eAAe,EACf,gCAAgC,EAChC,aAAa,EACb,aAAa,EACb,aAAa,EACb,SAAS,EACT,aAAa,EACb,YAAY,EACb,MAAM,aAAa,CAAC;AAyFrB,eAAO,MAAM,2BAA2B,UAAW,aAAa,SAAS,aAAa,GAAG,SAAS,SAYjG,CAAC;AAEF,eAAO,MAAM,gBAAgB,UAAW,aAAa,CAAC,OAAO,CAAC,SAU7D,CAAC;AA0IF,eAAO,MAAM,cAAc,GACzB,MAAM,SAAS,aAAa,EAC5B,QAAQ,EACR,OAAO,EACP,aAAa,SAEN,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,SACzD,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAgHpC,YAAY,EAAE;;;;EAqCzC,CAAC"}
|
package/dist/agent/context.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { validateMaxSteps } from "../validate-max-steps.js";
|
|
2
2
|
import { createAgentHandoffMessage } from "../agent-handoff-contracts.js";
|
|
3
|
-
import { createAgentExecutionEnvironmentBinding } from "../agent-harness.js";
|
|
3
|
+
import { createAgentExecutionEnvironmentBinding, fingerprintAgentHarness } from "../agent-harness.js";
|
|
4
4
|
import { AGENT_RUN_STATE_SCHEMA_VERSION, normalizeAgentRunState } from "../agent-state.js";
|
|
5
5
|
import { ConflictError, ValidationError } from "../errors.js";
|
|
6
6
|
import { normalizeMessages } from "../generate-text.js";
|
|
@@ -119,6 +119,21 @@ const bindDurableRuntime = (agent, input, state, executionEnvironment) => {
|
|
|
119
119
|
...(agent.policy ?? {}),
|
|
120
120
|
...(input.policy ?? {})
|
|
121
121
|
};
|
|
122
|
+
if (state.budgetCoordinatorId && state.budgetCoordinatorId !== policy.budgetCoordinator?.id) {
|
|
123
|
+
throw new ConflictError("Cannot resume with a different shared budget coordinator.");
|
|
124
|
+
}
|
|
125
|
+
if (policy.budgetCoordinator)
|
|
126
|
+
state.budgetCoordinatorId = policy.budgetCoordinator.id;
|
|
127
|
+
const compaction = input.compaction === false ? undefined : input.compaction ?? agent.compaction;
|
|
128
|
+
const routeFingerprint = compaction?.auxiliary ? fingerprintAgentHarness(compaction.auxiliary) : undefined;
|
|
129
|
+
if (state.compactionRouteFingerprint && state.compactionRouteFingerprint !== routeFingerprint) {
|
|
130
|
+
throw new ConflictError("Cannot resume with a different auxiliary compaction route.");
|
|
131
|
+
}
|
|
132
|
+
if (routeFingerprint)
|
|
133
|
+
state.compactionRouteFingerprint = routeFingerprint;
|
|
134
|
+
if (state.compactionAttempts?.some(attempt => attempt.status !== "confirmed")) {
|
|
135
|
+
throw new ConflictError("Auxiliary compaction consumption is unknown; reconcile the durable attempt before resuming.");
|
|
136
|
+
}
|
|
122
137
|
if (state.harness && !agent.harness) {
|
|
123
138
|
throw new ConflictError(`Agent run "${state.runId}" is bound to harness "${state.harness.id}", but the current agent has no harness binding.`);
|
|
124
139
|
}
|
|
@@ -196,6 +211,7 @@ export const resolveContext = async (agent, input) => {
|
|
|
196
211
|
const metadata = cloneMetadata(agent.metadata, input.metadata, input.handoff?.metadata);
|
|
197
212
|
const prepared = await prepareFreshMessages(agent, input, runId);
|
|
198
213
|
const candidate = createBaseState(agent.model.provider, agent.model.modelId, prepared.messages, maxSteps, metadata, agent.id, runId, input.handoff, input.parentRunId, input.idempotencyKey, inputScope, resolveAgentOutputMode(agent), agent.harness, executionEnvironmentBinding);
|
|
214
|
+
bindDurableRuntime(agent, input, candidate, executionEnvironmentBinding);
|
|
199
215
|
const claim = await agent.store.claimIdempotencyKey(candidate);
|
|
200
216
|
if (claim.claimed) {
|
|
201
217
|
return {
|
|
@@ -255,8 +271,10 @@ export const resolveContext = async (agent, input) => {
|
|
|
255
271
|
const runId = input.runId ?? randomId("run");
|
|
256
272
|
const maxSteps = validateMaxSteps(input.maxSteps ?? agent.maxSteps);
|
|
257
273
|
const prepared = await prepareFreshMessages(agent, input, runId);
|
|
274
|
+
const state = createBaseState(agent.model.provider, agent.model.modelId, prepared.messages, maxSteps, metadata, agent.id, runId, input.handoff, input.parentRunId, input.idempotencyKey, inputScope, resolveAgentOutputMode(agent), agent.harness, executionEnvironmentBinding);
|
|
275
|
+
bindDurableRuntime(agent, input, state, executionEnvironmentBinding);
|
|
258
276
|
return {
|
|
259
|
-
state
|
|
277
|
+
state,
|
|
260
278
|
messages: prepared.messages,
|
|
261
279
|
remainingSteps: maxSteps,
|
|
262
280
|
memoryMessages: prepared.memoryMessages,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/agent/context.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/agent/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/agent/execution.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/agent/execution.ts"],"names":[],"mappings":"AAiDA,OAAO,EACL,CAAC,EACF,MAAM,KAAK,CAAC;AACb,OAAO,KAAK,EAGV,eAAe,EAGf,aAAa,EACb,cAAc,EACd,aAAa,EAKb,iBAAiB,EACjB,yBAAyB,EAGzB,aAAa,EAGb,kBAAkB,EAClB,cAAc,EACf,MAAM,aAAa,CAAC;AA0DrB,QAAA,MAAM,uBAAuB;;;iBAG3B,CAAC;AAaH,eAAO,MAAM,kBAAkB,GAAI,MAAM,SAAS,aAAa,WACpD,yBAAyB,CAAC,MAAM,CAAC,KACzC,cAAc,CAAC,OAAO,uBAAuB,EAAE,kBAAkB,CAwLnE,CAAC;AAsZF,eAAO,MAAM,QAAQ,GACnB,MAAM,SAAS,aAAa,EAC5B,QAAQ,GAAG,OAAO,EAClB,OAAO,GAAG,OAAO,EACjB,aAAa,GAAG,QAAQ,SAEjB,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,UACzD,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,KAC7D,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAwOjC,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,MAAM,SAAS,aAAa,EAC5B,QAAQ,GAAG,OAAO,EAClB,OAAO,GAAG,OAAO,EACjB,aAAa,GAAG,QAAQ,SAEjB,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,UACzD,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,KAC7D,iBAAiB,CAAC,OAAO,CAsc3B,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,MAAM,SAAS,aAAa,EAC5B,QAAQ,GAAG,OAAO,EAClB,OAAO,GAAG,OAAO,EACjB,aAAa,GAAG,QAAQ,SAEjB,eAAe,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,SACzD,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,GAAG;IAAE,KAAK,EAAE,aAAa,CAAA;CAAE,KACxF,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAqE,CAAC"}
|
package/dist/agent/execution.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createAgentBudgetCoordinator, assertAgentTokenReservation } from "../agent-budget-coordinator.js";
|
|
1
2
|
import { childStateObserver, loadFailureState, runCheckpoints, observeChildState, projectChildRun, reconcileChildRuns, upsertChildRun } from "./children.js";
|
|
2
3
|
import { validateMaxSteps } from "../validate-max-steps.js";
|
|
3
4
|
import { createRunViewSink, runViewSink, runViewParent } from "../agent-run-view.js";
|
|
@@ -39,6 +40,7 @@ const defaultSubAgentToolName = (agent) => {
|
|
|
39
40
|
};
|
|
40
41
|
export const createSubAgentTool = (options) => {
|
|
41
42
|
const runtimeState = options.runtimeState;
|
|
43
|
+
const parentPolicy = options.parentPolicy;
|
|
42
44
|
const toolName = options.toolName ?? options.name ?? defaultSubAgentToolName(options.agent);
|
|
43
45
|
const metadata = {
|
|
44
46
|
type: "subagent"
|
|
@@ -60,6 +62,25 @@ export const createSubAgentTool = (options) => {
|
|
|
60
62
|
requiresApproval: options.requiresApproval,
|
|
61
63
|
metadata: cloneMetadata(metadata, options.metadata),
|
|
62
64
|
execute: async (input, executionContext) => {
|
|
65
|
+
const coordinator = parentPolicy?.budgetCoordinator;
|
|
66
|
+
const childBudgetId = `child:${options.parentRunId}:${executionContext?.step}:${executionContext?.toolCall.id}`;
|
|
67
|
+
const allocationId = `${childBudgetId}:${runtimeState?.revision ?? 0}`;
|
|
68
|
+
let childPolicy = options.agent.policy;
|
|
69
|
+
if (coordinator) {
|
|
70
|
+
const limits = childPolicy?.budget;
|
|
71
|
+
const allocation = { inputTokens: limits?.maxInputTokens, outputTokens: limits?.maxOutputTokens, totalTokens: limits?.maxTotalTokens };
|
|
72
|
+
assertAgentTokenReservation(allocation);
|
|
73
|
+
if (!options.agent.store)
|
|
74
|
+
throw new ValidationError("Shared child budgets require a durable run store.");
|
|
75
|
+
const modelReservation = childPolicy?.modelReservation ?? parentPolicy?.modelReservation;
|
|
76
|
+
if (!modelReservation)
|
|
77
|
+
throw new ValidationError("Shared child budgets require modelReservation.");
|
|
78
|
+
assertAgentTokenReservation(modelReservation);
|
|
79
|
+
await coordinator.reserve(allocationId, allocation);
|
|
80
|
+
childPolicy = { ...childPolicy, modelReservation, budgetCoordinator: createAgentBudgetCoordinator({
|
|
81
|
+
store: options.agent.store, scope: options.scope, budgetId: `${coordinator.id}:${childBudgetId}`, limits: allocation
|
|
82
|
+
}) };
|
|
83
|
+
}
|
|
63
84
|
await options.onStart?.({
|
|
64
85
|
toolName,
|
|
65
86
|
childAgentId: options.agent.id,
|
|
@@ -97,9 +118,21 @@ export const createSubAgentTool = (options) => {
|
|
|
97
118
|
reason: resolution.reason
|
|
98
119
|
}))
|
|
99
120
|
: [];
|
|
121
|
+
const previousChildUsage = checkpoint?.resumeState ? getAgentBudgetStatus(checkpoint.resumeState, {}).consumption : undefined;
|
|
122
|
+
const settleChild = async (childState) => {
|
|
123
|
+
if (!coordinator)
|
|
124
|
+
return;
|
|
125
|
+
const status = childState ? getAgentBudgetStatus(childState, {}) : undefined;
|
|
126
|
+
await coordinator.settle(allocationId, status && !status.unknownUsageRunIds.length ? {
|
|
127
|
+
inputTokens: status.consumption.inputTokens - (previousChildUsage?.inputTokens ?? 0),
|
|
128
|
+
outputTokens: status.consumption.outputTokens - (previousChildUsage?.outputTokens ?? 0),
|
|
129
|
+
totalTokens: status.consumption.totalTokens - (previousChildUsage?.totalTokens ?? 0)
|
|
130
|
+
} : undefined);
|
|
131
|
+
};
|
|
100
132
|
let latestState;
|
|
101
133
|
const observedAgent = {
|
|
102
134
|
...options.agent,
|
|
135
|
+
policy: childPolicy,
|
|
103
136
|
[childStateObserver]: (childState) => {
|
|
104
137
|
latestState = childState;
|
|
105
138
|
if (runtimeState)
|
|
@@ -130,6 +163,10 @@ export const createSubAgentTool = (options) => {
|
|
|
130
163
|
});
|
|
131
164
|
}
|
|
132
165
|
catch (error) {
|
|
166
|
+
try {
|
|
167
|
+
await settleChild(undefined);
|
|
168
|
+
}
|
|
169
|
+
catch { /* Unknown allocations remain reserved; preserve original failure. */ }
|
|
133
170
|
if (latestState) {
|
|
134
171
|
if (latestState.status === "running") {
|
|
135
172
|
latestState = createFailedState(latestState, error);
|
|
@@ -146,6 +183,7 @@ export const createSubAgentTool = (options) => {
|
|
|
146
183
|
}
|
|
147
184
|
throw error;
|
|
148
185
|
}
|
|
186
|
+
await settleChild(output.state);
|
|
149
187
|
const childRun = projectChildRun(output.state);
|
|
150
188
|
childRun.toolName = toolName;
|
|
151
189
|
childRun.toolCallId = toolCallId;
|
|
@@ -204,6 +242,7 @@ const createGenerateOptions = (agent, state, input, messages, maxSteps, context,
|
|
|
204
242
|
parentAgentId: state.agentId,
|
|
205
243
|
scope: state.scope,
|
|
206
244
|
runtimeState: state,
|
|
245
|
+
parentPolicy: resolveRunPolicy(agent, input),
|
|
207
246
|
onStart: async ({ toolName, childAgentId }) => {
|
|
208
247
|
await emitTelemetryEvent(agent, {
|
|
209
248
|
type: "subagent-start",
|
|
@@ -240,10 +279,20 @@ const createGenerateOptions = (agent, state, input, messages, maxSteps, context,
|
|
|
240
279
|
}
|
|
241
280
|
const finalTools = Object.keys(tools).length ? tools : undefined;
|
|
242
281
|
const budget = input.policy?.budget ?? agent.policy?.budget;
|
|
243
|
-
const runPolicy = resolveRunPolicy(agent, input);
|
|
282
|
+
const runPolicy = resolveRunPolicy(agent, input) ?? {};
|
|
283
|
+
const coordinator = runPolicy.budgetCoordinator;
|
|
284
|
+
if (coordinator) {
|
|
285
|
+
if (!runPolicy.modelReservation)
|
|
286
|
+
throw new ValidationError("budgetCoordinator requires an explicit modelReservation.");
|
|
287
|
+
assertAgentTokenReservation(runPolicy.modelReservation);
|
|
288
|
+
state.budgetCoordinatorId = coordinator.id;
|
|
289
|
+
}
|
|
290
|
+
let primaryReservationId;
|
|
244
291
|
const compaction = input.compaction === false
|
|
245
292
|
? undefined
|
|
246
293
|
: input.compaction ?? agent.compaction;
|
|
294
|
+
if (compaction?.auxiliary)
|
|
295
|
+
state.compactionRouteFingerprint = fingerprintAgentHarness(compaction.auxiliary);
|
|
247
296
|
let checkpointState = cloneState(state);
|
|
248
297
|
let liveUsage = state.usage;
|
|
249
298
|
const liveToolResults = [...state.toolResults];
|
|
@@ -257,6 +306,9 @@ const createGenerateOptions = (agent, state, input, messages, maxSteps, context,
|
|
|
257
306
|
].filter((value) => value !== undefined);
|
|
258
307
|
const maxTokens = tokenCeilings.length ? Math.min(...tokenCeilings) : undefined;
|
|
259
308
|
const requestedToolExecution = input.toolExecution ?? agent.toolExecution;
|
|
309
|
+
if (compaction?.auxiliary && agent.subagents?.length && requestedToolExecution?.parallel && !coordinator) {
|
|
310
|
+
throw new ValidationError("Paid compaction with parallel subagents requires a shared atomic budget coordinator; use serial subagent execution.");
|
|
311
|
+
}
|
|
260
312
|
const toolExecution = agent.subagents?.length && !(requestedToolExecution?.parallel && requestedToolExecution.independentOnly)
|
|
261
313
|
? {
|
|
262
314
|
...requestedToolExecution,
|
|
@@ -287,17 +339,95 @@ const createGenerateOptions = (agent, state, input, messages, maxSteps, context,
|
|
|
287
339
|
},
|
|
288
340
|
prepareModelMessages: compaction
|
|
289
341
|
? async ({ messages: activeMessages, step }) => {
|
|
290
|
-
|
|
342
|
+
let attempt;
|
|
343
|
+
const saveAttempt = async () => {
|
|
344
|
+
state.compactionAttempts = structuredClone(checkpointState.compactionAttempts);
|
|
345
|
+
runCheckpoints.set(state, checkpointState);
|
|
346
|
+
await persistState(agent, checkpointState, runPolicy);
|
|
347
|
+
state.revision = checkpointState.revision;
|
|
348
|
+
};
|
|
349
|
+
const compacted = await compactAgentMessages(compaction, checkpointState, activeMessages, step, context, abortSignal, {
|
|
350
|
+
before: async (id, sourceDigest) => {
|
|
351
|
+
const route = compaction.auxiliary;
|
|
352
|
+
if (!route)
|
|
353
|
+
return;
|
|
354
|
+
if (!agent.store)
|
|
355
|
+
throw new ValidationError("Paid auxiliary compaction requires an AgentRunStore for durable reservations.");
|
|
356
|
+
if (!route.provider || !route.modelId || !route.fingerprint ||
|
|
357
|
+
Object.values(route.reservation).some(value => !Number.isSafeInteger(value) || value < 0) ||
|
|
358
|
+
!Number.isSafeInteger(route.reservation.inputTokens) ||
|
|
359
|
+
!Number.isSafeInteger(route.reservation.outputTokens) ||
|
|
360
|
+
!Number.isSafeInteger(route.reservation.totalTokens) ||
|
|
361
|
+
route.reservation.totalTokens < route.reservation.inputTokens + route.reservation.outputTokens) {
|
|
362
|
+
throw new ValidationError("Auxiliary compaction requires an explicit route and a complete conservative token reservation.");
|
|
363
|
+
}
|
|
364
|
+
if (route.pricing && (!route.pricing.currency || !route.priceRevision ||
|
|
365
|
+
!Number.isFinite(route.pricing.inputCostPer1kTokens) || route.pricing.inputCostPer1kTokens < 0 ||
|
|
366
|
+
!Number.isFinite(route.pricing.outputCostPer1kTokens) || route.pricing.outputCostPer1kTokens < 0)) {
|
|
367
|
+
throw new ValidationError("Auxiliary pricing requires finite rates, currency and priceRevision.");
|
|
368
|
+
}
|
|
369
|
+
if (checkpointState.compactionAttempts?.some(entry => entry.id === id || entry.status !== "confirmed")) {
|
|
370
|
+
throw new ValidationError("Auxiliary compaction already attempted; automatic paid retries are unsafe.");
|
|
371
|
+
}
|
|
372
|
+
if (budget) {
|
|
373
|
+
const status = getAgentBudgetStatus({ ...state, usage: liveUsage, toolResults: liveToolResults }, budget);
|
|
374
|
+
for (const dimension of ["inputTokens", "outputTokens", "totalTokens"]) {
|
|
375
|
+
const available = status.remaining[dimension];
|
|
376
|
+
if (available !== undefined && route.reservation[dimension] > available) {
|
|
377
|
+
throw new ValidationError(`Auxiliary compaction reservation exceeds remaining ${dimension} budget.`);
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
abortSignal?.throwIfAborted();
|
|
382
|
+
await coordinator?.reserve(id, route.reservation);
|
|
383
|
+
attempt = { id, beforeStep: step, sourceDigest, route: structuredClone(route), status: "in-flight", createdAt: Date.now() };
|
|
384
|
+
checkpointState.compactionAttempts = [...(checkpointState.compactionAttempts ?? []), attempt];
|
|
385
|
+
await saveAttempt();
|
|
386
|
+
},
|
|
387
|
+
returned: async (result) => {
|
|
388
|
+
if (attempt) {
|
|
389
|
+
const complete = result.usage && [result.usage.inputTokens, result.usage.outputTokens, result.usage.totalTokens]
|
|
390
|
+
.every(value => typeof value === "number" && Number.isSafeInteger(value) && value >= 0) &&
|
|
391
|
+
result.usage.totalTokens >= result.usage.inputTokens + result.usage.outputTokens;
|
|
392
|
+
attempt.status = complete ? "confirmed" : "unknown";
|
|
393
|
+
attempt.usage = complete ? result.usage : undefined;
|
|
394
|
+
if (complete && attempt.route.pricing) {
|
|
395
|
+
const pricing = attempt.route.pricing;
|
|
396
|
+
const amount = ((result.usage.inputTokens * pricing.inputCostPer1kTokens) + (result.usage.outputTokens * pricing.outputCostPer1kTokens)) / 1000;
|
|
397
|
+
if (Number.isFinite(amount))
|
|
398
|
+
attempt.estimatedCost = { amount, currency: pricing.currency };
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
// A provider receipt is independent of accepting or saving its summary.
|
|
402
|
+
const confirmedUsage = attempt ? attempt.usage : result.usage;
|
|
403
|
+
checkpointState.usage = aggregateTokenUsage([checkpointState.usage, confirmedUsage]);
|
|
404
|
+
state.usage = aggregateTokenUsage([state.usage, confirmedUsage]);
|
|
405
|
+
liveUsage = aggregateTokenUsage([liveUsage, confirmedUsage]);
|
|
406
|
+
await saveAttempt();
|
|
407
|
+
if (attempt)
|
|
408
|
+
await coordinator?.settle(attempt.id, attempt.usage);
|
|
409
|
+
if (attempt?.status === "unknown")
|
|
410
|
+
throw new ValidationError("Auxiliary compaction returned unknown token consumption; reconcile before continuing.");
|
|
411
|
+
if (attempt && ["inputTokens", "outputTokens", "totalTokens"].some(key => {
|
|
412
|
+
const dimension = key;
|
|
413
|
+
return (attempt.usage?.[dimension] ?? 0) > attempt.route.reservation[dimension];
|
|
414
|
+
}))
|
|
415
|
+
throw new ValidationError("Auxiliary compaction exceeded its reservation; confirmed usage has been recorded.");
|
|
416
|
+
},
|
|
417
|
+
failed: async () => {
|
|
418
|
+
if (attempt) {
|
|
419
|
+
attempt.status = "unknown";
|
|
420
|
+
await saveAttempt();
|
|
421
|
+
await coordinator?.settle(attempt.id);
|
|
422
|
+
}
|
|
423
|
+
}
|
|
424
|
+
});
|
|
291
425
|
if (!compacted) {
|
|
292
426
|
return undefined;
|
|
293
427
|
}
|
|
294
428
|
checkpointState = {
|
|
295
429
|
...checkpointState,
|
|
296
430
|
messages: compacted.messages,
|
|
297
|
-
usage: aggregateTokenUsage([
|
|
298
|
-
checkpointState.usage,
|
|
299
|
-
compacted.record.usage
|
|
300
|
-
]),
|
|
301
431
|
compactions: [
|
|
302
432
|
...(checkpointState.compactions ?? []).filter((existing) => existing.id !== compacted.record.id),
|
|
303
433
|
compacted.record
|
|
@@ -305,10 +435,6 @@ const createGenerateOptions = (agent, state, input, messages, maxSteps, context,
|
|
|
305
435
|
updatedAt: Date.now()
|
|
306
436
|
};
|
|
307
437
|
state.messages = compacted.messages;
|
|
308
|
-
// Finalization adds this invocation's model usage. Only add the
|
|
309
|
-
// compactor here; checkpoint usage already includes model responses.
|
|
310
|
-
state.usage = aggregateTokenUsage([state.usage, compacted.record.usage]);
|
|
311
|
-
liveUsage = aggregateTokenUsage([liveUsage, compacted.record.usage]);
|
|
312
438
|
state.compactions = checkpointState.compactions;
|
|
313
439
|
await persistState(agent, checkpointState, runPolicy);
|
|
314
440
|
state.revision = checkpointState.revision;
|
|
@@ -316,12 +442,16 @@ const createGenerateOptions = (agent, state, input, messages, maxSteps, context,
|
|
|
316
442
|
return compacted.messages;
|
|
317
443
|
}
|
|
318
444
|
: undefined,
|
|
319
|
-
onBeforeModelStep: async ({ step }) => {
|
|
445
|
+
onBeforeModelStep: async ({ step, request }) => {
|
|
320
446
|
if (budget) {
|
|
447
|
+
const remaining = getAgentBudgetStatus({ ...state, usage: liveUsage, toolResults: liveToolResults }, budget).remaining;
|
|
448
|
+
const ceilings = [requestedMaxTokens, remaining.outputTokens, remaining.totalTokens].filter((value) => value !== undefined);
|
|
449
|
+
if (ceilings.length)
|
|
450
|
+
request.maxTokens = Math.min(...ceilings);
|
|
321
451
|
const trigger = evaluateAgentBudgetPreflight({ ...state, usage: liveUsage, toolResults: liveToolResults }, budget, {
|
|
322
452
|
operation: "model",
|
|
323
453
|
requiredSteps: Math.max(1, step - state.currentStep),
|
|
324
|
-
requestedOutputTokens: maxTokens
|
|
454
|
+
requestedOutputTokens: request.maxTokens
|
|
325
455
|
});
|
|
326
456
|
if (trigger) {
|
|
327
457
|
throw new GuardrailTriggeredError("input", trigger.reason ?? "Agent model budget preflight failed.", {
|
|
@@ -329,6 +459,11 @@ const createGenerateOptions = (agent, state, input, messages, maxSteps, context,
|
|
|
329
459
|
});
|
|
330
460
|
}
|
|
331
461
|
}
|
|
462
|
+
if (coordinator) {
|
|
463
|
+
primaryReservationId = `model:${state.runId}:${step}`;
|
|
464
|
+
await coordinator.reserve(primaryReservationId, runPolicy.modelReservation);
|
|
465
|
+
request.maxTokens = Math.min(request.maxTokens ?? Number.POSITIVE_INFINITY, runPolicy.modelReservation.outputTokens);
|
|
466
|
+
}
|
|
332
467
|
await emitTelemetryEvent(agent, {
|
|
333
468
|
type: "step-start",
|
|
334
469
|
runId: state.runId,
|
|
@@ -379,6 +514,8 @@ const createGenerateOptions = (agent, state, input, messages, maxSteps, context,
|
|
|
379
514
|
};
|
|
380
515
|
runCheckpoints.set(state, checkpointState);
|
|
381
516
|
observeChildState(agent, checkpointState);
|
|
517
|
+
if (coordinator && primaryReservationId)
|
|
518
|
+
await coordinator.settle(primaryReservationId, response.usage);
|
|
382
519
|
if (agent.store) {
|
|
383
520
|
await persistState(agent, checkpointState, runPolicy);
|
|
384
521
|
state.revision = checkpointState.revision;
|