@dogpile/sdk 0.5.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 (67) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/dist/browser/index.js +3992 -4997
  3. package/dist/browser/index.js.map +1 -1
  4. package/dist/providers/openai-compatible.d.ts.map +1 -1
  5. package/dist/providers/openai-compatible.js +5 -1
  6. package/dist/providers/openai-compatible.js.map +1 -1
  7. package/dist/runtime/broadcast.d.ts +1 -0
  8. package/dist/runtime/broadcast.d.ts.map +1 -1
  9. package/dist/runtime/broadcast.js +132 -69
  10. package/dist/runtime/broadcast.js.map +1 -1
  11. package/dist/runtime/coordinator.d.ts +4 -2
  12. package/dist/runtime/coordinator.d.ts.map +1 -1
  13. package/dist/runtime/coordinator.js +114 -39
  14. package/dist/runtime/coordinator.js.map +1 -1
  15. package/dist/runtime/defaults.d.ts.map +1 -1
  16. package/dist/runtime/defaults.js +2 -1
  17. package/dist/runtime/defaults.js.map +1 -1
  18. package/dist/runtime/engine.d.ts.map +1 -1
  19. package/dist/runtime/engine.js +54 -34
  20. package/dist/runtime/engine.js.map +1 -1
  21. package/dist/runtime/model.d.ts.map +1 -1
  22. package/dist/runtime/model.js +6 -3
  23. package/dist/runtime/model.js.map +1 -1
  24. package/dist/runtime/redaction.d.ts +13 -0
  25. package/dist/runtime/redaction.d.ts.map +1 -0
  26. package/dist/runtime/redaction.js +278 -0
  27. package/dist/runtime/redaction.js.map +1 -0
  28. package/dist/runtime/sanitization.d.ts +4 -0
  29. package/dist/runtime/sanitization.d.ts.map +1 -0
  30. package/dist/runtime/sanitization.js +63 -0
  31. package/dist/runtime/sanitization.js.map +1 -0
  32. package/dist/runtime/shared.d.ts +1 -0
  33. package/dist/runtime/shared.d.ts.map +1 -1
  34. package/dist/runtime/shared.js +128 -65
  35. package/dist/runtime/shared.js.map +1 -1
  36. package/dist/runtime/tools/built-in.d.ts +2 -0
  37. package/dist/runtime/tools/built-in.d.ts.map +1 -1
  38. package/dist/runtime/tools/built-in.js +153 -15
  39. package/dist/runtime/tools/built-in.js.map +1 -1
  40. package/dist/runtime/tools.d.ts.map +1 -1
  41. package/dist/runtime/tools.js +29 -7
  42. package/dist/runtime/tools.js.map +1 -1
  43. package/dist/runtime/validation.d.ts.map +1 -1
  44. package/dist/runtime/validation.js +3 -0
  45. package/dist/runtime/validation.js.map +1 -1
  46. package/dist/types/events.d.ts +3 -3
  47. package/dist/types/events.d.ts.map +1 -1
  48. package/dist/types/replay.d.ts +3 -1
  49. package/dist/types/replay.d.ts.map +1 -1
  50. package/dist/types.d.ts +20 -0
  51. package/dist/types.d.ts.map +1 -1
  52. package/package.json +8 -1
  53. package/src/providers/openai-compatible.ts +5 -1
  54. package/src/runtime/broadcast.ts +156 -72
  55. package/src/runtime/coordinator.ts +143 -47
  56. package/src/runtime/defaults.ts +2 -1
  57. package/src/runtime/engine.ts +77 -40
  58. package/src/runtime/model.ts +6 -3
  59. package/src/runtime/redaction.ts +355 -0
  60. package/src/runtime/sanitization.ts +81 -0
  61. package/src/runtime/shared.ts +152 -68
  62. package/src/runtime/tools/built-in.ts +168 -15
  63. package/src/runtime/tools.ts +39 -8
  64. package/src/runtime/validation.ts +3 -0
  65. package/src/types/events.ts +3 -3
  66. package/src/types/replay.ts +3 -1
  67. package/src/types.ts +20 -0
