@dogpile/sdk 0.3.1 → 0.4.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 +136 -0
- package/README.md +1 -0
- package/dist/browser/index.js +1595 -54
- package/dist/browser/index.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/providers/openai-compatible.d.ts +11 -0
- package/dist/providers/openai-compatible.d.ts.map +1 -1
- package/dist/providers/openai-compatible.js +87 -2
- package/dist/providers/openai-compatible.js.map +1 -1
- package/dist/runtime/cancellation.d.ts +26 -0
- package/dist/runtime/cancellation.d.ts.map +1 -1
- package/dist/runtime/cancellation.js +38 -1
- package/dist/runtime/cancellation.js.map +1 -1
- package/dist/runtime/coordinator.d.ts +74 -1
- package/dist/runtime/coordinator.d.ts.map +1 -1
- package/dist/runtime/coordinator.js +932 -25
- package/dist/runtime/coordinator.js.map +1 -1
- package/dist/runtime/decisions.d.ts +25 -3
- package/dist/runtime/decisions.d.ts.map +1 -1
- package/dist/runtime/decisions.js +241 -3
- package/dist/runtime/decisions.js.map +1 -1
- package/dist/runtime/defaults.d.ts +37 -1
- package/dist/runtime/defaults.d.ts.map +1 -1
- package/dist/runtime/defaults.js +347 -0
- package/dist/runtime/defaults.js.map +1 -1
- package/dist/runtime/engine.d.ts.map +1 -1
- package/dist/runtime/engine.js +254 -24
- package/dist/runtime/engine.js.map +1 -1
- package/dist/runtime/sequential.d.ts.map +1 -1
- package/dist/runtime/sequential.js +8 -1
- package/dist/runtime/sequential.js.map +1 -1
- package/dist/runtime/validation.d.ts +10 -0
- package/dist/runtime/validation.d.ts.map +1 -1
- package/dist/runtime/validation.js +73 -0
- package/dist/runtime/validation.js.map +1 -1
- package/dist/types/events.d.ts +329 -8
- package/dist/types/events.d.ts.map +1 -1
- package/dist/types/replay.d.ts +5 -1
- package/dist/types/replay.d.ts.map +1 -1
- package/dist/types.d.ts +131 -5
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +10 -0
- package/src/providers/openai-compatible.ts +82 -3
- package/src/runtime/cancellation.ts +59 -1
- package/src/runtime/coordinator.ts +1170 -25
- package/src/runtime/decisions.ts +307 -4
- package/src/runtime/defaults.ts +376 -0
- package/src/runtime/engine.ts +363 -24
- package/src/runtime/sequential.ts +9 -1
- package/src/runtime/validation.ts +81 -0
- package/src/types/events.ts +359 -8
- package/src/types/replay.ts +12 -1
- package/src/types.ts +147 -3
package/dist/runtime/engine.js
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { DogpileError } from "../types.js";
|
|
2
2
|
import { runBroadcast } from "./broadcast.js";
|
|
3
3
|
import { runCoordinator } from "./coordinator.js";
|
|
4
|
-
import { createReplayTraceFinalOutput, createReplayTraceBudgetStateChanges, canonicalizeRunResult, canonicalizeSerializable, createRunAccounting, createRunEventLog, createRunMetadata, createRunUsage, defaultAgents, normalizeProtocol, orderAgentsForTemperature, tierTemperature } from "./defaults.js";
|
|
4
|
+
import { createReplayTraceFinalOutput, createReplayTraceBudgetStateChanges, canonicalizeRunResult, canonicalizeSerializable, createRunAccounting, createRunEventLog, createRunMetadata, createRunUsage, defaultAgents, normalizeProtocol, orderAgentsForTemperature, recomputeAccountingFromTrace, resolveOnChildFailure, tierTemperature } from "./defaults.js";
|
|
5
5
|
import { runSequential } from "./sequential.js";
|
|
6
6
|
import { runShared } from "./shared.js";
|
|
7
|
-
import { createAbortErrorFromSignal, createTimeoutError } from "./cancellation.js";
|
|
7
|
+
import { classifyChildTimeoutSource, createAbortErrorFromSignal, createEngineDeadlineTimeoutError, createTimeoutError } from "./cancellation.js";
|
|
8
8
|
import { budget as budgetCondition } from "./termination.js";
|
|
9
|
-
import { validateDogpileOptions, validateEngineOptions, validateMissionIntent } from "./validation.js";
|
|
9
|
+
import { validateDogpileOptions, validateEngineOptions, validateMissionIntent, validateProviderLocality, validateRunCallOptions } from "./validation.js";
|
|
10
|
+
const DEFAULT_MAX_DEPTH = 4;
|
|
11
|
+
const DEFAULT_MAX_CONCURRENT_CHILDREN = 4;
|
|
10
12
|
const defaultHighLevelProtocol = "sequential";
|
|
11
13
|
const defaultHighLevelTier = "balanced";
|
|
12
14
|
/**
|
|
@@ -27,9 +29,20 @@ export function createEngine(options) {
|
|
|
27
29
|
const temperature = options.temperature ?? tierTemperature(options.tier);
|
|
28
30
|
const agents = orderAgentsForTemperature(options.agents ?? defaultAgents(), temperature, options.seed);
|
|
29
31
|
const terminate = options.terminate ?? (options.budget ? conditionFromBudget(options.budget) : undefined);
|
|
32
|
+
const engineMaxDepth = options.maxDepth ?? DEFAULT_MAX_DEPTH;
|
|
33
|
+
const engineMaxConcurrentChildren = options.maxConcurrentChildren ?? DEFAULT_MAX_CONCURRENT_CHILDREN;
|
|
34
|
+
const engineOnChildFailure = options.onChildFailure;
|
|
30
35
|
return {
|
|
31
|
-
run(intent) {
|
|
36
|
+
run(intent, runOptions) {
|
|
32
37
|
validateMissionIntent(intent);
|
|
38
|
+
validateRunCallOptions(runOptions);
|
|
39
|
+
validateProviderLocality(options.model, "model");
|
|
40
|
+
const effectiveMaxDepth = Math.min(engineMaxDepth, runOptions?.maxDepth ?? Number.POSITIVE_INFINITY);
|
|
41
|
+
assertRunDoesNotRaiseEngineMax("maxConcurrentChildren", runOptions?.maxConcurrentChildren, engineMaxConcurrentChildren);
|
|
42
|
+
const effectiveMaxConcurrentChildren = Math.min(engineMaxConcurrentChildren, runOptions?.maxConcurrentChildren ?? Number.POSITIVE_INFINITY);
|
|
43
|
+
const onChildFailure = resolveOnChildFailure(runOptions?.onChildFailure, engineOnChildFailure);
|
|
44
|
+
const startedAtMs = Date.now();
|
|
45
|
+
const parentDeadlineMs = options.budget?.timeoutMs !== undefined ? startedAtMs + options.budget.timeoutMs : undefined;
|
|
33
46
|
return runNonStreamingProtocol({
|
|
34
47
|
intent,
|
|
35
48
|
protocol,
|
|
@@ -43,11 +56,25 @@ export function createEngine(options) {
|
|
|
43
56
|
...(options.signal !== undefined ? { signal: options.signal } : {}),
|
|
44
57
|
...(terminate ? { terminate } : {}),
|
|
45
58
|
...(options.wrapUpHint ? { wrapUpHint: options.wrapUpHint } : {}),
|
|
46
|
-
...(options.evaluate ? { evaluate: options.evaluate } : {})
|
|
59
|
+
...(options.evaluate ? { evaluate: options.evaluate } : {}),
|
|
60
|
+
currentDepth: 0,
|
|
61
|
+
effectiveMaxDepth,
|
|
62
|
+
effectiveMaxConcurrentChildren,
|
|
63
|
+
onChildFailure,
|
|
64
|
+
...(parentDeadlineMs !== undefined ? { parentDeadlineMs } : {}),
|
|
65
|
+
...(options.defaultSubRunTimeoutMs !== undefined
|
|
66
|
+
? { defaultSubRunTimeoutMs: options.defaultSubRunTimeoutMs }
|
|
67
|
+
: {})
|
|
47
68
|
});
|
|
48
69
|
},
|
|
49
|
-
stream(intent) {
|
|
70
|
+
stream(intent, runOptions) {
|
|
50
71
|
validateMissionIntent(intent);
|
|
72
|
+
validateRunCallOptions(runOptions);
|
|
73
|
+
validateProviderLocality(options.model, "model");
|
|
74
|
+
const effectiveMaxDepth = Math.min(engineMaxDepth, runOptions?.maxDepth ?? Number.POSITIVE_INFINITY);
|
|
75
|
+
assertRunDoesNotRaiseEngineMax("maxConcurrentChildren", runOptions?.maxConcurrentChildren, engineMaxConcurrentChildren);
|
|
76
|
+
const effectiveMaxConcurrentChildren = Math.min(engineMaxConcurrentChildren, runOptions?.maxConcurrentChildren ?? Number.POSITIVE_INFINITY);
|
|
77
|
+
const onChildFailure = resolveOnChildFailure(runOptions?.onChildFailure, engineOnChildFailure);
|
|
51
78
|
const pendingEvents = [];
|
|
52
79
|
const pendingResolvers = [];
|
|
53
80
|
const emittedEvents = [];
|
|
@@ -61,7 +88,10 @@ export function createEngine(options) {
|
|
|
61
88
|
const abortRace = createAbortRace(abortController.signal, options.model.id);
|
|
62
89
|
let complete = false;
|
|
63
90
|
let lastRunId = "";
|
|
91
|
+
let rootRunId;
|
|
64
92
|
let pendingFinalEvent;
|
|
93
|
+
let activeAbortDrain;
|
|
94
|
+
const failureInstancesByChildRunId = new Map();
|
|
65
95
|
let status = "running";
|
|
66
96
|
let resolveResult;
|
|
67
97
|
let rejectResult;
|
|
@@ -113,6 +143,8 @@ export function createEngine(options) {
|
|
|
113
143
|
return;
|
|
114
144
|
}
|
|
115
145
|
try {
|
|
146
|
+
const streamStartedAtMs = Date.now();
|
|
147
|
+
const streamParentDeadlineMs = options.budget?.timeoutMs !== undefined ? streamStartedAtMs + options.budget.timeoutMs : undefined;
|
|
116
148
|
const baseResult = await abortRace.run(runProtocol({
|
|
117
149
|
intent,
|
|
118
150
|
protocol,
|
|
@@ -125,21 +157,42 @@ export function createEngine(options) {
|
|
|
125
157
|
...(options.seed !== undefined ? { seed: options.seed } : {}),
|
|
126
158
|
signal: abortController.signal,
|
|
127
159
|
...(terminate ? { terminate } : {}),
|
|
160
|
+
currentDepth: 0,
|
|
161
|
+
effectiveMaxDepth,
|
|
162
|
+
effectiveMaxConcurrentChildren,
|
|
163
|
+
onChildFailure,
|
|
164
|
+
...(streamParentDeadlineMs !== undefined ? { parentDeadlineMs: streamParentDeadlineMs } : {}),
|
|
165
|
+
...(options.defaultSubRunTimeoutMs !== undefined
|
|
166
|
+
? { defaultSubRunTimeoutMs: options.defaultSubRunTimeoutMs }
|
|
167
|
+
: {}),
|
|
168
|
+
streamEvents: true,
|
|
128
169
|
emit(event) {
|
|
129
170
|
if (status !== "running") {
|
|
130
171
|
return;
|
|
131
172
|
}
|
|
173
|
+
const parentRunIds = event.parentRunIds;
|
|
174
|
+
if (rootRunId === undefined && parentRunIds === undefined) {
|
|
175
|
+
rootRunId = event.runId;
|
|
176
|
+
}
|
|
132
177
|
lastRunId = event.runId;
|
|
133
|
-
if (event.type === "final") {
|
|
178
|
+
if (event.type === "final" && event.runId === rootRunId) {
|
|
134
179
|
pendingFinalEvent = event;
|
|
135
180
|
return;
|
|
136
181
|
}
|
|
137
182
|
publish(event);
|
|
138
|
-
}
|
|
183
|
+
},
|
|
184
|
+
registerAbortDrain(drain) {
|
|
185
|
+
activeAbortDrain = drain;
|
|
186
|
+
},
|
|
187
|
+
failureInstancesByChildRunId
|
|
139
188
|
}));
|
|
140
189
|
if (status !== "running") {
|
|
141
190
|
return;
|
|
142
191
|
}
|
|
192
|
+
const terminalThrow = resolveRuntimeTerminalThrow(baseResult.trace, failureInstancesByChildRunId);
|
|
193
|
+
if (terminalThrow) {
|
|
194
|
+
throw terminalThrow;
|
|
195
|
+
}
|
|
143
196
|
const finalizedResult = await abortRace.run(applyRunEvaluation(baseResult, options.evaluate));
|
|
144
197
|
if (status !== "running") {
|
|
145
198
|
return;
|
|
@@ -161,6 +214,10 @@ export function createEngine(options) {
|
|
|
161
214
|
}
|
|
162
215
|
const runtimeError = timeoutLifecycle.translateError(error);
|
|
163
216
|
status = isCancellationError(runtimeError) ? "cancelled" : "failed";
|
|
217
|
+
if (shouldPublishAborted(runtimeError)) {
|
|
218
|
+
activeAbortDrain?.(runtimeError);
|
|
219
|
+
publish(createStreamAbortedEvent(runtimeError, lastRunId));
|
|
220
|
+
}
|
|
164
221
|
publish(createStreamErrorEvent(runtimeError, lastRunId));
|
|
165
222
|
closeStream();
|
|
166
223
|
rejectResult(runtimeError);
|
|
@@ -171,9 +228,11 @@ export function createEngine(options) {
|
|
|
171
228
|
return;
|
|
172
229
|
}
|
|
173
230
|
const error = createStreamCancellationError(options.model.id, cause);
|
|
174
|
-
status = "cancelled";
|
|
175
231
|
abortController.abort(error);
|
|
232
|
+
activeAbortDrain?.(error);
|
|
233
|
+
publish(createStreamAbortedEvent(error, lastRunId));
|
|
176
234
|
publish(createStreamErrorEvent(error, lastRunId));
|
|
235
|
+
status = "cancelled";
|
|
177
236
|
closeStream();
|
|
178
237
|
rejectResult(error);
|
|
179
238
|
}
|
|
@@ -182,6 +241,7 @@ export function createEngine(options) {
|
|
|
182
241
|
return;
|
|
183
242
|
}
|
|
184
243
|
complete = true;
|
|
244
|
+
failureInstancesByChildRunId.clear();
|
|
185
245
|
removeCallerAbortListener();
|
|
186
246
|
timeoutLifecycle.cleanup();
|
|
187
247
|
abortRace.cleanup();
|
|
@@ -242,7 +302,8 @@ function createNonStreamingAbortLifecycle(options) {
|
|
|
242
302
|
const timeoutLifecycle = createTimeoutAbortLifecycle({
|
|
243
303
|
abortController,
|
|
244
304
|
timeoutMs: options.timeoutMs,
|
|
245
|
-
providerId: options.providerId
|
|
305
|
+
providerId: options.providerId,
|
|
306
|
+
timeoutErrorSource: options.timeoutErrorSource ?? "runtime"
|
|
246
307
|
});
|
|
247
308
|
const abortRace = createAbortRace(abortController.signal, options.providerId);
|
|
248
309
|
const removeCallerAbortListener = wireCallerAbortSignal(options.callerSignal, abortController, () => {
|
|
@@ -272,7 +333,13 @@ function createTimeoutAbortLifecycle(options) {
|
|
|
272
333
|
cleanup() { }
|
|
273
334
|
};
|
|
274
335
|
}
|
|
275
|
-
const
|
|
336
|
+
const timeoutSource = classifyChildTimeoutSource(undefined, {
|
|
337
|
+
...(options.timeoutErrorSource === "engine" ? { engineDefaultTimeoutMs: options.timeoutMs } : {}),
|
|
338
|
+
isProviderError: false
|
|
339
|
+
});
|
|
340
|
+
const timeoutError = options.timeoutErrorSource === "engine" && timeoutSource === "engine"
|
|
341
|
+
? createEngineDeadlineTimeoutError(options.providerId, options.timeoutMs)
|
|
342
|
+
: createTimeoutError(options.providerId, options.timeoutMs);
|
|
276
343
|
const timeoutId = setTimeout(() => {
|
|
277
344
|
options.abortController.abort(timeoutError);
|
|
278
345
|
}, options.timeoutMs);
|
|
@@ -354,6 +421,25 @@ function timeoutMsFromTermination(condition) {
|
|
|
354
421
|
function readAbortSignalReason(signal) {
|
|
355
422
|
return signal?.aborted ? signal.reason : undefined;
|
|
356
423
|
}
|
|
424
|
+
function createStreamAbortedEvent(error, runId) {
|
|
425
|
+
return {
|
|
426
|
+
type: "aborted",
|
|
427
|
+
runId,
|
|
428
|
+
at: new Date().toISOString(),
|
|
429
|
+
reason: streamAbortedReason(error)
|
|
430
|
+
};
|
|
431
|
+
}
|
|
432
|
+
function shouldPublishAborted(error) {
|
|
433
|
+
return DogpileError.isInstance(error) && (error.code === "aborted" || error.code === "timeout");
|
|
434
|
+
}
|
|
435
|
+
function streamAbortedReason(error) {
|
|
436
|
+
if (DogpileError.isInstance(error)) {
|
|
437
|
+
if (error.code === "timeout" || error.detail?.["reason"] === "timeout") {
|
|
438
|
+
return "timeout";
|
|
439
|
+
}
|
|
440
|
+
}
|
|
441
|
+
return "parent-aborted";
|
|
442
|
+
}
|
|
357
443
|
function createStreamErrorEvent(error, runId) {
|
|
358
444
|
if (DogpileError.isInstance(error)) {
|
|
359
445
|
return {
|
|
@@ -400,10 +486,16 @@ function dogpileErrorStreamDetail(error) {
|
|
|
400
486
|
return detail;
|
|
401
487
|
}
|
|
402
488
|
async function runNonStreamingProtocol(options) {
|
|
489
|
+
const failureInstancesByChildRunId = new Map();
|
|
403
490
|
const abortLifecycle = createNonStreamingAbortLifecycle({
|
|
404
491
|
callerSignal: options.signal,
|
|
405
492
|
timeoutMs: runtimeTimeoutMs(options),
|
|
406
|
-
providerId: options.model.id
|
|
493
|
+
providerId: options.model.id,
|
|
494
|
+
timeoutErrorSource: options.currentDepth !== undefined &&
|
|
495
|
+
options.currentDepth > 0 &&
|
|
496
|
+
options.parentDeadlineMs === undefined
|
|
497
|
+
? "engine"
|
|
498
|
+
: "runtime"
|
|
407
499
|
});
|
|
408
500
|
try {
|
|
409
501
|
const emittedEvents = [];
|
|
@@ -412,7 +504,8 @@ async function runNonStreamingProtocol(options) {
|
|
|
412
504
|
...(abortLifecycle.signal !== undefined ? { signal: abortLifecycle.signal } : {}),
|
|
413
505
|
emit(event) {
|
|
414
506
|
emittedEvents.push(event);
|
|
415
|
-
}
|
|
507
|
+
},
|
|
508
|
+
failureInstancesByChildRunId
|
|
416
509
|
}));
|
|
417
510
|
const events = emittedEvents.length > 0 ? emittedEvents : result.trace.events;
|
|
418
511
|
const trace = {
|
|
@@ -433,12 +526,17 @@ async function runNonStreamingProtocol(options) {
|
|
|
433
526
|
eventLog: createRunEventLog(trace.runId, trace.protocol, events),
|
|
434
527
|
trace
|
|
435
528
|
};
|
|
529
|
+
const terminalThrow = resolveRuntimeTerminalThrow(runResult.trace, failureInstancesByChildRunId);
|
|
530
|
+
if (terminalThrow) {
|
|
531
|
+
throw terminalThrow;
|
|
532
|
+
}
|
|
436
533
|
return canonicalizeRunResult(await abortLifecycle.run(applyRunEvaluation(runResult, options.evaluate)));
|
|
437
534
|
}
|
|
438
535
|
catch (error) {
|
|
439
536
|
throw abortLifecycle.translateError(error);
|
|
440
537
|
}
|
|
441
538
|
finally {
|
|
539
|
+
failureInstancesByChildRunId.clear();
|
|
442
540
|
abortLifecycle.cleanup();
|
|
443
541
|
}
|
|
444
542
|
}
|
|
@@ -520,7 +618,24 @@ function runProtocol(options) {
|
|
|
520
618
|
...(options.signal !== undefined ? { signal: options.signal } : {}),
|
|
521
619
|
...(options.terminate ? { terminate: options.terminate } : {}),
|
|
522
620
|
...(options.wrapUpHint ? { wrapUpHint: options.wrapUpHint } : {}),
|
|
523
|
-
...(options.emit ? { emit: options.emit } : {})
|
|
621
|
+
...(options.emit ? { emit: options.emit } : {}),
|
|
622
|
+
...(options.streamEvents !== undefined ? { streamEvents: options.streamEvents } : {}),
|
|
623
|
+
currentDepth: options.currentDepth ?? 0,
|
|
624
|
+
effectiveMaxDepth: options.effectiveMaxDepth ?? Infinity,
|
|
625
|
+
effectiveMaxConcurrentChildren: options.effectiveMaxConcurrentChildren ?? DEFAULT_MAX_CONCURRENT_CHILDREN,
|
|
626
|
+
onChildFailure: options.onChildFailure ?? "continue",
|
|
627
|
+
...(options.parentDeadlineMs !== undefined ? { parentDeadlineMs: options.parentDeadlineMs } : {}),
|
|
628
|
+
...(options.defaultSubRunTimeoutMs !== undefined
|
|
629
|
+
? { defaultSubRunTimeoutMs: options.defaultSubRunTimeoutMs }
|
|
630
|
+
: {}),
|
|
631
|
+
...(options.registerAbortDrain !== undefined ? { registerAbortDrain: options.registerAbortDrain } : {}),
|
|
632
|
+
...(options.failureInstancesByChildRunId !== undefined
|
|
633
|
+
? { failureInstancesByChildRunId: options.failureInstancesByChildRunId }
|
|
634
|
+
: {}),
|
|
635
|
+
runProtocol: (childInput) => runProtocol({
|
|
636
|
+
...childInput,
|
|
637
|
+
protocol: normalizeProtocol(childInput.protocol)
|
|
638
|
+
})
|
|
524
639
|
});
|
|
525
640
|
case "shared":
|
|
526
641
|
return runShared({
|
|
@@ -588,6 +703,15 @@ export function stream(options) {
|
|
|
588
703
|
export function replay(trace) {
|
|
589
704
|
const cost = trace.finalOutput.cost;
|
|
590
705
|
const lastEvent = trace.events.at(-1);
|
|
706
|
+
// D-08 / D-10: rebuild accounting recursively from the saved trace and
|
|
707
|
+
// verify every embedded sub-run's recorded accounting matches what the
|
|
708
|
+
// child trace recomputes. Mismatches throw `invalid-configuration` with
|
|
709
|
+
// `detail.reason: "trace-accounting-mismatch"`. No provider invocation.
|
|
710
|
+
const accounting = recomputeAccountingFromTrace(trace);
|
|
711
|
+
const replayThrow = resolveReplayTerminalThrow(trace);
|
|
712
|
+
if (replayThrow) {
|
|
713
|
+
throw replayThrow;
|
|
714
|
+
}
|
|
591
715
|
const baseResult = {
|
|
592
716
|
output: trace.finalOutput.output,
|
|
593
717
|
eventLog: createRunEventLog(trace.runId, trace.protocol, trace.events),
|
|
@@ -602,13 +726,7 @@ export function replay(trace) {
|
|
|
602
726
|
agentsUsed: trace.agentsUsed,
|
|
603
727
|
events: trace.events
|
|
604
728
|
}),
|
|
605
|
-
accounting
|
|
606
|
-
tier: trace.tier,
|
|
607
|
-
...(trace.budget.caps ? { budget: trace.budget.caps } : {}),
|
|
608
|
-
...(trace.budget.termination ? { termination: trace.budget.termination } : {}),
|
|
609
|
-
cost,
|
|
610
|
-
events: trace.events
|
|
611
|
-
}),
|
|
729
|
+
accounting,
|
|
612
730
|
cost
|
|
613
731
|
};
|
|
614
732
|
if (lastEvent?.type !== "final") {
|
|
@@ -620,6 +738,80 @@ export function replay(trace) {
|
|
|
620
738
|
...(lastEvent.evaluation !== undefined ? { evaluation: lastEvent.evaluation } : {})
|
|
621
739
|
};
|
|
622
740
|
}
|
|
741
|
+
function resolveRuntimeTerminalThrow(trace, failureInstancesByChildRunId) {
|
|
742
|
+
if (trace.triggeringFailureForAbortMode !== undefined) {
|
|
743
|
+
return failureInstancesByChildRunId.get(trace.triggeringFailureForAbortMode.childRunId) ?? null;
|
|
744
|
+
}
|
|
745
|
+
const finalEvent = trace.events.at(-1);
|
|
746
|
+
if (finalEvent?.type !== "final" || finalEvent.termination === undefined) {
|
|
747
|
+
return null;
|
|
748
|
+
}
|
|
749
|
+
const lastFailure = findLastRealFailure(trace.events, failureInstancesByChildRunId);
|
|
750
|
+
if (lastFailure === null) {
|
|
751
|
+
return null;
|
|
752
|
+
}
|
|
753
|
+
if (hasFinalSynthesisAfterEvent(trace, lastFailure.eventIndex)) {
|
|
754
|
+
return null;
|
|
755
|
+
}
|
|
756
|
+
return lastFailure.error;
|
|
757
|
+
}
|
|
758
|
+
function findLastRealFailure(events, failureInstancesByChildRunId) {
|
|
759
|
+
for (let index = events.length - 1; index >= 0; index -= 1) {
|
|
760
|
+
const event = events[index];
|
|
761
|
+
if (event?.type !== "sub-run-failed") {
|
|
762
|
+
continue;
|
|
763
|
+
}
|
|
764
|
+
const instance = failureInstancesByChildRunId.get(event.childRunId);
|
|
765
|
+
if (instance) {
|
|
766
|
+
return { error: instance, eventIndex: index };
|
|
767
|
+
}
|
|
768
|
+
}
|
|
769
|
+
return null;
|
|
770
|
+
}
|
|
771
|
+
function resolveReplayTerminalThrow(trace) {
|
|
772
|
+
if (trace.triggeringFailureForAbortMode !== undefined) {
|
|
773
|
+
return dogpileErrorFromSerializedPayload(trace.triggeringFailureForAbortMode.error);
|
|
774
|
+
}
|
|
775
|
+
const finalEvent = trace.events.at(-1);
|
|
776
|
+
if (finalEvent?.type !== "final" || finalEvent.termination === undefined) {
|
|
777
|
+
return null;
|
|
778
|
+
}
|
|
779
|
+
const lastFailure = reconstructLastRealFailure(trace.events);
|
|
780
|
+
if (lastFailure === null) {
|
|
781
|
+
return null;
|
|
782
|
+
}
|
|
783
|
+
if (hasFinalSynthesisAfterEvent(trace, lastFailure.eventIndex)) {
|
|
784
|
+
return null;
|
|
785
|
+
}
|
|
786
|
+
return lastFailure.error;
|
|
787
|
+
}
|
|
788
|
+
function reconstructLastRealFailure(events) {
|
|
789
|
+
for (let index = events.length - 1; index >= 0; index -= 1) {
|
|
790
|
+
const event = events[index];
|
|
791
|
+
if (event?.type !== "sub-run-failed" || isSyntheticSubRunFailure(event)) {
|
|
792
|
+
continue;
|
|
793
|
+
}
|
|
794
|
+
return { error: dogpileErrorFromSerializedPayload(event.error), eventIndex: index };
|
|
795
|
+
}
|
|
796
|
+
return null;
|
|
797
|
+
}
|
|
798
|
+
function hasFinalSynthesisAfterEvent(trace, eventIndex) {
|
|
799
|
+
return trace.protocolDecisions.some((decision) => {
|
|
800
|
+
return decision.phase === "final-synthesis" && decision.eventIndex > eventIndex;
|
|
801
|
+
});
|
|
802
|
+
}
|
|
803
|
+
function isSyntheticSubRunFailure(event) {
|
|
804
|
+
const reason = event.error.detail?.["reason"];
|
|
805
|
+
return reason === "sibling-failed" || reason === "parent-aborted";
|
|
806
|
+
}
|
|
807
|
+
function dogpileErrorFromSerializedPayload(input) {
|
|
808
|
+
return new DogpileError({
|
|
809
|
+
code: input.code,
|
|
810
|
+
message: input.message,
|
|
811
|
+
...(input.providerId !== undefined ? { providerId: input.providerId } : {}),
|
|
812
|
+
...(input.detail !== undefined ? { detail: input.detail } : {})
|
|
813
|
+
});
|
|
814
|
+
}
|
|
623
815
|
/**
|
|
624
816
|
* Replay a saved completed trace as a stream without invoking a model provider.
|
|
625
817
|
*
|
|
@@ -631,6 +823,7 @@ export function replay(trace) {
|
|
|
631
823
|
*/
|
|
632
824
|
export function replayStream(trace) {
|
|
633
825
|
const result = Promise.resolve(replay(trace));
|
|
826
|
+
const replayEvents = replayStreamEvents(trace);
|
|
634
827
|
return {
|
|
635
828
|
get status() {
|
|
636
829
|
return "completed";
|
|
@@ -640,7 +833,7 @@ export function replayStream(trace) {
|
|
|
640
833
|
// Replay streams are already completed snapshots, so cancellation is a no-op.
|
|
641
834
|
},
|
|
642
835
|
subscribe(subscriber) {
|
|
643
|
-
for (const event of
|
|
836
|
+
for (const event of replayEvents) {
|
|
644
837
|
subscriber(event);
|
|
645
838
|
}
|
|
646
839
|
return {
|
|
@@ -653,7 +846,7 @@ export function replayStream(trace) {
|
|
|
653
846
|
let index = 0;
|
|
654
847
|
return {
|
|
655
848
|
next() {
|
|
656
|
-
const event =
|
|
849
|
+
const event = replayEvents[index];
|
|
657
850
|
if (event) {
|
|
658
851
|
index += 1;
|
|
659
852
|
return Promise.resolve({ done: false, value: event });
|
|
@@ -664,6 +857,26 @@ export function replayStream(trace) {
|
|
|
664
857
|
}
|
|
665
858
|
};
|
|
666
859
|
}
|
|
860
|
+
function replayStreamEvents(trace, parentRunIds = []) {
|
|
861
|
+
const events = [];
|
|
862
|
+
for (const event of trace.events) {
|
|
863
|
+
if (event.type === "sub-run-completed") {
|
|
864
|
+
events.push(...replayStreamEvents(event.subResult.trace, [...parentRunIds, trace.runId]));
|
|
865
|
+
}
|
|
866
|
+
events.push(wrapReplayStreamEvent(event, parentRunIds));
|
|
867
|
+
}
|
|
868
|
+
return events;
|
|
869
|
+
}
|
|
870
|
+
function wrapReplayStreamEvent(event, parentRunIds) {
|
|
871
|
+
if (parentRunIds.length === 0) {
|
|
872
|
+
return event;
|
|
873
|
+
}
|
|
874
|
+
const inbound = event.parentRunIds;
|
|
875
|
+
return {
|
|
876
|
+
...event,
|
|
877
|
+
parentRunIds: [...parentRunIds, ...(inbound ?? [])]
|
|
878
|
+
};
|
|
879
|
+
}
|
|
667
880
|
function wireCallerAbortSignal(callerSignal, abortController, cancelRun) {
|
|
668
881
|
if (!callerSignal) {
|
|
669
882
|
return () => { };
|
|
@@ -690,7 +903,8 @@ function createStreamCancellationError(providerId, cause) {
|
|
|
690
903
|
providerId,
|
|
691
904
|
...(cause !== undefined ? { cause } : {}),
|
|
692
905
|
detail: {
|
|
693
|
-
status: "cancelled"
|
|
906
|
+
status: "cancelled",
|
|
907
|
+
reason: "parent-aborted"
|
|
694
908
|
}
|
|
695
909
|
});
|
|
696
910
|
}
|
|
@@ -707,6 +921,22 @@ function withHighLevelDefaults(options) {
|
|
|
707
921
|
tier: options.tier ?? defaultHighLevelTier
|
|
708
922
|
};
|
|
709
923
|
}
|
|
924
|
+
function assertRunDoesNotRaiseEngineMax(path, runValue, engineValue) {
|
|
925
|
+
if (runValue === undefined || runValue <= engineValue) {
|
|
926
|
+
return;
|
|
927
|
+
}
|
|
928
|
+
throw new DogpileError({
|
|
929
|
+
code: "invalid-configuration",
|
|
930
|
+
message: `${path} cannot raise the engine ceiling (${engineValue}).`,
|
|
931
|
+
retryable: false,
|
|
932
|
+
detail: {
|
|
933
|
+
kind: "configuration-validation",
|
|
934
|
+
path,
|
|
935
|
+
expected: `integer <= ${engineValue}`,
|
|
936
|
+
actual: runValue
|
|
937
|
+
}
|
|
938
|
+
});
|
|
939
|
+
}
|
|
710
940
|
/**
|
|
711
941
|
* Branded high-level SDK namespace.
|
|
712
942
|
*
|
|
@@ -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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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sequential.d.ts","sourceRoot":"","sources":["../../src/runtime/sequential.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,uBAAuB,EAEvB,cAAc,EAKd,WAAW,EACX,QAAQ,EACR,SAAS,EACT,UAAU,EACV,SAAS,EACT,wBAAwB,EACxB,oBAAoB,EAEpB,IAAI,EAEL,MAAM,aAAa,CAAC;AAyBrB,UAAU,oBAAoB;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;IAC5C,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,SAAS,WAAW,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC;IAC9D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC3C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IACnD,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;CAC3C;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"sequential.d.ts","sourceRoot":"","sources":["../../src/runtime/sequential.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,uBAAuB,EAEvB,cAAc,EAKd,WAAW,EACX,QAAQ,EACR,SAAS,EACT,UAAU,EACV,SAAS,EACT,wBAAwB,EACxB,oBAAoB,EAEpB,IAAI,EAEL,MAAM,aAAa,CAAC;AAyBrB,UAAU,oBAAoB;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,CAAC;IAC5C,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,uBAAuB,CAAC;IACxC,QAAQ,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,SAAS,WAAW,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC;IAC9D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC3C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,oBAAoB,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IACnD,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;CAC3C;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,SAAS,CAAC,CAqSrF"}
|
|
@@ -146,7 +146,14 @@ export async function runSequential(options) {
|
|
|
146
146
|
break;
|
|
147
147
|
}
|
|
148
148
|
}
|
|
149
|
-
|
|
149
|
+
// Preferred: most recent entry with an explicit participating decision.
|
|
150
|
+
// Fallback: most recent entry that has no parsed decision at all (preserves
|
|
151
|
+
// pre-discriminated-union behavior where unparsed turns were treated as
|
|
152
|
+
// participating). Delegate decisions are explicitly non-participating.
|
|
153
|
+
const reversed = [...transcript].reverse();
|
|
154
|
+
const output = reversed.find((entry) => isParticipatingDecision(entry.decision))?.output ??
|
|
155
|
+
reversed.find((entry) => entry.decision === undefined)?.output ??
|
|
156
|
+
"";
|
|
150
157
|
throwIfAborted(options.signal, options.model.id);
|
|
151
158
|
const final = {
|
|
152
159
|
type: "final",
|