@dogpile/sdk 0.4.0 → 0.6.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.
Files changed (108) hide show
  1. package/CHANGELOG.md +92 -0
  2. package/dist/browser/index.js +4156 -4611
  3. package/dist/browser/index.js.map +1 -1
  4. package/dist/index.d.ts +3 -1
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +1 -0
  7. package/dist/index.js.map +1 -1
  8. package/dist/providers/openai-compatible.d.ts.map +1 -1
  9. package/dist/providers/openai-compatible.js +6 -1
  10. package/dist/providers/openai-compatible.js.map +1 -1
  11. package/dist/runtime/audit.d.ts +42 -0
  12. package/dist/runtime/audit.d.ts.map +1 -0
  13. package/dist/runtime/audit.js +73 -0
  14. package/dist/runtime/audit.js.map +1 -0
  15. package/dist/runtime/broadcast.d.ts +1 -0
  16. package/dist/runtime/broadcast.d.ts.map +1 -1
  17. package/dist/runtime/broadcast.js +171 -105
  18. package/dist/runtime/broadcast.js.map +1 -1
  19. package/dist/runtime/coordinator.d.ts +9 -2
  20. package/dist/runtime/coordinator.d.ts.map +1 -1
  21. package/dist/runtime/coordinator.js +164 -78
  22. package/dist/runtime/coordinator.js.map +1 -1
  23. package/dist/runtime/defaults.d.ts.map +1 -1
  24. package/dist/runtime/defaults.js +14 -5
  25. package/dist/runtime/defaults.js.map +1 -1
  26. package/dist/runtime/engine.d.ts +17 -4
  27. package/dist/runtime/engine.d.ts.map +1 -1
  28. package/dist/runtime/engine.js +577 -52
  29. package/dist/runtime/engine.js.map +1 -1
  30. package/dist/runtime/health.d.ts +51 -0
  31. package/dist/runtime/health.d.ts.map +1 -0
  32. package/dist/runtime/health.js +85 -0
  33. package/dist/runtime/health.js.map +1 -0
  34. package/dist/runtime/introspection.d.ts +96 -0
  35. package/dist/runtime/introspection.d.ts.map +1 -0
  36. package/dist/runtime/introspection.js +31 -0
  37. package/dist/runtime/introspection.js.map +1 -0
  38. package/dist/runtime/metrics.d.ts +44 -0
  39. package/dist/runtime/metrics.d.ts.map +1 -0
  40. package/dist/runtime/metrics.js +12 -0
  41. package/dist/runtime/metrics.js.map +1 -0
  42. package/dist/runtime/model.d.ts.map +1 -1
  43. package/dist/runtime/model.js +40 -10
  44. package/dist/runtime/model.js.map +1 -1
  45. package/dist/runtime/provenance.d.ts +25 -0
  46. package/dist/runtime/provenance.d.ts.map +1 -0
  47. package/dist/runtime/provenance.js +13 -0
  48. package/dist/runtime/provenance.js.map +1 -0
  49. package/dist/runtime/redaction.d.ts +13 -0
  50. package/dist/runtime/redaction.d.ts.map +1 -0
  51. package/dist/runtime/redaction.js +278 -0
  52. package/dist/runtime/redaction.js.map +1 -0
  53. package/dist/runtime/sanitization.d.ts +4 -0
  54. package/dist/runtime/sanitization.d.ts.map +1 -0
  55. package/dist/runtime/sanitization.js +63 -0
  56. package/dist/runtime/sanitization.js.map +1 -0
  57. package/dist/runtime/sequential.d.ts.map +1 -1
  58. package/dist/runtime/sequential.js +39 -36
  59. package/dist/runtime/sequential.js.map +1 -1
  60. package/dist/runtime/shared.d.ts +1 -0
  61. package/dist/runtime/shared.d.ts.map +1 -1
  62. package/dist/runtime/shared.js +167 -101
  63. package/dist/runtime/shared.js.map +1 -1
  64. package/dist/runtime/tools/built-in.d.ts +2 -0
  65. package/dist/runtime/tools/built-in.d.ts.map +1 -1
  66. package/dist/runtime/tools/built-in.js +153 -15
  67. package/dist/runtime/tools/built-in.js.map +1 -1
  68. package/dist/runtime/tools.d.ts.map +1 -1
  69. package/dist/runtime/tools.js +29 -7
  70. package/dist/runtime/tools.js.map +1 -1
  71. package/dist/runtime/tracing.d.ts +31 -0
  72. package/dist/runtime/tracing.d.ts.map +1 -0
  73. package/dist/runtime/tracing.js +18 -0
  74. package/dist/runtime/tracing.js.map +1 -0
  75. package/dist/runtime/validation.d.ts.map +1 -1
  76. package/dist/runtime/validation.js +3 -0
  77. package/dist/runtime/validation.js.map +1 -1
  78. package/dist/types/events.d.ts +13 -7
  79. package/dist/types/events.d.ts.map +1 -1
  80. package/dist/types/replay.d.ts +5 -1
  81. package/dist/types/replay.d.ts.map +1 -1
  82. package/dist/types.d.ts +144 -1
  83. package/dist/types.d.ts.map +1 -1
  84. package/dist/types.js.map +1 -1
  85. package/package.json +46 -1
  86. package/src/index.ts +5 -0
  87. package/src/providers/openai-compatible.ts +6 -1
  88. package/src/runtime/audit.ts +121 -0
  89. package/src/runtime/broadcast.ts +195 -108
  90. package/src/runtime/coordinator.ts +197 -86
  91. package/src/runtime/defaults.ts +15 -5
  92. package/src/runtime/engine.ts +725 -58
  93. package/src/runtime/health.ts +136 -0
  94. package/src/runtime/introspection.ts +122 -0
  95. package/src/runtime/metrics.ts +45 -0
  96. package/src/runtime/model.ts +44 -9
  97. package/src/runtime/provenance.ts +43 -0
  98. package/src/runtime/redaction.ts +355 -0
  99. package/src/runtime/sanitization.ts +81 -0
  100. package/src/runtime/sequential.ts +40 -37
  101. package/src/runtime/shared.ts +191 -104
  102. package/src/runtime/tools/built-in.ts +168 -15
  103. package/src/runtime/tools.ts +39 -8
  104. package/src/runtime/tracing.ts +35 -0
  105. package/src/runtime/validation.ts +3 -0
  106. package/src/types/events.ts +13 -7
  107. package/src/types/replay.ts +5 -1
  108. package/src/types.ts +152 -1