@@ -0,0 +1,278 @@
1
+ const DEFAULT_REPLACEMENT_TEXT = "[REDACTED]";
2
+ const REDACTED_JSON_OBJECT = { redacted: true };
3
+ export function redactTrace(trace, options = {}) {
4
+ return {
5
+ ...trace,
6
+ inputs: shouldRedactPrompts(options)
7
+ ? {
8
+ ...trace.inputs,
9
+ intent: replacement(options)
10
+ }
11
+ : trace.inputs,
12
+ protocolDecisions: trace.protocolDecisions.map((decision) => redactProtocolDecision(decision, options)),
13
+ providerCalls: trace.providerCalls.map((call) => redactProviderCall(call, options)),
14
+ finalOutput: shouldRedactOutputs(options)
15
+ ? {
16
+ ...trace.finalOutput,
17
+ output: replacement(options)
18
+ }
19
+ : trace.finalOutput,
20
+ events: trace.events.map((event) => redactRunEvent(event, options)),
21
+ transcript: trace.transcript.map((entry) => redactTranscriptEntry(entry, options))
22
+ };
23
+ }
24
+ export function redactRunResult(result, options = {}) {
25
+ const trace = redactTrace(result.trace, options);
26
+ const eventLog = {
27
+ ...result.eventLog,
28
+ events: trace.events,
29
+ eventTypes: trace.events.map((event) => event.type),
30
+ eventCount: trace.events.length
31
+ };
32
+ return {
33
+ ...result,
34
+ output: shouldRedactOutputs(options) ? replacement(options) : result.output,
35
+ eventLog,
36
+ trace,
37
+ transcript: trace.transcript
38
+ };
39
+ }
40
+ function redactRunEvent(event, options) {
41
+ switch (event.type) {
42
+ case "model-request":
43
+ return {
44
+ ...event,
45
+ request: redactModelRequest(event.request, options)
46
+ };
47
+ case "model-response":
48
+ return {
49
+ ...event,
50
+ response: redactModelResponse(event.response, options)
51
+ };
52
+ case "model-output-chunk":
53
+ return shouldRedactOutputs(options)
54
+ ? {
55
+ ...event,
56
+ text: replacement(options),
57
+ outputLength: 0
58
+ }
59
+ : event;
60
+ case "tool-call":
61
+ return shouldRedactToolInputs(options)
62
+ ? {
63
+ ...event,
64
+ input: REDACTED_JSON_OBJECT
65
+ }
66
+ : event;
67
+ case "tool-result":
68
+ return {
69
+ ...event,
70
+ result: redactRuntimeToolResult(event.result, options)
71
+ };
72
+ case "agent-turn":
73
+ return {
74
+ ...event,
75
+ ...(shouldRedactPrompts(options) ? { input: replacement(options) } : {}),
76
+ ...(shouldRedactOutputs(options) ? { output: replacement(options) } : {}),
77
+ ...(event.decision !== undefined ? { decision: redactDecision(event.decision, options) } : {})
78
+ };
79
+ case "broadcast":
80
+ return {
81
+ ...event,
82
+ contributions: event.contributions.map((contribution) => ({
83
+ ...contribution,
84
+ ...(shouldRedactOutputs(options) ? { output: replacement(options) } : {}),
85
+ ...(contribution.decision !== undefined
86
+ ? { decision: redactDecision(contribution.decision, options) }
87
+ : {})
88
+ }))
89
+ };
90
+ case "sub-run-completed":
91
+ return shouldRedactEmbeddedChildTraces(options)
92
+ ? {
93
+ ...event,
94
+ subResult: redactRunResult(event.subResult, options)
95
+ }
96
+ : event;
97
+ case "sub-run-failed":
98
+ return shouldRedactEmbeddedChildTraces(options)
99
+ ? {
100
+ ...event,
101
+ error: {
102
+ ...event.error,
103
+ ...(event.error.detail !== undefined
104
+ ? { detail: redactErrorDetail(event.error.detail, options) }
105
+ : {})
106
+ },
107
+ partialTrace: redactTrace(event.partialTrace, options)
108
+ }
109
+ : event;
110
+ case "final":
111
+ return shouldRedactOutputs(options)
112
+ ? {
113
+ ...event,
114
+ output: replacement(options)
115
+ }
116
+ : event;
117
+ case "role-assignment":
118
+ case "budget-stop":
119
+ case "sub-run-started":
120
+ case "sub-run-parent-aborted":
121
+ case "sub-run-budget-clamped":
122
+ case "sub-run-queued":
123
+ case "sub-run-concurrency-clamped":
124
+ return event;
125
+ }
126
+ }
127
+ function redactProviderCall(call, options) {
128
+ return {
129
+ ...call,
130
+ request: redactModelRequest(call.request, options),
131
+ response: redactModelResponse(call.response, options)
132
+ };
133
+ }
134
+ function redactProtocolDecision(decision, options) {
135
+ return {
136
+ ...decision,
137
+ ...(decision.input !== undefined && shouldRedactPrompts(options) ? { input: replacement(options) } : {}),
138
+ ...(decision.output !== undefined && shouldRedactOutputs(options) ? { output: replacement(options) } : {})
139
+ };
140
+ }
141
+ function redactModelRequest(request, options) {
142
+ return shouldRedactPrompts(options)
143
+ ? {
144
+ ...request,
145
+ messages: request.messages.map((message) => ({
146
+ ...message,
147
+ content: replacement(options)
148
+ }))
149
+ }
150
+ : request;
151
+ }
152
+ function redactModelResponse(response, options) {
153
+ const redactedToolRequests = response.toolRequests?.map((request) => redactToolRequest(request, options));
154
+ if (shouldRedactProviderResponses(options)) {
155
+ return {
156
+ text: replacement(options),
157
+ ...(response.finishReason !== undefined ? { finishReason: response.finishReason } : {}),
158
+ ...(redactedToolRequests !== undefined && redactedToolRequests.length > 0 ? { toolRequests: redactedToolRequests } : {}),
159
+ ...(response.usage !== undefined ? { usage: response.usage } : {}),
160
+ ...(response.costUsd !== undefined ? { costUsd: response.costUsd } : {})
161
+ };
162
+ }
163
+ return {
164
+ ...response,
165
+ ...(shouldRedactOutputs(options) ? { text: replacement(options) } : {}),
166
+ ...(redactedToolRequests !== undefined ? { toolRequests: redactedToolRequests } : {})
167
+ };
168
+ }
169
+ function redactToolRequest(request, options) {
170
+ return shouldRedactToolInputs(options)
171
+ ? {
172
+ ...request,
173
+ input: REDACTED_JSON_OBJECT
174
+ }
175
+ : request;
176
+ }
177
+ function redactTranscriptEntry(entry, options) {
178
+ return {
179
+ ...entry,
180
+ ...(shouldRedactPrompts(options) ? { input: replacement(options) } : {}),
181
+ ...(shouldRedactOutputs(options) ? { output: replacement(options) } : {}),
182
+ ...(entry.decision !== undefined ? { decision: redactDecision(entry.decision, options) } : {}),
183
+ ...(entry.toolCalls !== undefined
184
+ ? { toolCalls: entry.toolCalls.map((toolCall) => redactTranscriptToolCall(toolCall, options)) }
185
+ : {})
186
+ };
187
+ }
188
+ function redactTranscriptToolCall(toolCall, options) {
189
+ return {
190
+ ...toolCall,
191
+ ...(shouldRedactToolInputs(options) ? { input: REDACTED_JSON_OBJECT } : {}),
192
+ result: redactRuntimeToolResult(toolCall.result, options)
193
+ };
194
+ }
195
+ function redactRuntimeToolResult(result, options) {
196
+ if (!shouldRedactToolOutputs(options)) {
197
+ return result;
198
+ }
199
+ if (result.type === "success") {
200
+ return {
201
+ ...result,
202
+ output: REDACTED_JSON_OBJECT
203
+ };
204
+ }
205
+ return {
206
+ ...result,
207
+ error: {
208
+ ...result.error,
209
+ ...(result.error.detail !== undefined ? { detail: REDACTED_JSON_OBJECT } : {})
210
+ }
211
+ };
212
+ }
213
+ function redactDecision(decision, options) {
214
+ if (isDelegateDecisionArray(decision)) {
215
+ return decision.map((delegate) => redactDelegateDecision(delegate, options));
216
+ }
217
+ if (decision.type === "delegate") {
218
+ return redactDelegateDecision(decision, options);
219
+ }
220
+ return {
221
+ ...decision,
222
+ ...(shouldRedactOutputs(options)
223
+ ? {
224
+ rationale: replacement(options),
225
+ contribution: replacement(options)
226
+ }
227
+ : {})
228
+ };
229
+ }
230
+ function isDelegateDecisionArray(decision) {
231
+ return Array.isArray(decision);
232
+ }
233
+ function redactDelegateDecision(decision, options) {
234
+ return shouldRedactPrompts(options)
235
+ ? {
236
+ ...decision,
237
+ intent: replacement(options)
238
+ }
239
+ : decision;
240
+ }
241
+ function redactErrorDetail(detail, options) {
242
+ const failedDecision = detail["failedDecision"];
243
+ if (!shouldRedactPrompts(options) ||
244
+ typeof failedDecision !== "object" ||
245
+ failedDecision === null ||
246
+ Array.isArray(failedDecision)) {
247
+ return detail;
248
+ }
249
+ return {
250
+ ...detail,
251
+ failedDecision: {
252
+ ...failedDecision,
253
+ intent: replacement(options)
254
+ }
255
+ };
256
+ }
257
+ function shouldRedactPrompts(options) {
258
+ return options.redactPrompts ?? true;
259
+ }
260
+ function shouldRedactOutputs(options) {
261
+ return options.redactOutputs ?? true;
262
+ }
263
+ function shouldRedactToolInputs(options) {
264
+ return options.redactToolInputs ?? true;
265
+ }
266
+ function shouldRedactToolOutputs(options) {
267
+ return options.redactToolOutputs ?? true;
268
+ }
269
+ function shouldRedactProviderResponses(options) {
270
+ return options.redactProviderResponses ?? true;
271
+ }
272
+ function shouldRedactEmbeddedChildTraces(options) {
273
+ return options.redactEmbeddedChildTraces ?? true;
274
+ }
275
+ function replacement(options) {
276
+ return options.replacementText ?? DEFAULT_REPLACEMENT_TEXT;
277
+ }
278
+ //# sourceMappingURL=redaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redaction.js","sourceRoot":"","sources":["../../src/runtime/redaction.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { JsonObject, JsonValue } from "../types.js";
2
+ export declare function sanitizeProviderJsonValue(value: unknown): JsonValue | undefined;
3
+ export declare function sanitizeProviderResponseHeaders(headers: Headers | Record<string, unknown> | undefined): JsonObject | undefined;
4
+ //# sourceMappingURL=sanitization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitization.d.ts","sourceRoot":"","sources":["../../src/runtime/sanitization.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAiBzD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,CAkC/E;AAED,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAmB9H"}
@@ -0,0 +1,63 @@
1
+ const safeResponseHeaderNames = new Set([
2
+ "content-type",
3
+ "date",
4
+ "request-id",
5
+ "retry-after",
6
+ "x-ratelimit-limit",
7
+ "x-ratelimit-remaining",
8
+ "x-ratelimit-reset",
9
+ "x-request-id",
10
+ "x-stream-request-id"
11
+ ]);
12
+ const authLikeKeyPattern = /^(?:authorization|proxy-authorization|cookie|set-cookie|x-api-key|api-key|apikey|api_key|x-auth-token|x-access-token|x-goog-api-key)$/i;
13
+ export function sanitizeProviderJsonValue(value) {
14
+ if (value === null || typeof value === "string" || typeof value === "boolean") {
15
+ return value;
16
+ }
17
+ if (typeof value === "number") {
18
+ return Number.isFinite(value) ? value : null;
19
+ }
20
+ if (value instanceof Date) {
21
+ return value.toISOString();
22
+ }
23
+ if (Array.isArray(value)) {
24
+ return value.map((child) => sanitizeProviderJsonValue(child) ?? null);
25
+ }
26
+ if (isRecord(value)) {
27
+ const result = {};
28
+ for (const [key, child] of Object.entries(value)) {
29
+ if (isAuthLikeKey(key)) {
30
+ continue;
31
+ }
32
+ const jsonValue = sanitizeProviderJsonValue(child);
33
+ if (jsonValue !== undefined) {
34
+ result[key] = jsonValue;
35
+ }
36
+ }
37
+ return result;
38
+ }
39
+ return undefined;
40
+ }
41
+ export function sanitizeProviderResponseHeaders(headers) {
42
+ if (headers === undefined) {
43
+ return undefined;
44
+ }
45
+ const result = {};
46
+ const entries = typeof Headers !== "undefined" && headers instanceof Headers
47
+ ? Array.from(headers.entries())
48
+ : Object.entries(headers).map(([key, value]) => [key, String(value)]);
49
+ for (const [key, value] of entries) {
50
+ const normalizedKey = key.toLowerCase();
51
+ if (safeResponseHeaderNames.has(normalizedKey) && value !== undefined) {
52
+ result[normalizedKey] = String(value);
53
+ }
54
+ }
55
+ return Object.keys(result).length > 0 ? result : undefined;
56
+ }
57
+ function isAuthLikeKey(key) {
58
+ return authLikeKeyPattern.test(key);
59
+ }
60
+ function isRecord(value) {
61
+ return value !== null && typeof value === "object" && !Array.isArray(value);
62
+ }
63
+ //# sourceMappingURL=sanitization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitization.js","sourceRoot":"","sources":["../../src/runtime/sanitization.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ interface SharedRunOptions {
12
12
  readonly signal?: AbortSignal;
