@assemblyline-agents/runtime 6.0.1 → 6.1.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 (98) hide show
  1. package/dist/background-subagents.d.ts +11 -6
  2. package/dist/background-subagents.d.ts.map +1 -1
  3. package/dist/background-subagents.js +39 -147
  4. package/dist/background-subagents.js.map +1 -1
  5. package/dist/builtin-tools.d.ts.map +1 -1
  6. package/dist/builtin-tools.js +42 -5
  7. package/dist/builtin-tools.js.map +1 -1
  8. package/dist/delivery-send.d.ts.map +1 -1
  9. package/dist/delivery-send.js +6 -5
  10. package/dist/delivery-send.js.map +1 -1
  11. package/dist/durable-files.d.ts.map +1 -1
  12. package/dist/durable-files.js +16 -2
  13. package/dist/durable-files.js.map +1 -1
  14. package/dist/harness-capabilities.js +1 -1
  15. package/dist/harness-capabilities.js.map +1 -1
  16. package/dist/harness-tool-execution.d.ts.map +1 -1
  17. package/dist/harness-tool-execution.js +6 -1
  18. package/dist/harness-tool-execution.js.map +1 -1
  19. package/dist/index.d.ts +1 -0
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +1 -0
  22. package/dist/index.js.map +1 -1
  23. package/dist/json-util.d.ts +8 -1
  24. package/dist/json-util.d.ts.map +1 -1
  25. package/dist/json-util.js +24 -2
  26. package/dist/json-util.js.map +1 -1
  27. package/dist/replay-resume-recovery.d.ts +2 -4
  28. package/dist/replay-resume-recovery.d.ts.map +1 -1
  29. package/dist/replay-resume-recovery.js +9 -13
  30. package/dist/replay-resume-recovery.js.map +1 -1
  31. package/dist/resource-projection-util.d.ts +1 -3
  32. package/dist/resource-projection-util.d.ts.map +1 -1
  33. package/dist/resource-projection-util.js +0 -35
  34. package/dist/resource-projection-util.js.map +1 -1
  35. package/dist/resource-projection.d.ts +2 -1
  36. package/dist/resource-projection.d.ts.map +1 -1
  37. package/dist/resource-projection.js +54 -115
  38. package/dist/resource-projection.js.map +1 -1
  39. package/dist/run-outcome.d.ts +1 -1
  40. package/dist/run-outcome.d.ts.map +1 -1
  41. package/dist/run-outcome.js.map +1 -1
  42. package/dist/run-recovery.d.ts +17 -6
  43. package/dist/run-recovery.d.ts.map +1 -1
  44. package/dist/run-recovery.js +249 -40
  45. package/dist/run-recovery.js.map +1 -1
  46. package/dist/runtime-engine-background.d.ts.map +1 -1
  47. package/dist/runtime-engine-background.js +10 -0
  48. package/dist/runtime-engine-background.js.map +1 -1
  49. package/dist/runtime-engine-base.d.ts.map +1 -1
  50. package/dist/runtime-engine-base.js +4 -3
  51. package/dist/runtime-engine-base.js.map +1 -1
  52. package/dist/runtime-engine-capabilities.d.ts +2 -1
  53. package/dist/runtime-engine-capabilities.d.ts.map +1 -1
  54. package/dist/runtime-engine-capabilities.js +1 -0
  55. package/dist/runtime-engine-capabilities.js.map +1 -1
  56. package/dist/runtime-engine-resources.d.ts +2 -1
  57. package/dist/runtime-engine-resources.d.ts.map +1 -1
  58. package/dist/runtime-engine-resources.js +4 -1
  59. package/dist/runtime-engine-resources.js.map +1 -1
  60. package/dist/sandbox-fs.d.ts +14 -5
  61. package/dist/sandbox-fs.d.ts.map +1 -1
  62. package/dist/sandbox-fs.js +36 -30
  63. package/dist/sandbox-fs.js.map +1 -1
  64. package/dist/sandbox-handle.d.ts +2 -1
  65. package/dist/sandbox-handle.d.ts.map +1 -1
  66. package/dist/sandbox-handle.js +4 -1
  67. package/dist/sandbox-handle.js.map +1 -1
  68. package/dist/sandbox-materialize.d.ts +30 -0
  69. package/dist/sandbox-materialize.d.ts.map +1 -0
  70. package/dist/sandbox-materialize.js +125 -0
  71. package/dist/sandbox-materialize.js.map +1 -0
  72. package/dist/schedule-execution.d.ts.map +1 -1
  73. package/dist/schedule-execution.js +20 -5
  74. package/dist/schedule-execution.js.map +1 -1
  75. package/dist/source-loader.d.ts +3 -0
  76. package/dist/source-loader.d.ts.map +1 -1
  77. package/dist/source-loader.js +5 -0
  78. package/dist/source-loader.js.map +1 -1
  79. package/dist/state/store-contracts.d.ts +1 -0
  80. package/dist/state/store-contracts.d.ts.map +1 -1
  81. package/dist/subagent-execution.d.ts +14 -7
  82. package/dist/subagent-execution.d.ts.map +1 -1
  83. package/dist/subagent-execution.js +140 -152
  84. package/dist/subagent-execution.js.map +1 -1
  85. package/dist/subagent-settlement.d.ts +50 -0
  86. package/dist/subagent-settlement.d.ts.map +1 -0
  87. package/dist/subagent-settlement.js +134 -0
  88. package/dist/subagent-settlement.js.map +1 -0
  89. package/dist/tool-execution.js +4 -1
  90. package/dist/tool-execution.js.map +1 -1
  91. package/dist/workspace-manifest.d.ts +16 -1
  92. package/dist/workspace-manifest.d.ts.map +1 -1
  93. package/dist/workspace-manifest.js +24 -6
  94. package/dist/workspace-manifest.js.map +1 -1
  95. package/dist/workspace-service.d.ts.map +1 -1
  96. package/dist/workspace-service.js +10 -1
  97. package/dist/workspace-service.js.map +1 -1
  98. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"subagent-execution.d.ts","sourceRoot":"","sources":["../src/subagent-execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subagent-execution.d.ts","sourceRoot":"","sources":["../src/subagent-execution.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,21 @@
1
- import { storedHarnessContinuation } from "./harness-continuation.js";
1
+ import { attachmentResourcePath } from "./attachments.js";
2
2
  import { timestamp } from "./runtime-util.js";
3
3
  import { isJsonObject } from "./json-util.js";
4
+ import { failRun } from "./run-outcome.js";
4
5
  import { findChildSubagent, findSubagent, surfaceForRun } from "./agent-surface.js";
5
- import { acceptSubagentHandoff, buildVerifiedSubagentHandoff, publicSubagentHandoff, readySubagentHandoff, recordSubagentHandoffReady, SUBAGENT_HANDOFF_INSTRUCTIONS, subagentHandoffRetryMessage, subagentRunBelongsToConversation } from "./subagent-handoff.js";
6
+ import { publicSubagentHandoff, readySubagentHandoff, SUBAGENT_HANDOFF_INSTRUCTIONS, subagentRunBelongsToConversation } from "./subagent-handoff.js";
7
+ import { finalizeSubagentHandoffImpl, isTerminalRunStatus, resumeAgentHarnessSubagent, subagentResumable } from "./subagent-settlement.js";
6
8
  export async function runSubagentImpl(host, parentRunId, subagentName, task) {
7
9
  const child = await createSubagentRunImpl(host, parentRunId, subagentName, task);
8
- const timeline = await executeSubagentRunImpl(host, child.id);
9
- const receipt = readySubagentHandoff(timeline.events);
10
- if (timeline.run.status === "completed" && receipt) {
11
- await acceptSubagentHandoff(host.state, parentRunId, receipt);
12
- }
13
- return host.replay(timeline.run.id);
10
+ return executeSubagentRunImpl(host, child.id);
14
11
  }
15
12
  const RESUMABLE_CHILD_STATUSES = new Set(["completed", "failed", "cancelled", "suspended"]);
16
13
  /**
17
14
  * Continue an existing child run instead of starting a fresh one. The child
18
15
  * keeps its sandbox session, workspace files, and transcript, so recovering a
19
16
  * failed or incomplete delegation costs one follow-up turn rather than a full
20
- * rebuild of work that already ran.
17
+ * rebuild of work that already ran. The result reports inline to the calling
18
+ * run even when the child originally ran in the background.
21
19
  */
22
20
  export async function resumeSubagentImpl(host, parentRunId, childRunId, expectedSubagentName, message) {
23
21
  const parent = await host.state.getRun(parentRunId);
@@ -41,10 +39,7 @@ export async function resumeSubagentImpl(host, parentRunId, childRunId, expected
41
39
  if (!RESUMABLE_CHILD_STATUSES.has(child.status)) {
42
40
  throw new Error(`Subagent run ${childRunId} is ${child.status}; wait for it to settle before resuming it.`);
43
41
  }
44
- const selectedSubagents = Array.isArray(parent.input.agentSubagents)
45
- ? parent.input.agentSubagents.filter((name) => typeof name === "string")
46
- : [];
47
- if (!selectedSubagents.includes(subagentName)) {
42
+ if (!enabledSubagents(parent).includes(subagentName)) {
48
43
  throw new Error(`Subagent ${subagentName} is not enabled by the current agent capability snapshot.`);
49
44
  }
50
45
  await host.state.appendEvent(parentRunId, "subagent.resumed", {
@@ -52,28 +47,14 @@ export async function resumeSubagentImpl(host, parentRunId, childRunId, expected
52
47
  childRunId,
53
48
  previousStatus: child.status
54
49
  });
55
- const timeline = await sendSubagentFollowupImpl(host, childRunId, message);
56
- const receipt = readySubagentHandoff(timeline.events);
57
- if (timeline.run.status === "completed" && receipt) {
58
- await acceptSubagentHandoff(host.state, parentRunId, receipt);
59
- }
60
- await host.state.appendEvent(parentRunId, "subagent.completed", {
61
- subagent: subagentName,
62
- childRunId: timeline.run.id,
63
- status: timeline.run.status,
64
- resumed: true,
65
- ...(receipt ? { handoff: publicSubagentHandoff(receipt) } : {})
66
- });
67
- return host.replay(timeline.run.id);
50
+ await resumeAgentHarnessSubagent(host, child, message);
51
+ return host.settleSubagentRun(await host.replay(childRunId), { parentRunId, background: false, resumed: true });
68
52
  }
69
- export async function createSubagentRunImpl(host, parentRunId, subagentName, task, options = {}) {
53
+ export async function createSubagentRunImpl(host, parentRunId, subagentName, inputTask, options = {}) {
70
54
  const parent = await host.state.getRun(parentRunId);
71
55
  if (!parent)
72
56
  throw new Error(`Parent run not found: ${parentRunId}`);
73
- const selectedSubagents = Array.isArray(parent.input.agentSubagents)
74
- ? parent.input.agentSubagents.filter((name) => typeof name === "string")
75
- : [];
76
- if (!selectedSubagents.includes(subagentName)) {
57
+ if (!enabledSubagents(parent).includes(subagentName)) {
77
58
  throw new Error(`Subagent ${subagentName} is not enabled by the current agent capability snapshot.`);
78
59
  }
79
60
  const parentSurface = surfaceForRun(host.manifest, parent);
@@ -83,10 +64,8 @@ export async function createSubagentRunImpl(host, parentRunId, subagentName, tas
83
64
  const subagent = findChildSubagent(parentSurface, subagentName);
84
65
  if (!subagent)
85
66
  throw new Error(`Subagent not found: ${subagentName}`);
86
- await host.state.appendEvent(parentRunId, "subagent.called", {
87
- subagent: subagentName,
88
- task
89
- });
67
+ const { files, ...task } = inputTask;
68
+ const attachments = sharedAttachments(parent, files);
90
69
  const background = options.background
91
70
  ? {
92
71
  conversationId: typeof parent.input.conversationId === "string" ? parent.input.conversationId : parent.id,
@@ -94,6 +73,9 @@ export async function createSubagentRunImpl(host, parentRunId, subagentName, tas
94
73
  eventId: typeof parent.input.eventId === "string" ? parent.input.eventId : parent.id
95
74
  }
96
75
  : undefined;
76
+ // projectId and workspaceId stay on the parent: the sandbox session key and
77
+ // workspace selection prefer them, so copying them would make a
78
+ // project-scoped parent and its child share one sandbox and workspace.
97
79
  const child = await host.state.createRun({
98
80
  agentRevision: host.manifest.agentRevision,
99
81
  status: "created",
@@ -108,18 +90,24 @@ export async function createSubagentRunImpl(host, parentRunId, subagentName, tas
108
90
  principal: parent.input.principal ?? null,
109
91
  initiator: parent.input.initiator ?? parent.input.principal ?? null,
110
92
  audience: parent.input.audience ?? { private: true },
111
- projectId: typeof parent.input.projectId === "string" ? parent.input.projectId : null,
112
- workspaceId: typeof parent.input.workspaceId === "string" ? parent.input.workspaceId : null,
113
93
  tenantId: typeof parent.input.tenantId === "string" ? parent.input.tenantId : null,
114
94
  delivery: parent.input.delivery ?? null,
115
95
  originReplyTarget: parent.input.replyTarget ?? null,
116
96
  metadata: parent.input.metadata ?? {},
97
+ attachmentMetadata: attachments,
117
98
  ...(background ? { background } : {}),
118
99
  // Eval harness options follow the parent so subagent tool calls hit the
119
100
  // same stubs and approval policy ({results} cursors restart per child).
120
101
  ...(parent.input.eval !== undefined ? { eval: parent.input.eval } : {})
121
102
  }
122
103
  });
104
+ await host.state.appendEvent(parentRunId, "subagent.called", {
105
+ subagent: subagentName,
106
+ childRunId: child.id,
107
+ task,
108
+ files: attachments.map((attachment) => attachmentResourcePath(attachment)),
109
+ background: options.background === true
110
+ });
123
111
  await host.state.appendEvent(child.id, "run.accepted", {
124
112
  parentRunId,
125
113
  subagent: subagentName,
@@ -130,39 +118,125 @@ export async function createSubagentRunImpl(host, parentRunId, subagentName, tas
130
118
  });
131
119
  return child;
132
120
  }
121
+ /**
122
+ * Parent attachment records the child receives by reference. `files` names
123
+ * logical `/files/...` paths from the parent's manifest; absent, every parent
124
+ * attachment is shared. Records already carry runtime-issued blob pointers.
125
+ */
126
+ function sharedAttachments(parent, files) {
127
+ const records = attachmentRecords(parent);
128
+ if (files === undefined)
129
+ return records;
130
+ if (!Array.isArray(files) || !files.every((file) => typeof file === "string")) {
131
+ throw new Error("delegate files must be an array of /files paths from the manifest.");
132
+ }
133
+ const byPath = new Map(records.map((record) => [attachmentResourcePath(record), record]));
134
+ const selected = [];
135
+ for (const file of new Set(files)) {
136
+ const record = byPath.get(file);
137
+ if (!record) {
138
+ const available = [...byPath.keys()];
139
+ throw new Error(`delegate files entry "${file}" is not a parent attachment. ${available.length > 0 ? `Available: ${available.join(", ")}` : "This run has no attachments."}`);
140
+ }
141
+ selected.push(record);
142
+ }
143
+ return selected;
144
+ }
145
+ function attachmentRecords(run) {
146
+ return Array.isArray(run.input.attachmentMetadata) ? run.input.attachmentMetadata.filter(isJsonObject) : [];
147
+ }
148
+ function enabledSubagents(run) {
149
+ return Array.isArray(run.input.agentSubagents)
150
+ ? run.input.agentSubagents.filter((name) => typeof name === "string")
151
+ : [];
152
+ }
153
+ /** Index shared parent attachments under the child so lazy `/files` reads resolve for every child turn. */
154
+ async function indexSharedAttachments(state, child, parentRunId) {
155
+ const attachments = attachmentRecords(child);
156
+ for (const attachment of attachments) {
157
+ const blobKey = attachment.blobKey;
158
+ const sha256 = attachment.sha256;
159
+ const sizeBytes = attachment.sizeBytes;
160
+ if (typeof blobKey !== "string" || typeof sha256 !== "string" || typeof sizeBytes !== "number")
161
+ continue;
162
+ await state.recordFileIndex({
163
+ runId: child.id,
164
+ path: attachmentResourcePath(attachment),
165
+ kind: "file",
166
+ blobKey,
167
+ sha256,
168
+ sizeBytes,
169
+ metadata: {
170
+ source: "parent-attachment",
171
+ sourceRunId: parentRunId,
172
+ filename: typeof attachment.filename === "string" ? attachment.filename : null,
173
+ contentType: typeof attachment.contentType === "string" ? attachment.contentType : "application/octet-stream"
174
+ }
175
+ });
176
+ }
177
+ return attachments;
178
+ }
133
179
  export async function executeSubagentRunImpl(host, childRunId) {
134
180
  const storedChild = await host.state.getRun(childRunId);
135
181
  if (!storedChild)
136
182
  throw new Error(`Subagent run not found: ${childRunId}`);
137
183
  if (storedChild.status !== "created")
138
184
  return host.replay(childRunId);
185
+ const parentRunId = typeof storedChild.input.parentRunId === "string" ? storedChild.input.parentRunId : undefined;
186
+ const subagentName = typeof storedChild.input.subagent === "string" ? storedChild.input.subagent : "subagent";
187
+ const spanStartedAt = timestamp();
188
+ const parent = parentRunId ? await host.state.getRun(parentRunId) : undefined;
189
+ try {
190
+ if (!parentRunId || !parent)
191
+ throw new Error(`Parent run not found: ${parentRunId ?? "(none)"}`);
192
+ await driveSubagentRun(host, storedChild, parentRunId);
193
+ }
194
+ catch (error) {
195
+ // A child must never be left `running` with no executor: the parent would
196
+ // wait on it forever and the recovery sweep would misreport it as orphaned.
197
+ const current = await host.state.getRun(childRunId);
198
+ if (current && !isTerminalRunStatus(current.status)) {
199
+ await failRun({ state: host.state }, childRunId, {
200
+ reason: "subagent.execution_error",
201
+ error: error instanceof Error ? error.message : String(error)
202
+ });
203
+ }
204
+ }
205
+ const timeline = await host.settleSubagentRun(await host.replay(childRunId));
206
+ await host.emitSpan("ai.assembly-line.subagent.run", spanStartedAt, host.runSpanAttributes(parent ?? timeline.run, {
207
+ subagentName,
208
+ childRunId,
209
+ status: timeline.run.status,
210
+ engine: "pi"
211
+ }), {
212
+ ...(parentRunId ? { parentSpanId: host.turnSpanId(parentRunId) } : {}),
213
+ status: timeline.run.status === "failed" ? "error" : "ok"
214
+ });
215
+ return timeline;
216
+ }
217
+ /** Run the child's model loop to its own terminal or paused state. */
218
+ async function driveSubagentRun(host, storedChild, parentRunId) {
139
219
  let child = storedChild;
140
- const parentRunId = typeof child.input.parentRunId === "string" ? child.input.parentRunId : undefined;
141
- const subagentName = typeof child.input.subagent === "string" ? child.input.subagent : undefined;
142
220
  const task = child.input.task;
143
- if (!parentRunId || !subagentName || !isJsonObject(task)) {
144
- throw new Error(`Run ${childRunId} is not an executable subagent run.`);
145
- }
146
- const parent = await host.state.getRun(parentRunId);
147
- if (!parent)
148
- throw new Error(`Parent run not found: ${parentRunId}`);
221
+ if (!isJsonObject(task))
222
+ throw new Error(`Run ${child.id} is not an executable subagent run.`);
223
+ const subagentName = typeof child.input.subagent === "string" ? child.input.subagent : undefined;
149
224
  const surfacePath = typeof child.input.agentSurface === "string" ? child.input.agentSurface : undefined;
150
225
  const subagent = surfacePath ? findSubagent(host.manifest, surfacePath) : undefined;
151
226
  if (!subagent || subagent.name !== subagentName)
152
- throw new Error(`Subagent not found: ${subagentName}`);
153
- const spanStartedAt = timestamp();
227
+ throw new Error(`Subagent not found: ${subagentName ?? "(unnamed)"}`);
154
228
  child = await host.state.updateRun(child.id, { status: "running" });
155
229
  const message = JSON.stringify(task);
156
230
  const conversationId = child.id;
157
231
  const hookController = await host.createSubagentHookController(child, subagent, message, conversationId);
158
232
  const initialSnapshot = await hookController.evaluate("run_start");
159
233
  const controlledChild = await host.state.getRun(child.id);
234
+ // A hook may have cancelled or parked the run; settlement reports whatever state it is in.
160
235
  if (!controlledChild || controlledChild.status !== "running")
161
- return host.replay(child.id);
162
- child = controlledChild;
163
- child = await host.state.updateRun(child.id, {
236
+ return;
237
+ child = await host.state.updateRun(controlledChild.id, {
164
238
  input: {
165
- ...child.input,
239
+ ...controlledChild.input,
166
240
  model: initialSnapshot.declaration.model,
167
241
  conversationId,
168
242
  agentSandbox: initialSnapshot.declaration.sandbox ?? null,
@@ -170,12 +244,13 @@ export async function executeSubagentRunImpl(host, childRunId) {
170
244
  agentSubagents: initialSnapshot.declaration.subagents
171
245
  }
172
246
  });
247
+ const attachments = await indexSharedAttachments(host.state, child, parentRunId);
173
248
  const buildBundle = async (capabilities) => {
174
249
  const built = await host.buildContextBundle({
175
250
  message,
176
251
  channel: "subagent",
177
252
  recentHistory: [],
178
- attachments: [],
253
+ attachments,
179
254
  capabilities,
180
255
  run: child
181
256
  });
@@ -211,83 +286,16 @@ export async function executeSubagentRunImpl(host, childRunId) {
211
286
  });
212
287
  child = outcome.run;
213
288
  if (!outcome.failed && !outcome.controlStopped && !outcome.waitingForApproval && !outcome.waitingForInput && !outcome.waitingForConnection) {
214
- const completed = await host.completeRun(child, sandboxHandle, outcome.response, "subagent");
215
- child = completed.run;
289
+ await host.completeRun(child, sandboxHandle, outcome.response, "subagent");
216
290
  }
217
291
  }
218
292
  finally {
219
293
  heartbeat.stop();
220
294
  }
221
- let timeline = await host.replay(child.id);
222
- timeline = await finalizeSubagentHandoffImpl(host, timeline);
223
- child = timeline.run;
224
- const receipt = readySubagentHandoff(timeline.events);
225
- await host.state.appendEvent(parentRunId, "subagent.completed", {
226
- subagent: subagentName,
227
- childRunId: child.id,
228
- status: child.status,
229
- ...(receipt ? {
230
- handoff: publicSubagentHandoff(receipt)
231
- } : {})
232
- });
233
- await host.emitSpan("ai.assembly-line.subagent.run", spanStartedAt, host.runSpanAttributes(parent, {
234
- subagentName,
235
- childRunId: child.id,
236
- status: child.status,
237
- engine: "pi"
238
- }), {
239
- parentSpanId: host.turnSpanId(parentRunId),
240
- status: child.status === "failed" ? "error" : "ok"
241
- });
242
- return host.replay(child.id);
243
- }
244
- export async function finalizeSubagentHandoffImpl(host, initialTimeline) {
245
- let timeline = initialTimeline;
246
- if (timeline.run.status !== "completed")
247
- return timeline;
248
- if (readyAfterLatestCompletion(timeline.events))
249
- return timeline;
250
- let lastError;
251
- for (let attempt = 0; attempt < 2; attempt += 1) {
252
- try {
253
- const receipt = await buildVerifiedSubagentHandoff(host.state, host.blob, timeline.run);
254
- await recordSubagentHandoffReady(host.state, timeline.run.id, receipt);
255
- return host.replay(timeline.run.id);
256
- }
257
- catch (error) {
258
- lastError = error instanceof Error ? error.message : String(error);
259
- const retrying = attempt === 0;
260
- await host.state.appendEvent(timeline.run.id, "subagent.handoff_rejected", {
261
- error: lastError,
262
- attempt: attempt + 1,
263
- retrying
264
- });
265
- if (!retrying)
266
- break;
267
- try {
268
- await resumeAgentHarnessSubagent(host, timeline.run, subagentHandoffRetryMessage(lastError));
269
- timeline = await host.replay(timeline.run.id);
270
- }
271
- catch (retryError) {
272
- lastError = `Artifact handoff retry could not run: ${retryError instanceof Error ? retryError.message : String(retryError)}`;
273
- break;
274
- }
275
- }
276
- }
277
- const failed = await host.state.updateRun(timeline.run.id, {
278
- status: "failed",
279
- terminalReason: "subagent.handoff_failed",
280
- terminalError: lastError ?? "Artifact handoff failed."
281
- });
282
- await host.state.appendEvent(failed.id, "run.failed", {
283
- reason: "subagent.handoff_failed",
284
- error: failed.terminalError ?? "Artifact handoff failed."
285
- });
286
- return host.replay(failed.id);
287
295
  }
288
296
  export function subagentToolResult(timeline) {
289
297
  const completed = [...timeline.events].reverse().find((event) => event.type === "run.completed");
290
- const receipt = readySubagentHandoff(timeline.events);
298
+ const receipt = timeline.run.status === "completed" ? readySubagentHandoff(timeline.events) : undefined;
291
299
  return {
292
300
  runId: timeline.run.id,
293
301
  status: timeline.run.status,
@@ -301,19 +309,15 @@ export function subagentToolResult(timeline) {
301
309
  : {}),
302
310
  // A failed child keeps its workspace and transcript. Point the parent at
303
311
  // the recovery path so it never re-runs work that already completed.
304
- ...(timeline.run.status === "failed" ? { recovery: subagentRecoveryHint(timeline.run.id) } : {})
312
+ ...(timeline.run.status === "failed" ? { recovery: subagentRecoveryHint(timeline) } : {})
305
313
  };
306
314
  }
307
- /** Parent-facing instruction for continuing a child run instead of restarting it. */
308
- export function subagentRecoveryHint(childRunId) {
309
- return `This child's sandbox, workspace files, and transcript are intact. Continue it with delegate using resumeRunId "${childRunId}" and a short instruction naming what is still missing. Do not re-delegate the original task: that starts an empty workspace and rebuilds finished work.`;
310
- }
311
- function readyAfterLatestCompletion(events) {
312
- const latestCompletion = [...events].reverse().find((event) => event.type === "run.completed");
313
- const ready = [...events].reverse().find((event) => event.type === "subagent.handoff_ready");
314
- return ready && (!latestCompletion || ready.sequence > latestCompletion.sequence)
315
- ? readySubagentHandoff(events)
316
- : undefined;
315
+ /** Parent-facing instruction for continuing a failed child instead of restarting it. */
316
+ export function subagentRecoveryHint(timeline) {
317
+ if (!subagentResumable(timeline)) {
318
+ return `Child run "${timeline.run.id}" stopped before it persisted a resumable continuation, so it cannot be resumed. Delegate the task again if it is still needed.`;
319
+ }
320
+ return `This child's sandbox, workspace files, and transcript are intact. Continue it with delegate using resumeRunId "${timeline.run.id}" and a short instruction naming what is still missing. Do not re-delegate the original task: that starts an empty workspace and rebuilds finished work.`;
317
321
  }
318
322
  export async function readSubagentImpl(host, childRunId, cursor) {
319
323
  const timeline = await host.replay(childRunId);
@@ -324,6 +328,10 @@ export async function readSubagentImpl(host, childRunId, cursor) {
324
328
  const nextCursor = events.length > 0 ? String(events[events.length - 1]?.sequence ?? "") : cursor;
325
329
  return { run: timeline.run, events, ...(nextCursor ? { cursor: nextCursor } : {}) };
326
330
  }
331
+ /**
332
+ * Embedder follow-up to a child without a reporting parent: the child runs one
333
+ * more turn and its handoff is verified, but no parent run is notified.
334
+ */
327
335
  export async function sendSubagentFollowupImpl(host, childRunId, message) {
328
336
  const child = await host.state.getRun(childRunId);
329
337
  if (!child)
@@ -338,24 +346,4 @@ export async function sendSubagentFollowupImpl(host, childRunId, message) {
338
346
  await resumeAgentHarnessSubagent(host, child, message);
339
347
  return finalizeSubagentHandoffImpl(host, await host.replay(child.id));
340
348
  }
341
- /** Resume a Pi-backed subagent with a follow-up through its durable continuation. */
342
- async function resumeAgentHarnessSubagent(host, child, message) {
343
- const checkpoints = await host.listHydratedCheckpoints(child.id);
344
- let restored;
345
- for (let index = checkpoints.length - 1; index >= 0 && !restored; index -= 1) {
346
- const checkpoint = checkpoints[index];
347
- if (!checkpoint || checkpoint.name !== "harness.continuation")
348
- continue;
349
- restored = storedHarnessContinuation(checkpoint.data);
350
- }
351
- if (!restored) {
352
- throw new Error(`Subagent run ${child.id} has no persisted harness continuation to resume; start a new delegate turn instead.`);
353
- }
354
- const harness = await host.resolveAgentHarness(restored.runtime.modelSpec);
355
- if (restored.continuation.harness !== harness.id || restored.continuation.version !== harness.continuationVersion) {
356
- throw new Error(`Subagent run ${child.id} was produced by harness "${restored.continuation.harness}" v${restored.continuation.version}; cannot resume it with "${harness.id}" v${harness.continuationVersion}.`);
357
- }
358
- const running = await host.state.updateRun(child.id, { status: "running" });
359
- return host.resumeHarnessLoop(running, harness, restored, { message });
360
- }
361
349
  //# sourceMappingURL=subagent-execution.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"subagent-execution.js","sourceRoot":"","sources":["../src/subagent-execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subagent-execution.js","sourceRoot":"","sources":["../src/subagent-execution.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAW1D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACpF,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,6BAA6B,EAC7B,gCAAgC,EACjC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACnB,0BAA0B,EAC1B,iBAAiB,EAElB,MAAM,0BAA0B,CAAC;AAqFlC,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAA2B,EAC3B,WAAmB,EACnB,YAAoB,EACpB,IAAgB;IAEhB,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;IACjF,OAAO,sBAAsB,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAsB,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;AAEjH;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAA2B,EAC3B,WAAmB,EACnB,UAAkB,EAClB,oBAA4B,EAC5B,OAAe;IAEf,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACpD,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,WAAW,EAAE,CAAC,CAAC;IACrE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAClD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,UAAU,EAAE,CAAC,CAAC;IACrE,MAAM,YAAY,GAAG,OAAO,KAAK,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACjG,IAAI,CAAC,YAAY;QAAE,MAAM,IAAI,KAAK,CAAC,OAAO,UAAU,yBAAyB,CAAC,CAAC;IAC/E,IAAI,YAAY,KAAK,oBAAoB,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,gBAAgB,UAAU,eAAe,YAAY,SAAS,oBAAoB,GAAG,CAAC,CAAC;IACzG,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,gCAAgC,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CAAC,gBAAgB,UAAU,wCAAwC,CAAC,CAAC;IACtF,CAAC;IACD,uEAAuE;IACvE,8EAA8E;IAC9E,mBAAmB;IACnB,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,gBAAgB,UAAU,OAAO,KAAK,CAAC,MAAM,6CAA6C,CAAC,CAAC;IAC9G,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,YAAY,YAAY,2DAA2D,CAAC,CAAC;IACvG,CAAC;IACD,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,kBAAkB,EAAE;QAC5D,QAAQ,EAAE,YAAY;QACtB,UAAU;QACV,cAAc,EAAE,KAAK,CAAC,MAAM;KAC7B,CAAC,CAAC;IACH,MAAM,0BAA0B,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;AAClH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,IAA2B,EAC3B,WAAmB,EACnB,YAAoB,EACpB,SAAqB,EACrB,UAAoC,EAAE;IAEtC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACpD,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,WAAW,EAAE,CAAC,CAAC;IACrE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,KAAK,CAAC,YAAY,YAAY,2DAA2D,CAAC,CAAC;IACvG,CAAC;IACD,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC3D,IAAI,OAAO,CAAC,UAAU,IAAI,aAAa,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,CAAC;IACD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAChE,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,YAAY,EAAE,CAAC,CAAC;IACtE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,SAAS,CAAC;IACrC,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU;QACnC,CAAC,CAAC;YACE,cAAc,EAAE,OAAO,MAAM,CAAC,KAAK,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;YACzG,OAAO,EAAE,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;YAClF,OAAO,EAAE,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;SACrF;QACH,CAAC,CAAC,SAAS,CAAC;IACd,4EAA4E;IAC5E,gEAAgE;IAChE,uEAAuE;IACvE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QACvC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa;QAC1C,MAAM,EAAE,SAAS;QACjB,KAAK,EAAE;YACL,WAAW;YACX,QAAQ,EAAE,YAAY;YACtB,YAAY,EAAE,QAAQ,CAAC,IAAI;YAC3B,IAAI;YACJ,OAAO,EAAE,UAAU;YACnB,aAAa,EAAE,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;YACrF,MAAM,EAAE,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;YAC5E,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI;YACzC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI;YACnE,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;YACpD,QAAQ,EAAE,OAAO,MAAM,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;YAClF,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI;YACvC,iBAAiB,EAAE,MAAM,CAAC,KAAK,CAAC,WAAW,IAAI,IAAI;YACnD,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE;YACrC,kBAAkB,EAAE,WAAW;YAC/B,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrC,wEAAwE;YACxE,wEAAwE;YACxE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxE;KACF,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,iBAAiB,EAAE;QAC3D,QAAQ,EAAE,YAAY;QACtB,UAAU,EAAE,KAAK,CAAC,EAAE;QACpB,IAAI;QACJ,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;QAC1E,UAAU,EAAE,OAAO,CAAC,UAAU,KAAK,IAAI;KACxC,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,cAAc,EAAE;QACrD,WAAW;QACX,QAAQ,EAAE,YAAY;QACtB,YAAY,EAAE,IAAI;QAClB,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,IAAI;QACZ,UAAU,EAAE,OAAO,CAAC,UAAU,KAAK,IAAI;KACxC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,MAAiB,EAAE,KAAc;IAC1D,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC;IACxC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;QAC9F,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,MAAM,CAAU,CAAC,CAAC,CAAC;IACnG,MAAM,QAAQ,GAAiB,EAAE,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,SAAS,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YACrC,MAAM,IAAI,KAAK,CACb,yBAAyB,IAAI,iCAC3B,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,8BAChE,EAAE,CACH,CAAC;QACJ,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAc;IACvC,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC9G,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAc;IACtC,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC;QAC5C,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC;QACrF,CAAC,CAAC,EAAE,CAAC;AACT,CAAC;AAED,2GAA2G;AAC3G,KAAK,UAAU,sBAAsB,CAAC,KAAmB,EAAE,KAAgB,EAAE,WAAmB;IAC9F,MAAM,WAAW,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC7C,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QACnC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QACjC,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,SAAS,KAAK,QAAQ;YAAE,SAAS;QACzG,MAAM,KAAK,CAAC,eAAe,CAAC;YAC1B,KAAK,EAAE,KAAK,CAAC,EAAE;YACf,IAAI,EAAE,sBAAsB,CAAC,UAAU,CAAC;YACxC,IAAI,EAAE,MAAM;YACZ,OAAO;YACP,MAAM;YACN,SAAS;YACT,QAAQ,EAAE;gBACR,MAAM,EAAE,mBAAmB;gBAC3B,WAAW,EAAE,WAAW;gBACxB,QAAQ,EAAE,OAAO,UAAU,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;gBAC9E,WAAW,EAAE,OAAO,UAAU,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,0BAA0B;aAC9G;SACF,CAAC,CAAC;IACL,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAA2B,EAC3B,UAAkB;IAElB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACxD,IAAI,CAAC,WAAW;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,UAAU,EAAE,CAAC,CAAC;IAC3E,IAAI,WAAW,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACrE,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,KAAK,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;IAClH,MAAM,YAAY,GAAG,OAAO,WAAW,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;IAC9G,MAAM,aAAa,GAAG,SAAS,EAAE,CAAC;IAClC,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9E,IAAI,CAAC;QACH,IAAI,CAAC,WAAW,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,WAAW,IAAI,QAAQ,EAAE,CAAC,CAAC;QACjG,MAAM,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IACzD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,0EAA0E;QAC1E,4EAA4E;QAC5E,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,OAAO,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACpD,MAAM,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,UAAU,EAAE;gBAC/C,MAAM,EAAE,0BAA0B;gBAClC,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IAC7E,MAAM,IAAI,CAAC,QAAQ,CAAC,+BAA+B,EAAE,aAAa,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE;QACjH,YAAY;QACZ,UAAU;QACV,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM;QAC3B,MAAM,EAAE,IAAI;KACb,CAAC,EAAE;QACF,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;KAC1D,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,sEAAsE;AACtE,KAAK,UAAU,gBAAgB,CAAC,IAA2B,EAAE,WAAsB,EAAE,WAAmB;IACtG,IAAI,KAAK,GAAG,WAAW,CAAC;IACxB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;IAC9B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,OAAO,KAAK,CAAC,EAAE,qCAAqC,CAAC,CAAC;IAC/F,MAAM,YAAY,GAAG,OAAO,KAAK,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACjG,MAAM,WAAW,GAAG,OAAO,KAAK,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;IACxG,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpF,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,YAAY;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,YAAY,IAAI,WAAW,EAAE,CAAC,CAAC;IACvH,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IACpE,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,cAAc,GAAG,KAAK,CAAC,EAAE,CAAC;IAChC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IACzG,MAAM,eAAe,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACnE,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC1D,2FAA2F;IAC3F,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO;IACrE,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,EAAE;QACrD,KAAK,EAAE;YACL,GAAG,eAAe,CAAC,KAAK;YACxB,KAAK,EAAE,eAAe,CAAC,WAAW,CAAC,KAAK;YACxC,cAAc;YACd,YAAY,EAAE,eAAe,CAAC,WAAW,CAAC,OAAO,IAAI,IAAI;YACzD,gBAAgB,EAAE,eAAe,CAAC,WAAW,CAAC,WAAW;YACzD,cAAc,EAAE,eAAe,CAAC,WAAW,CAAC,SAAS;SACtD;KACF,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IACjF,MAAM,WAAW,GAAG,KAAK,EAAE,YAAuC,EAA0B,EAAE;QAC5F,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC;YAC1C,OAAO;YACP,OAAO,EAAE,UAAU;YACnB,aAAa,EAAE,EAAE;YACjB,WAAW;YACX,YAAY;YACZ,GAAG,EAAE,KAAK;SACX,CAAC,CAAC;QACH,OAAO;YACL,GAAG,KAAK;YACR,YAAY,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,YAAY,CAAC,YAAY,EAAE,6BAA6B,CAAC;iBACpG,MAAM,CAAC,OAAO,CAAC;iBACf,IAAI,CAAC,MAAM,CAAC;SAChB,CAAC;IACJ,CAAC,CAAC;IACF,IAAI,MAAM,GAAG,MAAM,WAAW,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;IAC5D,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAC5C,GAAG,EAAE,CAAC,KAAK,EACX,CAAC,OAAO,EAAE,EAAE;QACV,KAAK,GAAG,OAAO,CAAC;IAClB,CAAC,EACD,GAAG,EAAE,CAAC,MAAM,CACb,CAAC;IACF,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACnD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAClF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC;YACxC,GAAG,EAAE,KAAK;YACV,MAAM;YACN,aAAa;YACb,OAAO;YACP,OAAO,EAAE,UAAU;YACnB,cAAc;YACd,UAAU,EAAE,cAAc;YAC1B,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE;gBACpC,MAAM,GAAG,MAAM,WAAW,CAAC,YAAY,CAAC,CAAC;gBACzC,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,OAAO;YACP,aAAa,EAAE,QAAQ,CAAC,aAAa;SACtC,CAAC,CAAC;QACH,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC;QACpB,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAI,CAAC,OAAO,CAAC,eAAe,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAC3I,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;YAAS,CAAC;QACT,SAAS,CAAC,IAAI,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAAqB;IACtD,MAAM,SAAS,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;IACjG,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxG,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE;QACtB,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM;QAC3B,GAAG,CAAC,SAAS,IAAI,OAAO,SAAS,CAAC,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1G,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,KAAK,QAAQ,IAAI,QAAQ,CAAC,GAAG,CAAC,cAAc;YACjE,CAAC,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,GAAG,CAAC,cAAc,EAAE;YACjD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,KAAK,QAAQ,IAAI,QAAQ,CAAC,GAAG,CAAC,aAAa;YAChE,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,aAAa,EAAE;YACvC,CAAC,CAAC,EAAE,CAAC;QACP,yEAAyE;QACzE,qEAAqE;QACrE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1F,CAAC;AACJ,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,oBAAoB,CAAC,QAAqB;IACxD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjC,OAAO,cAAc,QAAQ,CAAC,GAAG,CAAC,EAAE,iIAAiI,CAAC;IACxK,CAAC;IACD,OAAO,kHAAkH,QAAQ,CAAC,GAAG,CAAC,EAAE,0JAA0J,CAAC;AACrS,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAA2B,EAC3B,UAAkB,EAClB,MAAe;IAEf,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC/C,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC3C,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,GAAG,aAAa,CAAC;QACnE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;IACpB,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAClG,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACtF,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,IAA2B,EAC3B,UAAkB,EAClB,OAAe;IAEf,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAClD,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,UAAU,EAAE,CAAC,CAAC;IACrE,MAAM,YAAY,GAAG,OAAO,KAAK,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACjG,IAAI,CAAC,YAAY;QAAE,MAAM,IAAI,KAAK,CAAC,OAAO,UAAU,yBAAyB,CAAC,CAAC;IAC/E,MAAM,YAAY,GAAG,OAAO,KAAK,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;IACzG,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,uBAAuB,YAAY,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,MAAM,0BAA0B,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACvD,OAAO,2BAA2B,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;AACxE,CAAC"}
@@ -0,0 +1,50 @@
1
+ import type { AgentHarness } from "@assemblyline-agents/core";
2
+ import { type RestoredHarnessSession } from "./harness-continuation.js";
3
+ import type { BlobAdapter, RunAgentResult, RunTimeline } from "./runtime-types.js";
4
+ import type { CheckpointRecord, RunRecord, StateAdapter } from "./state.js";
5
+ /**
6
+ * The one way a child run ends. Every path that terminalizes a subagent run
7
+ * (foreground execution, an inline resume, background completion, orphan
8
+ * recovery, cancellation) calls {@link settleSubagentRunImpl}, which verifies
9
+ * the artifact handoff, reports the outcome on the parent run, and queues the
10
+ * root completion turn for background children. Settlement is idempotent per
11
+ * terminal transition, so racing callers (an executor and the recovery sweep,
12
+ * a cancel and the executor observing it) report to the parent exactly once.
13
+ */
14
+ export interface SubagentSettlementHost {
15
+ state: StateAdapter;
16
+ blob: BlobAdapter;
17
+ replay(runId: string): Promise<RunTimeline>;
18
+ listHydratedCheckpoints(runId: string): Promise<CheckpointRecord[]>;
19
+ resolveAgentHarness(modelSpec?: string): Promise<AgentHarness>;
20
+ resumeHarnessLoop(run: RunRecord, harness: AgentHarness, restored: RestoredHarnessSession, resume: {
21
+ toolResult?: {
22
+ toolName: string;
23
+ output: unknown;
24
+ };
25
+ message?: string;
26
+ }): Promise<RunAgentResult>;
27
+ queueBackgroundSubagentCompletion(timeline: RunTimeline): Promise<void>;
28
+ }
29
+ /** Who receives the child's outcome and how. */
30
+ export interface SubagentReport {
31
+ /** Run that gets the `subagent.*` event and, inline, the adopted handoff. */
32
+ parentRunId: string;
33
+ /** Queue a root completion turn instead of adopting the handoff inline. */
34
+ background: boolean;
35
+ resumed?: boolean;
36
+ }
37
+ export declare function isTerminalRunStatus(status: RunRecord["status"]): boolean;
38
+ /** Resume needs only the continuation plumbing; handoff verification adds blob access and replay. */
39
+ export type SubagentResumeHost = Pick<SubagentSettlementHost, "state" | "listHydratedCheckpoints" | "resolveAgentHarness" | "resumeHarnessLoop">;
40
+ export type SubagentHandoffHost = SubagentResumeHost & Pick<SubagentSettlementHost, "blob" | "replay">;
41
+ export declare function isBackgroundSubagentRun(run: RunRecord): boolean;
42
+ /** Default report: the creating parent, background when the child has a background origin. */
43
+ export declare function subagentReportFor(child: RunRecord): SubagentReport | undefined;
44
+ export declare function settleSubagentRunImpl(host: SubagentSettlementHost, initialTimeline: RunTimeline, report?: SubagentReport | undefined): Promise<RunTimeline>;
45
+ export declare function finalizeSubagentHandoffImpl(host: SubagentHandoffHost, initialTimeline: RunTimeline): Promise<RunTimeline>;
46
+ /** Resume a Pi-backed subagent with a follow-up through its durable continuation. */
47
+ export declare function resumeAgentHarnessSubagent(host: SubagentResumeHost, child: RunRecord, message: string): Promise<RunAgentResult>;
48
+ /** True when the child persisted a continuation the parent can resume with `resumeRunId`. */
49
+ export declare function subagentResumable(timeline: RunTimeline): boolean;
50
+ //# sourceMappingURL=subagent-settlement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subagent-settlement.d.ts","sourceRoot":"","sources":["../src/subagent-settlement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAA6B,KAAK,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAGnG,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,KAAK,EAAE,gBAAgB,EAAY,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAWtF;;;;;;;;GAQG;AAEH,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,YAAY,CAAC;IACpB,IAAI,EAAE,WAAW,CAAC;IAClB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC5C,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACpE,mBAAmB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAC/D,iBAAiB,CACf,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,sBAAsB,EAChC,MAAM,EAAE;QAAE,UAAU,CAAC,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,OAAO,CAAA;SAAE,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAC/E,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3B,iCAAiC,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzE;AAED,gDAAgD;AAChD,MAAM,WAAW,cAAc;IAC7B,6EAA6E;IAC7E,WAAW,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAKD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,CAAC,QAAQ,CAAC,GAAG,OAAO,CAExE;AAED,qGAAqG;AACrG,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACnC,sBAAsB,EACtB,OAAO,GAAG,yBAAyB,GAAG,qBAAqB,GAAG,mBAAmB,CAClF,CAAC;AACF,MAAM,MAAM,mBAAmB,GAAG,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC;AAEvG,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAG/D;AAED,8FAA8F;AAC9F,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,cAAc,GAAG,SAAS,CAG9E;AAED,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,sBAAsB,EAC5B,eAAe,EAAE,WAAW,EAC5B,MAAM,GAAE,cAAc,GAAG,SAAkD,GAC1E,OAAO,CAAC,WAAW,CAAC,CA8BtB;AAWD,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,mBAAmB,EACzB,eAAe,EAAE,WAAW,GAC3B,OAAO,CAAC,WAAW,CAAC,CAmCtB;AAUD,qFAAqF;AACrF,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,kBAAkB,EACxB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,cAAc,CAAC,CAqBzB;AAED,6FAA6F;AAC7F,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAEhE"}