@dogpile/sdk 0.4.0 → 0.5.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/CHANGELOG.md +65 -0
- package/dist/browser/index.js +726 -176
- package/dist/browser/index.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/providers/openai-compatible.d.ts.map +1 -1
- package/dist/providers/openai-compatible.js +1 -0
- package/dist/providers/openai-compatible.js.map +1 -1
- package/dist/runtime/audit.d.ts +42 -0
- package/dist/runtime/audit.d.ts.map +1 -0
- package/dist/runtime/audit.js +73 -0
- package/dist/runtime/audit.js.map +1 -0
- package/dist/runtime/broadcast.d.ts.map +1 -1
- package/dist/runtime/broadcast.js +39 -36
- package/dist/runtime/broadcast.js.map +1 -1
- package/dist/runtime/coordinator.d.ts +5 -0
- package/dist/runtime/coordinator.d.ts.map +1 -1
- package/dist/runtime/coordinator.js +50 -39
- package/dist/runtime/coordinator.js.map +1 -1
- package/dist/runtime/defaults.d.ts.map +1 -1
- package/dist/runtime/defaults.js +12 -4
- package/dist/runtime/defaults.js.map +1 -1
- package/dist/runtime/engine.d.ts +17 -4
- package/dist/runtime/engine.d.ts.map +1 -1
- package/dist/runtime/engine.js +523 -18
- package/dist/runtime/engine.js.map +1 -1
- package/dist/runtime/health.d.ts +51 -0
- package/dist/runtime/health.d.ts.map +1 -0
- package/dist/runtime/health.js +85 -0
- package/dist/runtime/health.js.map +1 -0
- package/dist/runtime/introspection.d.ts +96 -0
- package/dist/runtime/introspection.d.ts.map +1 -0
- package/dist/runtime/introspection.js +31 -0
- package/dist/runtime/introspection.js.map +1 -0
- package/dist/runtime/metrics.d.ts +44 -0
- package/dist/runtime/metrics.d.ts.map +1 -0
- package/dist/runtime/metrics.js +12 -0
- package/dist/runtime/metrics.js.map +1 -0
- package/dist/runtime/model.d.ts.map +1 -1
- package/dist/runtime/model.js +34 -7
- package/dist/runtime/model.js.map +1 -1
- package/dist/runtime/provenance.d.ts +25 -0
- package/dist/runtime/provenance.d.ts.map +1 -0
- package/dist/runtime/provenance.js +13 -0
- package/dist/runtime/provenance.js.map +1 -0
- package/dist/runtime/sequential.d.ts.map +1 -1
- package/dist/runtime/sequential.js +39 -36
- package/dist/runtime/sequential.js.map +1 -1
- package/dist/runtime/shared.d.ts.map +1 -1
- package/dist/runtime/shared.js +39 -36
- package/dist/runtime/shared.js.map +1 -1
- package/dist/runtime/tracing.d.ts +31 -0
- package/dist/runtime/tracing.d.ts.map +1 -0
- package/dist/runtime/tracing.js +18 -0
- package/dist/runtime/tracing.js.map +1 -0
- package/dist/types/events.d.ts +10 -4
- package/dist/types/events.d.ts.map +1 -1
- package/dist/types/replay.d.ts +2 -0
- package/dist/types/replay.d.ts.map +1 -1
- package/dist/types.d.ts +124 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +39 -1
- package/src/index.ts +5 -0
- package/src/providers/openai-compatible.ts +1 -0
- package/src/runtime/audit.ts +121 -0
- package/src/runtime/broadcast.ts +40 -37
- package/src/runtime/coordinator.ts +54 -39
- package/src/runtime/defaults.ts +13 -4
- package/src/runtime/engine.ts +648 -18
- package/src/runtime/health.ts +136 -0
- package/src/runtime/introspection.ts +122 -0
- package/src/runtime/metrics.ts +45 -0
- package/src/runtime/model.ts +38 -6
- package/src/runtime/provenance.ts +43 -0
- package/src/runtime/sequential.ts +40 -37
- package/src/runtime/shared.ts +40 -37
- package/src/runtime/tracing.ts +35 -0
- package/src/types/events.ts +10 -4
- package/src/types/replay.ts +2 -0
- package/src/types.ts +132 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/runtime/engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/runtime/engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Health diagnostics computation for completed run traces.
|
|
3
|
+
*
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
import type { RunHealthSummary, Trace } from "../types.js";
|
|
7
|
+
export type { HealthAnomaly, RunHealthSummary } from "../types.js";
|
|
8
|
+
/**
|
|
9
|
+
* Thresholds for health anomaly detection.
|
|
10
|
+
*
|
|
11
|
+
* Both fields are optional. When absent, the corresponding threshold-gated
|
|
12
|
+
* anomaly is suppressed entirely. Threshold-free anomalies (`empty-contribution`)
|
|
13
|
+
* always fire when qualifying events are present regardless of this config.
|
|
14
|
+
*
|
|
15
|
+
* Note: `provider-error-recovered` is in the AnomalyCode union but is never
|
|
16
|
+
* emitted by computeHealth in Phase 7 - no trace signal exists without an
|
|
17
|
+
* event-shape change. See STATE.md: "Phase 6 is the only event-shape change."
|
|
18
|
+
*/
|
|
19
|
+
export interface HealthThresholds {
|
|
20
|
+
/**
|
|
21
|
+
* Per-agent turn count threshold. If an agent produces more than this many
|
|
22
|
+
* agent-turn events, a "runaway-turns" anomaly is emitted with severity "error".
|
|
23
|
+
* The threshold value in the anomaly record equals this number.
|
|
24
|
+
*/
|
|
25
|
+
readonly runawayTurns?: number;
|
|
26
|
+
/**
|
|
27
|
+
* Budget utilization percentage threshold (0-100). If budget utilization
|
|
28
|
+
* (finalCost / maxUsd * 100) >= this value, a "budget-near-miss" anomaly is
|
|
29
|
+
* emitted with severity "warning". Suppressed when no USD cap is configured.
|
|
30
|
+
*/
|
|
31
|
+
readonly budgetNearMissPct?: number;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Default health thresholds used for `result.health` auto-computation.
|
|
35
|
+
*
|
|
36
|
+
* Both threshold-gated anomalies (runaway-turns, budget-near-miss) are suppressed
|
|
37
|
+
* by default. Only threshold-free anomalies (empty-contribution) can fire on the
|
|
38
|
+
* auto-compute path.
|
|
39
|
+
*/
|
|
40
|
+
export declare const DEFAULT_HEALTH_THRESHOLDS: HealthThresholds;
|
|
41
|
+
/**
|
|
42
|
+
* Compute a health summary from a completed run trace.
|
|
43
|
+
*
|
|
44
|
+
* Pure function - no side effects, no I/O, no storage access. Deterministic:
|
|
45
|
+
* given the same trace and thresholds, always produces the same result.
|
|
46
|
+
*
|
|
47
|
+
* @param trace - Completed run trace (from RunResult.trace or a stored trace).
|
|
48
|
+
* @param thresholds - Optional threshold overrides. Defaults to DEFAULT_HEALTH_THRESHOLDS.
|
|
49
|
+
*/
|
|
50
|
+
export declare function computeHealth(trace: Trace, thresholds?: HealthThresholds): RunHealthSummary;
|
|
51
|
+
//# sourceMappingURL=health.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../src/runtime/health.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAiB,gBAAgB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAI1E,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEnE;;;;;;;;;;GAUG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CACrC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,EAAE,gBAAoC,CAAC;AAE7E;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,KAAK,EACZ,UAAU,GAAE,gBAA4C,GACvD,gBAAgB,CA+DlB"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default health thresholds used for `result.health` auto-computation.
|
|
3
|
+
*
|
|
4
|
+
* Both threshold-gated anomalies (runaway-turns, budget-near-miss) are suppressed
|
|
5
|
+
* by default. Only threshold-free anomalies (empty-contribution) can fire on the
|
|
6
|
+
* auto-compute path.
|
|
7
|
+
*/
|
|
8
|
+
export const DEFAULT_HEALTH_THRESHOLDS = Object.freeze({});
|
|
9
|
+
/**
|
|
10
|
+
* Compute a health summary from a completed run trace.
|
|
11
|
+
*
|
|
12
|
+
* Pure function - no side effects, no I/O, no storage access. Deterministic:
|
|
13
|
+
* given the same trace and thresholds, always produces the same result.
|
|
14
|
+
*
|
|
15
|
+
* @param trace - Completed run trace (from RunResult.trace or a stored trace).
|
|
16
|
+
* @param thresholds - Optional threshold overrides. Defaults to DEFAULT_HEALTH_THRESHOLDS.
|
|
17
|
+
*/
|
|
18
|
+
export function computeHealth(trace, thresholds = DEFAULT_HEALTH_THRESHOLDS) {
|
|
19
|
+
assertFiniteNonNegativeThreshold(thresholds.runawayTurns, "runawayTurns");
|
|
20
|
+
assertBudgetNearMissThreshold(thresholds.budgetNearMissPct);
|
|
21
|
+
const turnEvents = trace.events.filter((event) => event.type === "agent-turn");
|
|
22
|
+
const agentIds = new Set(turnEvents.map((event) => event.agentId));
|
|
23
|
+
const totalTurns = turnEvents.length;
|
|
24
|
+
const agentCount = agentIds.size;
|
|
25
|
+
const maxUsd = trace.budget.caps?.maxUsd;
|
|
26
|
+
const finalCost = trace.finalOutput.cost.usd;
|
|
27
|
+
const budgetUtilizationPct = maxUsd !== undefined ? (maxUsd === 0 ? (finalCost === 0 ? 0 : 100) : (finalCost / maxUsd) * 100) : null;
|
|
28
|
+
const anomalies = [];
|
|
29
|
+
if (thresholds.runawayTurns !== undefined) {
|
|
30
|
+
for (const agentId of agentIds) {
|
|
31
|
+
const count = turnEvents.filter((event) => event.agentId === agentId).length;
|
|
32
|
+
if (count > thresholds.runawayTurns) {
|
|
33
|
+
anomalies.push({
|
|
34
|
+
code: "runaway-turns",
|
|
35
|
+
severity: "error",
|
|
36
|
+
value: count,
|
|
37
|
+
threshold: thresholds.runawayTurns,
|
|
38
|
+
agentId
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
if (thresholds.budgetNearMissPct !== undefined && budgetUtilizationPct !== null) {
|
|
44
|
+
if (budgetUtilizationPct >= thresholds.budgetNearMissPct) {
|
|
45
|
+
anomalies.push({
|
|
46
|
+
code: "budget-near-miss",
|
|
47
|
+
severity: "warning",
|
|
48
|
+
value: budgetUtilizationPct,
|
|
49
|
+
threshold: thresholds.budgetNearMissPct
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
for (const event of turnEvents) {
|
|
54
|
+
if (event.output.trim() === "") {
|
|
55
|
+
anomalies.push({
|
|
56
|
+
code: "empty-contribution",
|
|
57
|
+
severity: "error",
|
|
58
|
+
value: 0,
|
|
59
|
+
threshold: 0,
|
|
60
|
+
agentId: event.agentId
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
// provider-error-recovered is deferred: no trace signal exists in Phase 7.
|
|
65
|
+
return {
|
|
66
|
+
anomalies,
|
|
67
|
+
stats: {
|
|
68
|
+
totalTurns,
|
|
69
|
+
agentCount,
|
|
70
|
+
budgetUtilizationPct
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
function assertFiniteNonNegativeThreshold(value, name) {
|
|
75
|
+
if (value !== undefined && (!Number.isFinite(value) || value < 0)) {
|
|
76
|
+
throw new RangeError(`${name} must be a finite non-negative number`);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
function assertBudgetNearMissThreshold(value) {
|
|
80
|
+
assertFiniteNonNegativeThreshold(value, "budgetNearMissPct");
|
|
81
|
+
if (value !== undefined && value > 100) {
|
|
82
|
+
throw new RangeError("budgetNearMissPct must be between 0 and 100");
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=health.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/runtime/health.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Typed event query function for filtering completed trace events.
|
|
3
|
+
*
|
|
4
|
+
* @module
|
|
5
|
+
*/
|
|
6
|
+
import type { BroadcastEvent, BudgetStopEvent, FinalEvent, ModelOutputChunkEvent, ModelRequestEvent, ModelResponseEvent, RoleAssignmentEvent, RunEvent, SubRunBudgetClampedEvent, SubRunCompletedEvent, SubRunConcurrencyClampedEvent, SubRunFailedEvent, SubRunParentAbortedEvent, SubRunQueuedEvent, SubRunStartedEvent, ToolCallEvent, ToolResultEvent, TurnEvent } from "../types.js";
|
|
7
|
+
/**
|
|
8
|
+
* Filter criteria for querying a completed trace event log.
|
|
9
|
+
*
|
|
10
|
+
* All fields are optional. AND semantics: all present fields must match.
|
|
11
|
+
* An empty filter object returns all events. An unmatched filter returns [].
|
|
12
|
+
*
|
|
13
|
+
* `costRange` matches only events with a `cost.usd` field: TurnEvent and
|
|
14
|
+
* BroadcastEvent. Events without a cost field are excluded from results when
|
|
15
|
+
* `costRange` is set (not returned as unmatched - silently excluded).
|
|
16
|
+
*
|
|
17
|
+
* `turnRange` uses the global 1-based position of agent-turn events across
|
|
18
|
+
* all agents. Position 1 is the first TurnEvent in the event array regardless
|
|
19
|
+
* of which agent produced it. BroadcastEvent.round is a separate concept and
|
|
20
|
+
* is not matched by turnRange.
|
|
21
|
+
*/
|
|
22
|
+
export interface EventQueryFilter {
|
|
23
|
+
/** Filter to events with this exact type discriminant. */
|
|
24
|
+
readonly type?: RunEvent["type"];
|
|
25
|
+
/** Filter to events where agentId === this value. Events without agentId are excluded. */
|
|
26
|
+
readonly agentId?: string;
|
|
27
|
+
/**
|
|
28
|
+
* Filter to agent-turn events at the specified global 1-based position range.
|
|
29
|
+
* Only TurnEvents are included in results when this filter is set.
|
|
30
|
+
*/
|
|
31
|
+
readonly turnRange?: {
|
|
32
|
+
readonly min?: number;
|
|
33
|
+
readonly max?: number;
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Filter to events where cost.usd is within [min, max].
|
|
37
|
+
* Only TurnEvent and BroadcastEvent have cost.usd - all other events are excluded.
|
|
38
|
+
*/
|
|
39
|
+
readonly costRange?: {
|
|
40
|
+
readonly min?: number;
|
|
41
|
+
readonly max?: number;
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
45
|
+
type: "role-assignment";
|
|
46
|
+
}): RoleAssignmentEvent[];
|
|
47
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
48
|
+
type: "model-request";
|
|
49
|
+
}): ModelRequestEvent[];
|
|
50
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
51
|
+
type: "model-response";
|
|
52
|
+
}): ModelResponseEvent[];
|
|
53
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
54
|
+
type: "model-output-chunk";
|
|
55
|
+
}): ModelOutputChunkEvent[];
|
|
56
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
57
|
+
type: "tool-call";
|
|
58
|
+
}): ToolCallEvent[];
|
|
59
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
60
|
+
type: "tool-result";
|
|
61
|
+
}): ToolResultEvent[];
|
|
62
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
63
|
+
type: "agent-turn";
|
|
64
|
+
}): TurnEvent[];
|
|
65
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
66
|
+
type: "broadcast";
|
|
67
|
+
}): BroadcastEvent[];
|
|
68
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
69
|
+
type: "sub-run-started";
|
|
70
|
+
}): SubRunStartedEvent[];
|
|
71
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
72
|
+
type: "sub-run-completed";
|
|
73
|
+
}): SubRunCompletedEvent[];
|
|
74
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
75
|
+
type: "sub-run-failed";
|
|
76
|
+
}): SubRunFailedEvent[];
|
|
77
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
78
|
+
type: "sub-run-parent-aborted";
|
|
79
|
+
}): SubRunParentAbortedEvent[];
|
|
80
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
81
|
+
type: "sub-run-budget-clamped";
|
|
82
|
+
}): SubRunBudgetClampedEvent[];
|
|
83
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
84
|
+
type: "sub-run-queued";
|
|
85
|
+
}): SubRunQueuedEvent[];
|
|
86
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
87
|
+
type: "sub-run-concurrency-clamped";
|
|
88
|
+
}): SubRunConcurrencyClampedEvent[];
|
|
89
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
90
|
+
type: "budget-stop";
|
|
91
|
+
}): BudgetStopEvent[];
|
|
92
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter & {
|
|
93
|
+
type: "final";
|
|
94
|
+
}): FinalEvent[];
|
|
95
|
+
export declare function queryEvents(events: readonly RunEvent[], filter: EventQueryFilter): RunEvent[];
|
|
96
|
+
//# sourceMappingURL=introspection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"introspection.d.ts","sourceRoot":"","sources":["../../src/runtime/introspection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// Implementation signature (not visible to callers):
|
|
2
|
+
export function queryEvents(events, filter) {
|
|
3
|
+
let result = filter.type !== undefined
|
|
4
|
+
? events.filter((event) => event.type === filter.type)
|
|
5
|
+
: [...events];
|
|
6
|
+
if (filter.agentId !== undefined) {
|
|
7
|
+
const { agentId } = filter;
|
|
8
|
+
result = result.filter((event) => "agentId" in event && event.agentId === agentId);
|
|
9
|
+
}
|
|
10
|
+
if (filter.turnRange !== undefined) {
|
|
11
|
+
const { min, max } = filter.turnRange;
|
|
12
|
+
const agentTurnEvents = events.filter((event) => event.type === "agent-turn");
|
|
13
|
+
const inRangeSet = new Set(agentTurnEvents.filter((_, index) => {
|
|
14
|
+
const position = index + 1;
|
|
15
|
+
return (min === undefined || position >= min) && (max === undefined || position <= max);
|
|
16
|
+
}));
|
|
17
|
+
result = result.filter((event) => event.type === "agent-turn" && inRangeSet.has(event));
|
|
18
|
+
}
|
|
19
|
+
if (filter.costRange !== undefined) {
|
|
20
|
+
const { min, max } = filter.costRange;
|
|
21
|
+
result = result.filter((event) => {
|
|
22
|
+
if (event.type !== "agent-turn" && event.type !== "broadcast") {
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
const usd = event.cost.usd;
|
|
26
|
+
return (min === undefined || usd >= min) && (max === undefined || usd <= max);
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
return result;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=introspection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"introspection.js","sourceRoot":"","sources":["../../src/runtime/introspection.ts"],"names":[],"mappings":"AAoFA,qDAAqD;AACrD,MAAM,UAAU,WAAW,CAAC,MAA2B,EAAE,MAAwB;IAC/E,IAAI,MAAM,GAAe,MAAM,CAAC,IAAI,KAAK,SAAS;QAChD,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC;QACtD,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;IAEhB,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;QAC3B,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,IAAI,KAAK,IAAK,KAA8B,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;IAC/G,CAAC;IAED,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC;QACtC,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAsB,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;QAClG,MAAM,UAAU,GAAG,IAAI,GAAG,CACxB,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;YAClC,MAAM,QAAQ,GAAG,KAAK,GAAG,CAAC,CAAC;YAC3B,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,QAAQ,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,IAAI,QAAQ,IAAI,GAAG,CAAC,CAAC;QAC1F,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC;QACtC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;YAC/B,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC9D,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;YAC3B,OAAO,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metrics hook interface for run-completion counters (Phase 10 / METR-01..METR-02).
|
|
3
|
+
*
|
|
4
|
+
* The SDK does not import any metrics backend. Callers provide an object
|
|
5
|
+
* satisfying `MetricsHook` to receive named counters at run and sub-run
|
|
6
|
+
* completion. When absent, zero overhead — no allocations, no branch cost.
|
|
7
|
+
*
|
|
8
|
+
* `replay()` and `replayStream()` ignore `metricsHook` on engine options —
|
|
9
|
+
* counters for historical replays would be misleading.
|
|
10
|
+
*/
|
|
11
|
+
export interface RunMetricsSnapshot {
|
|
12
|
+
readonly outcome: "completed" | "budget-stopped" | "aborted";
|
|
13
|
+
/** Direct tokens for this run, excluding nested sub-runs. */
|
|
14
|
+
readonly inputTokens: number;
|
|
15
|
+
/** Direct tokens for this run, excluding nested sub-runs. */
|
|
16
|
+
readonly outputTokens: number;
|
|
17
|
+
/** Direct cost for this run, excluding nested sub-runs. */
|
|
18
|
+
readonly costUsd: number;
|
|
19
|
+
/** Total tokens including the full sub-run subtree (already rolled up). */
|
|
20
|
+
readonly totalInputTokens: number;
|
|
21
|
+
/** Total tokens including the full sub-run subtree. */
|
|
22
|
+
readonly totalOutputTokens: number;
|
|
23
|
+
/** Total cost including the full sub-run subtree. */
|
|
24
|
+
readonly totalCostUsd: number;
|
|
25
|
+
/** Count of agent-turn events directly in this run (own-only, not nested sub-runs). */
|
|
26
|
+
readonly turns: number;
|
|
27
|
+
/** Wall-clock duration in milliseconds from run start to terminal state. */
|
|
28
|
+
readonly durationMs: number;
|
|
29
|
+
}
|
|
30
|
+
export interface MetricsHook {
|
|
31
|
+
/**
|
|
32
|
+
* Called once at every terminal state of the top-level run (completed,
|
|
33
|
+
* budget-stopped, aborted). When the hook is async, the SDK attaches
|
|
34
|
+
* `.catch` and does NOT await — hook latency never delays run completion.
|
|
35
|
+
*/
|
|
36
|
+
readonly onRunComplete?: (snapshot: RunMetricsSnapshot) => void | Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* Called once for each coordinator-dispatched child run that completes.
|
|
39
|
+
* Fires from the parent run's emit closure on the `sub-run-completed` event.
|
|
40
|
+
* Does NOT fire for failed sub-runs (`sub-run-failed`).
|
|
41
|
+
*/
|
|
42
|
+
readonly onSubRunComplete?: (snapshot: RunMetricsSnapshot) => void | Promise<void>;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=metrics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../src/runtime/metrics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,gBAAgB,GAAG,SAAS,CAAC;IAC7D,6DAA6D;IAC7D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,6DAA6D;IAC7D,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,2EAA2E;IAC3E,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,uDAAuD;IACvD,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,qDAAqD;IACrD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,uFAAuF;IACvF,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChF;;;;OAIG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metrics hook interface for run-completion counters (Phase 10 / METR-01..METR-02).
|
|
3
|
+
*
|
|
4
|
+
* The SDK does not import any metrics backend. Callers provide an object
|
|
5
|
+
* satisfying `MetricsHook` to receive named counters at run and sub-run
|
|
6
|
+
* completion. When absent, zero overhead — no allocations, no branch cost.
|
|
7
|
+
*
|
|
8
|
+
* `replay()` and `replayStream()` ignore `metricsHook` on engine options —
|
|
9
|
+
* counters for historical replays would be misleading.
|
|
10
|
+
*/
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=metrics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/runtime/metrics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/runtime/model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,uBAAuB,EACvB,YAAY,EACZ,aAAa,EAEb,uBAAuB,EACvB,QAAQ,EACT,MAAM,aAAa,CAAC;AAGrB,UAAU,wBAAwB;IAChC,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAC;IACxC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,uBAAuB,KAAK,IAAI,CAAC;CACnE;AAID,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/runtime/model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,uBAAuB,EACvB,YAAY,EACZ,aAAa,EAEb,uBAAuB,EACvB,QAAQ,EACT,MAAM,aAAa,CAAC;AAGrB,UAAU,wBAAwB;IAChC,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAC;IACxC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,uBAAuB,KAAK,IAAI,CAAC;CACnE;AAID,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,aAAa,CAAC,CAgFjG"}
|