13
13
  readonly terminate?: TerminationCondition;
14
14
  readonly wrapUpHint?: DogpileOptions["wrapUpHint"];
15
+ readonly maxConcurrentAgentTurns?: number;
15
16
  readonly emit?: (event: RunEvent) => void;
16
17
  }
17
18
  export declare function runShared(options: SharedRunOptions): Promise<RunResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/runtime/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,uBAAuB,EAEvB,cAAc,EACd,UAAU,EACV,SAAS,EAKT,WAAW,EACX,QAAQ,EACR,SAAS,EACT,oBAAoB,EACpB,oBAAoB,EAEpB,IAAI,EAGL,MAAM,aAAa,CAAC;AAyBrB,UAAU,gBAAgB;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IACxC,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,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,CAwS7E"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/runtime/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,uBAAuB,EAEvB,cAAc,EACd,UAAU,EACV,SAAS,EAKT,WAAW,EACX,QAAQ,EACR,SAAS,EACT,oBAAoB,EACpB,oBAAoB,EAEpB,IAAI,EAGL,MAAM,aAAa,CAAC;AAyBrB,UAAU,gBAAgB;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IACxC,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,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAC1C,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;CAC3C;AAID,wBAAsB,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,CAmT7E"}
@@ -7,6 +7,7 @@ import { generateModelTurn } from "./model.js";
7
7
  import { evaluateTerminationStop, warnOnProtocolTerminationMisconfiguration } from "./termination.js";