@@ -1 +1 @@
1
- {"version":3,"file":"broadcast.js","sourceRoot":"","sources":["../../src/runtime/broadcast.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"broadcast.js","sourceRoot":"","sources":["../../src/runtime/broadcast.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,11 @@ import type { AgentSpec, ConfiguredModelProvider, CoordinatorProtocolConfig, Dog
5
5
  * in by `engine.ts` so coordinator avoids a circular import.
6
6
  */
7
7
  export type RunProtocolFn = (input: {
8
+ /**
9
+ * Planned child run id emitted on sub-run lifecycle events before dispatch.
10
+ * The engine callback uses this to look up the matching sub-run span.
11
+ */
12
+ readonly runId: string;
8
13
  readonly intent: string;
9
14
  readonly protocol: ProtocolSelection;
10
15
  readonly tier: Tier;
@@ -22,6 +27,7 @@ export type RunProtocolFn = (input: {
22
27
  readonly currentDepth?: number;
23
28
  readonly effectiveMaxDepth?: number;
24
29
  readonly effectiveMaxConcurrentChildren?: number;
30
+ readonly effectiveMaxConcurrentAgentTurns?: number;
25
31
  readonly onChildFailure?: DogpileOptions["onChildFailure"];
26
32
  /**
27
33
  * Root-run deadline (epoch ms). Children inherit `parentDeadlineMs - now()`
@@ -59,11 +65,12 @@ interface CoordinatorRunOptions {
59
65
  */
60
66
  readonly currentDepth?: number;
61
67
  /**
62
- * Effective max recursion depth resolved at run start. Plan 04 enforces;
63
- * Plan 03 only plumbs the value.
68
+ * Effective max recursion depth resolved at run start and enforced before
69
+ * delegate dispatch.
64
70
  */
65
71
  readonly effectiveMaxDepth?: number;
66
72
  readonly effectiveMaxConcurrentChildren?: number;
73
+ readonly effectiveMaxConcurrentAgentTurns?: number;
67
74
  readonly onChildFailure?: DogpileOptions["onChildFailure"];
68
75
  /**
69
76
  * Engine `runProtocol` callback used by the delegate dispatch loop to
@@ -1 +1 @@
1
- {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../src/runtime/coordinator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../src/runtime/coordinator.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { DogpileError } from "../types.js";
2
2
  import { createRunId, elapsedMs, nowMs, providerCallIdFor } from "./ids.js";
3
3
  import { addCost, createReplayTraceBudget, createReplayTraceBudgetStateChanges, createReplayTraceFinalOutput, createReplayTraceProtocolDecision, createReplayTraceRunInputs, createReplayTraceSeed, createRunAccounting, createRunEventLog, createRunMetadata, createRunUsage, createTranscriptLink, emptyCost, lastCostBearingEventCost, nextProviderCallId } from "./defaults.js";
4
+ import { computeHealth, DEFAULT_HEALTH_THRESHOLDS } from "./health.js";
4
5
  import { classifyAbortReason, classifyChildTimeoutSource, createAbortErrorFromSignal, createEngineDeadlineTimeoutError, throwIfAborted } from "./cancellation.js";
5
6
  import { assertDepthWithinLimit, parseAgentDecision } from "./decisions.js";
6
7
  import { generateModelTurn } from "./model.js";
@@ -14,9 +15,11 @@ import { createWrapUpHintController } from "./wrap-up.js";
14
15
  */
15
16
  const MAX_DISPATCH_PER_TURN = 8;
16
17
  const DEFAULT_MAX_CONCURRENT_CHILDREN = 4;
18
+ const DEFAULT_MAX_CONCURRENT_AGENT_TURNS = 4;
17
19
  function createSemaphore(maxConcurrent) {
18
20
  let inFlight = 0;
19
21
  const waiters = [];
22
+ let waiterHead = 0;
20
23
  return {
21
24
  acquire() {
22
25
  if (inFlight < maxConcurrent) {
@@ -32,8 +35,14 @@ function createSemaphore(maxConcurrent) {
32
35
  },
33
36
  release() {
34
37
  inFlight -= 1;
35
- const next = waiters.shift();
38
+ const next = waiters[waiterHead];
36
39
  if (next !== undefined) {
40
+ waiters[waiterHead] = undefined;
41
+ waiterHead += 1;
42
+ if (waiterHead > 32 && waiterHead * 2 > waiters.length) {
43
+ waiters.splice(0, waiterHead);
44
+ waiterHead = 0;
45
+ }
37
46
  next();
38
47
  }
39
48
  },
@@ -41,7 +50,7 @@ function createSemaphore(maxConcurrent) {
41
50
  return inFlight;
42
51
  },
43
52
  get queued() {
44
- return waiters.length;
53
+ return waiters.length - waiterHead;
45
54
  }
46
55
  };
47
56
  }
@@ -50,15 +59,16 @@ function createSemaphore(maxConcurrent) {
50
59
  * whose metadata.locality === "local", or undefined if none found.
51
60
  *
52
61
  * Walk order (forward-compat): options.model first, then options.agents in
53
- * declaration order. AgentSpec has no `model` field today (Phase 3 D-11
54
- * forward-compat scaffolding); the agent walk uses optional chaining and
55
- * effectively no-ops until a future phase adds AgentSpec.model.
62
+ * declaration order. AgentSpec has no `model` field today; the agent walk
63
+ * uses optional chaining and effectively no-ops until a future caller-defined
64
+ * tree surface adds AgentSpec.model.
56
65
  */
57
66
  function findFirstLocalProvider(options) {
58
67
  if (options.model.metadata?.locality === "local") {
59
68
  return options.model;
60
69
  }
61
- // Forward-compat: AgentSpec.model not yet declared (Phase 3 D-11). Walk no-ops today; ready for caller-defined trees in a future milestone.
70
+ // Forward-compat: AgentSpec.model is not yet declared; this no-ops today and
71
+ // is ready for a future caller-defined tree surface.
62
72
  for (const agent of options.agents) {
63
73
  const agentModel = agent.model;
64
74
  if (agentModel?.metadata?.locality === "local") {
@@ -180,13 +190,12 @@ export async function runCoordinator(options) {
180
190
  }
181
191
  if (coordinator) {
182
192
  if (!stopIfNeeded()) {
183
- // Delegate dispatch loop (D-11/D-16/D-17/D-18). Phase 1 limits delegation
184
- // to the coordinator's plan turn; workers cannot delegate. The loop
185
- // re-issues the coordinator plan turn after each successful sub-run with
186
- // the projected D-17 result tagged into the next prompt and a synthetic
187
- // D-18 transcript entry already appended. `partialTrace` for failed
188
- // sub-runs is captured via a tee'd emit buffer locally — `runProtocol`'s
189
- // error contract is unchanged.
193
+ // Delegate dispatch is restricted to the coordinator's plan turn.
194
+ // Workers and final synthesis cannot delegate. The loop re-issues the
195
+ // coordinator plan turn after each successful sub-run with the tagged
196
+ // child result in the next prompt and a synthetic transcript entry
197
+ // already appended. Failed children use the local tee buffer for
198
+ // partialTrace capture; runProtocol's error contract stays unchanged.
190
199
  let dispatchInput = buildCoordinatorPlanInput(options.intent, coordinator);
191
200
  let dispatchCount = 0;
192
201
  while (true) {
@@ -445,25 +454,34 @@ export async function runCoordinator(options) {
445
454
  const workers = activeAgents.slice(1);
446
455
  const providerCallSlots = [];
447
456
  const planTranscript = [...transcript];
448
- const workerResults = await Promise.all(workers.map((agent, index) => runCoordinatorWorkerTurn({
449
- agent,
450
- coordinator,
451
- input: buildWorkerInput(options.intent, planTranscript, coordinator),
452
- options,
453
- runId,
454
- turn: transcript.length + index + 1,
455
- providerCallId: providerCallIdFor(runId, providerCalls.length + index + 1),
456
- providerCallIndex: index,
457
- providerCallSlots,
458
- toolExecutor,
459
- toolAvailability,
460
- totalCost,
461
- events,
462
- transcript: planTranscript,
463
- startedAtMs,
464
- wrapUpHint,
465
- emit
466
- })));
457
+ const fanout = createFanoutAbortController(options.signal);
458
+ const workerResults = await (async () => {
459
+ try {
460
+ return await mapWithConcurrency(workers, options.effectiveMaxConcurrentAgentTurns ?? DEFAULT_MAX_CONCURRENT_AGENT_TURNS, fanout, (agent, index) => runCoordinatorWorkerTurn({
461
+ agent,
462
+ coordinator,
463
+ input: buildWorkerInput(options.intent, planTranscript, coordinator),
464
+ options,
465
+ runId,
466
+ turn: transcript.length + index + 1,
467
+ providerCallId: providerCallIdFor(runId, providerCalls.length + index + 1),
468
+ providerCallIndex: index,
469
+ providerCallSlots,
470
+ toolExecutor,
471
+ toolAvailability,
472
+ totalCost,
473
+ events,
474
+ transcript: planTranscript,
475
+ startedAtMs,
476
+ wrapUpHint,
477
+ emit,
478
+ fanoutSignal: fanout.signal
479
+ }));
480
+ }
481
+ finally {
482
+ fanout.cleanup();
483
+ }
484
+ })();
467
485
  providerCalls.push(...providerCallSlots.filter((call) => call !== undefined));
468
486
  for (const result of workerResults) {
469
487
  totalCost = addCost(totalCost, result.turnCost);
@@ -515,11 +533,11 @@ export async function runCoordinator(options) {
515
533
  recordProtocolDecision
516
534
  });
517
535
  totalCost = synthesisOutcome.totalCost;
518
- // Phase 1: final-synthesis turn cannot delegate.
536
+ // Final synthesis is terminal and cannot dispatch children.
519
537
  if (Array.isArray(synthesisOutcome.decision) || synthesisOutcome.decision?.type === "delegate") {
520
538
  throw new DogpileError({
521
539
  code: "invalid-configuration",
522
- message: "Coordinator final-synthesis turn cannot emit a delegate decision in Phase 1",
540
+ message: "Coordinator final-synthesis turn cannot emit a delegate decision.",
523
541
  retryable: false,
524
542
  detail: {
525
543
  kind: "delegate-validation",
@@ -547,45 +565,46 @@ export async function runCoordinator(options) {
547
565
  transcriptEntryCount: transcript.length
548
566
  });
549
567
  const finalEvent = events.at(-1);
568
+ const trace = {
569
+ schemaVersion: "1.0",
570
+ runId,
571
+ protocol: "coordinator",
572
+ tier: options.tier,
573
+ modelProviderId: options.model.id,
574
+ agentsUsed: activeAgents,
575
+ inputs: createReplayTraceRunInputs({
576
+ intent: options.intent,
577
+ protocol: options.protocol,
578
+ tier: options.tier,
579
+ modelProviderId: options.model.id,
580
+ agents: activeAgents,
581
+ temperature: options.temperature
582
+ }),
583
+ budget: createReplayTraceBudget({
584
+ tier: options.tier,
585
+ ...(options.budget ? { caps: options.budget } : {}),
586
+ ...(options.terminate ? { termination: options.terminate } : {})
587
+ }),
588
+ budgetStateChanges: createReplayTraceBudgetStateChanges(events),
589
+ seed: createReplayTraceSeed(options.seed),
590
+ protocolDecisions,
591
+ providerCalls,
592
+ finalOutput: createReplayTraceFinalOutput(output, finalEvent ?? {
593
+ type: "final",
594
+ runId,
595
+ at: "",
596
+ output,
597
+ cost: totalCost,
598
+ transcript: createTranscriptLink(transcript)
599
+ }),
600
+ ...(triggeringFailureForAbortMode !== undefined ? { triggeringFailureForAbortMode } : {}),
601
+ events,
602
+ transcript
603
+ };
550
604
  return {
551
605
  output,
552
606
  eventLog: createRunEventLog(runId, "coordinator", events),
553
- trace: {
554
- schemaVersion: "1.0",
555
- runId,
556
- protocol: "coordinator",
557
- tier: options.tier,
558
- modelProviderId: options.model.id,
559
- agentsUsed: activeAgents,
560
- inputs: createReplayTraceRunInputs({
561
- intent: options.intent,
562
- protocol: options.protocol,
563
- tier: options.tier,
564
- modelProviderId: options.model.id,
565
- agents: activeAgents,
566
- temperature: options.temperature
567
- }),
568
- budget: createReplayTraceBudget({
569
- tier: options.tier,
570
- ...(options.budget ? { caps: options.budget } : {}),
571
- ...(options.terminate ? { termination: options.terminate } : {})
572
- }),
573
- budgetStateChanges: createReplayTraceBudgetStateChanges(events),
574
- seed: createReplayTraceSeed(options.seed),
575
- protocolDecisions,
576
- providerCalls,
577
- finalOutput: createReplayTraceFinalOutput(output, finalEvent ?? {
578
- type: "final",
579
- runId,
580
- at: "",
581
- output,
582
- cost: totalCost,
583
- transcript: createTranscriptLink(transcript)
584
- }),
585
- ...(triggeringFailureForAbortMode !== undefined ? { triggeringFailureForAbortMode } : {}),
586
- events,
587
- transcript
588
- },
607
+ trace,
589
608
  transcript,
590
609
  usage: createRunUsage(totalCost),
591
610
  metadata: createRunMetadata({
@@ -603,7 +622,8 @@ export async function runCoordinator(options) {
603
622
  cost: totalCost,
604
623
  events
605
624
  }),
606
- cost: totalCost
625
+ cost: totalCost,
626
+ health: computeHealth(trace, DEFAULT_HEALTH_THRESHOLDS)
607
627
  };
608
628
  function stopIfNeeded() {
609
629
  throwIfAborted(options.signal, options.model.id);
@@ -744,9 +764,10 @@ async function runCoordinatorTurn(turn) {
744
764
  }
745
765
  async function runCoordinatorWorkerTurn(turn) {
746
766
  throwIfAborted(turn.options.signal, turn.options.model.id);
767
+ throwIfAborted(turn.fanoutSignal, turn.options.model.id);
747
768
  const request = {
748
769
  temperature: turn.options.temperature,
749
- ...(turn.options.signal !== undefined ? { signal: turn.options.signal } : {}),
770
+ ...(turn.fanoutSignal !== undefined ? { signal: turn.fanoutSignal } : turn.options.signal !== undefined ? { signal: turn.options.signal } : {}),
750
771
  metadata: {
751
772
  runId: turn.runId,
752
773
  protocol: "coordinator",
@@ -796,7 +817,7 @@ async function runCoordinatorWorkerTurn(turn) {
796
817
  if (Array.isArray(decision) || decision?.type === "delegate") {
797
818
  throw new DogpileError({
798
819
  code: "invalid-configuration",
799
- message: "Workers cannot emit delegate decisions in Phase 1",
820
+ message: "Workers cannot emit delegate decisions.",
800
821
  retryable: false,
801
822
  detail: {
802
823
  kind: "delegate-validation",
@@ -816,6 +837,7 @@ async function runCoordinatorWorkerTurn(turn) {
816
837
  }
817
838
  });
818
839
  throwIfAborted(turn.options.signal, turn.options.model.id);
840
+ throwIfAborted(turn.fanoutSignal, turn.options.model.id);
819
841
  return {
820
842
  agent: turn.agent,
821
843
  input: turn.input,
@@ -883,6 +905,59 @@ function responseCost(response) {
883
905
  totalTokens: response.usage?.totalTokens ?? 0
884
906
  };
885
907
  }
908
+ function createFanoutAbortController(parentSignal) {
909
+ const controller = new AbortController();
910
+ let removeParentListener = () => { };
911
+ if (parentSignal?.aborted) {
912
+ controller.abort(parentSignal.reason);
913
+ }
914
+ else if (parentSignal !== undefined) {
915
+ const abortFromParent = () => {
916
+ controller.abort(parentSignal.reason);
917
+ };
918
+ parentSignal.addEventListener("abort", abortFromParent, { once: true });
919
+ removeParentListener = () => {
920
+ parentSignal.removeEventListener("abort", abortFromParent);
921
+ };
922
+ }
923
+ return {
924
+ signal: controller.signal,
925
+ abort(reason) {
926
+ if (!controller.signal.aborted) {
927
+ controller.abort(reason);
928
+ }
929
+ },
930
+ cleanup() {
931
+ removeParentListener();
932
+ }
933
+ };
934
+ }
935
+ async function mapWithConcurrency(items, maxConcurrent, fanout, mapper) {
936
+ if (items.length === 0) {
937
+ return [];
938
+ }
939
+ const results = new Array(items.length);
940
+ let nextIndex = 0;
941
+ let firstError;
942
+ const workerCount = Math.min(maxConcurrent, items.length);
943
+ await Promise.all(Array.from({ length: workerCount }, async () => {
944
+ while (nextIndex < items.length && firstError === undefined) {
945
+ const index = nextIndex;
946
+ nextIndex += 1;
947
+ try {
948
+ results[index] = await mapper(items[index], index);
949
+ }
950
+ catch (error) {
951
+ firstError ??= error;
952
+ fanout.abort(error);
953
+ }
954
+ }
955
+ }));
956
+ if (firstError !== undefined) {
957
+ throw firstError;
958
+ }
959
+ return results;
960
+ }
886
961
  /**
887
962
  * Dispatch a single delegate decision as a recursive sub-run.
888
963
  *
@@ -960,7 +1035,7 @@ async function dispatchDelegate(input) {
960
1035
  }
961
1036
  });
962
1037
  }
963
- // Buffered tee for partialTrace capture see Plan 03 step 8.
1038
+ // Buffered tee captures the child event prefix used for partialTrace.
964
1039
  const childEvents = input.dispatchedChild.childEvents;
965
1040
  const parentEmit = input.emit;
966
1041
  const teedEmit = (event) => {
@@ -1014,7 +1089,7 @@ async function dispatchDelegate(input) {
1014
1089
  // BUDGET-01 / D-07: derive a per-child AbortController so child engines see
1015
1090
  // their own signal. Listener forwards parent.signal.reason verbatim, so
1016
1091
  // detail.reason classification (parent-aborted vs timeout) is preserved.
1017
- // Phase 4 STREAM-03 hook: per-child cancel handle attaches here.
1092
+ // Reserved per-child stream cancel hook attaches here if that surface ships.
1018
1093
  const parentSignal = options.signal;
1019
1094
  let removeParentAbortListener;
1020
1095
  if (parentSignal !== undefined) {
@@ -1043,6 +1118,7 @@ async function dispatchDelegate(input) {
1043
1118
  }, childTimeoutMs)
1044
1119
  : undefined;
1045
1120
  const childOptions = {
1121
+ runId: childRunId,
1046
1122
  intent: decision.intent,
1047
1123
  protocol: decision.protocol,
1048
1124
  tier: options.tier,
@@ -1059,6 +1135,9 @@ async function dispatchDelegate(input) {
1059
1135
  ...(options.effectiveMaxConcurrentChildren !== undefined
1060
1136
  ? { effectiveMaxConcurrentChildren: options.effectiveMaxConcurrentChildren }
1061
1137
  : {}),
1138
+ ...(options.effectiveMaxConcurrentAgentTurns !== undefined
1139
+ ? { effectiveMaxConcurrentAgentTurns: options.effectiveMaxConcurrentAgentTurns }
1140
+ : {}),
1062
1141
  ...(options.onChildFailure !== undefined ? { onChildFailure: options.onChildFailure } : {}),
1063
1142
  // BUDGET-02 / D-12: forward the ROOT deadline so depth-N grandchildren
1064
1143
  // see the same `parentDeadlineMs` rather than a fresh per-level snapshot.
@@ -1236,8 +1315,8 @@ async function dispatchDelegate(input) {
1236
1315
  function renderSubRunResult(childRunId, subResult) {
1237
1316
  const turns = subResult.transcript.length;
1238
1317
  const costUsd = subResult.cost.usd ?? 0;
1239
- const startedAt = subResult.trace.events[0]?.at;
1240
- const endedAt = subResult.trace.events.at(-1)?.at;
1318
+ const startedAt = eventTimestamp(subResult.trace.events[0]);
1319
+ const endedAt = eventTimestamp(subResult.trace.events.at(-1));
1241
1320
  const durationMs = startedAt && endedAt
1242
1321
  ? Math.max(0, Date.parse(endedAt) - Date.parse(startedAt))
1243
1322
  : 0;
@@ -1246,10 +1325,17 @@ function renderSubRunResult(childRunId, subResult) {
1246
1325
  `[sub-run ${childRunId} stats]: turns=${turns} costUsd=${costUsd} durationMs=${durationMs}`
1247
1326
  ].join("\n");
1248
1327
  }
1328
+ function eventTimestamp(event) {
1329
+ if (event === undefined)
1330
+ return undefined;
1331
+ if ("at" in event)
1332
+ return event.at;
1333
+ return event.type === "model-response" ? event.completedAt : event.startedAt;
1334
+ }
1249
1335
  /**
1250
1336
  * Build a JSON-serializable {@link Trace} for `sub-run-failed.partialTrace`
1251
1337
  * from a buffered tee of child emits. Keeps `runProtocol`'s error contract
1252
- * unchanged — Plan 03 step 8.
1338
+ * unchanged.
1253
1339
  */
1254
1340
  function buildPartialTrace(input) {
1255
1341
  const protocolName = typeof input.protocol === "string" ? input.protocol : input.protocol.kind;