8
8
  import { createRuntimeToolExecutor, executeModelResponseToolRequests, runtimeToolAvailability } from "./tools.js";
9
9
  import { createWrapUpHintController } from "./wrap-up.js";
10
+ const DEFAULT_MAX_CONCURRENT_AGENT_TURNS = 4;
10
11
  export async function runShared(options) {
11
12
  const runId = createRunId();
12
13
  const events = [];
@@ -62,71 +63,80 @@ export async function runShared(options) {
62
63
  }
63
64
  if (!stopIfNeeded()) {
64
65
  const providerCallSlots = [];
65
- const turnResults = await Promise.all(activeAgents.map(async (agent, index) => {
66
- const turn = index + 1;
67
- const input = buildSharedInput(options.intent, sharedState, turn);
68
- const request = {
69
- temperature: options.temperature,
70
- ...(options.signal !== undefined ? { signal: options.signal } : {}),
71
- metadata: {
72
- runId,
73
- protocol: "shared",
74
- agentId: agent.id,
75
- role: agent.role,
76
- tier: options.tier,
77
- turn,
78
- ...toolAvailability
79
- },
80
- messages: wrapUpHint.inject([
81
- {
82
- role: "system",
83
- content: buildSystemPrompt(agent)
84
- },
85
- {
86
- role: "user",
87
- content: input
88
- }
89
- ], {
90
- runId,
91
- protocol: "shared",
92
- cost: totalCost,
93
- events,
94
- transcript,
95
- iteration: transcript.length,
96
- elapsedMs: elapsedMs(startedAtMs)
97
- })
98
- };
99
- const response = await generateModelTurn({
100
- model: options.model,
101
- request,
102
- runId,
103
- agent,
104
- input,
105
- emit,
106
- callId: providerCallIdFor(runId, providerCalls.length + index + 1),
107
- onProviderCall(call) {
108
- providerCallSlots[index] = call;
109
- }
110
- });
111
- const decision = parseAgentDecision(response.text);
112
- const toolCalls = await executeModelResponseToolRequests({
113
- response,
114
- executor: toolExecutor,
115
- agentId: agent.id,
116
- role: agent.role,
117
- turn
118
- });
119
- throwIfAborted(options.signal, options.model.id);
120
- return {
121
- agent,
122
- turn,
123
- input,
124
- response,
125
- decision,
126
- toolCalls,
127
- turnCost: responseCost(response)
128
- };
129
- }));
66
+ const fanout = createFanoutAbortController(options.signal);
67
+ const turnResults = await (async () => {
68
+ try {
69
+ return await mapWithConcurrency(activeAgents, options.maxConcurrentAgentTurns ?? DEFAULT_MAX_CONCURRENT_AGENT_TURNS, fanout, async (agent, index) => {
70
+ throwIfAborted(fanout.signal, options.model.id);
71
+ const turn = index + 1;
72
+ const input = buildSharedInput(options.intent, sharedState, turn);
73
+ const request = {
74
+ temperature: options.temperature,
75
+ signal: fanout.signal,
76
+ metadata: {
77
+ runId,
78
+ protocol: "shared",
79
+ agentId: agent.id,
80
+ role: agent.role,
81
+ tier: options.tier,
82
+ turn,
83
+ ...toolAvailability
84
+ },
85
+ messages: wrapUpHint.inject([
86
+ {
87
+ role: "system",
88
+ content: buildSystemPrompt(agent)
89
+ },
90
+ {
91
+ role: "user",
92
+ content: input
93
+ }
94
+ ], {
95
+ runId,
96
+ protocol: "shared",
97
+ cost: totalCost,
98
+ events,
99
+ transcript,
100
+ iteration: transcript.length,
101
+ elapsedMs: elapsedMs(startedAtMs)
102
+ })
103
+ };
104
+ const response = await generateModelTurn({
105
+ model: options.model,
106
+ request,
107
+ runId,
108
+ agent,
109
+ input,
110
+ emit,
111
+ callId: providerCallIdFor(runId, providerCalls.length + index + 1),
112
+ onProviderCall(call) {
113
+ providerCallSlots[index] = call;
114
+ }
115
+ });
116
+ const decision = parseAgentDecision(response.text);
117
+ const toolCalls = await executeModelResponseToolRequests({
118
+ response,
119
+ executor: toolExecutor,
120
+ agentId: agent.id,
121
+ role: agent.role,
122
+ turn
123
+ });
124
+ throwIfAborted(fanout.signal, options.model.id);
125
+ return {
126
+ agent,
127
+ turn,
128
+ input,
129
+ response,
130
+ decision,
131
+ toolCalls,
132
+ turnCost: responseCost(response)
133
+ };
134
+ });
135
+ }
136
+ finally {
137
+ fanout.cleanup();
138
+ }
139
+ })();
130
140
  providerCalls.push(...providerCallSlots.filter((call) => call !== undefined));
131
141
  for (const result of turnResults) {
132
142
  totalCost = addCost(totalCost, result.turnCost);
@@ -294,4 +304,57 @@ function responseCost(response) {
294
304
  totalTokens: response.usage?.totalTokens ?? 0
295
305
  };
296
306
  }
307
+ function createFanoutAbortController(parentSignal) {
308
+ const controller = new AbortController();
309
+ let removeParentListener = () => { };
310
+ if (parentSignal?.aborted) {
311
+ controller.abort(parentSignal.reason);
312
+ }
313
+ else if (parentSignal !== undefined) {
314
+ const abortFromParent = () => {
315
+ controller.abort(parentSignal.reason);
316
+ };
317
+ parentSignal.addEventListener("abort", abortFromParent, { once: true });
318
+ removeParentListener = () => {
319
+ parentSignal.removeEventListener("abort", abortFromParent);
320
+ };
321
+ }
322
+ return {
323
+ signal: controller.signal,
324
+ abort(reason) {
325
+ if (!controller.signal.aborted) {
326
+ controller.abort(reason);
327
+ }
328
+ },
329
+ cleanup() {
330
+ removeParentListener();
331
+ }
332
+ };
333
+ }
334
+ async function mapWithConcurrency(items, maxConcurrent, fanout, mapper) {
335
+ if (items.length === 0) {
336
+ return [];
337
+ }
338
+ const results = new Array(items.length);
339
+ let nextIndex = 0;
340
+ let firstError;
341
+ const workerCount = Math.min(maxConcurrent, items.length);
342
+ await Promise.all(Array.from({ length: workerCount }, async () => {
343
+ while (nextIndex < items.length && firstError === undefined) {
344
+ const index = nextIndex;
345
+ nextIndex += 1;
346
+ try {
347
+ results[index] = await mapper(items[index], index);
348
+ }
349
+ catch (error) {
350
+ firstError ??= error;
351
+ fanout.abort(error);
352
+ }
353
+ }
354
+ }));
355
+ if (firstError !== undefined) {
356
+ throw firstError;
357
+ }
358
+ return results;
359
+ }
297
360
  //# sourceMappingURL=shared.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/runtime/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/runtime/shared.ts"],"names":[],"mappings":"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"}