agentic-engineering-harness 0.6.13 → 0.6.14

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 (61) hide show
  1. package/dist/agents/outputContracts.d.ts +44 -1
  2. package/dist/agents/outputContracts.js +12 -2
  3. package/dist/agents/outputContracts.js.map +1 -1
  4. package/dist/agents/reviewLifecycle.js +54 -14
  5. package/dist/agents/reviewLifecycle.js.map +1 -1
  6. package/dist/agents/waveExecutor.d.ts +2 -13
  7. package/dist/audit/run.d.ts +7 -0
  8. package/dist/audit/run.js +198 -32
  9. package/dist/audit/run.js.map +1 -1
  10. package/dist/core/run.js +103 -28
  11. package/dist/core/run.js.map +1 -1
  12. package/dist/main.js +95 -29
  13. package/dist/main.js.map +1 -1
  14. package/dist/operations/artifacts.d.ts +13 -0
  15. package/dist/operations/artifacts.js +45 -0
  16. package/dist/operations/artifacts.js.map +1 -0
  17. package/dist/operations/change.d.ts +11 -0
  18. package/dist/operations/change.js +144 -0
  19. package/dist/operations/change.js.map +1 -0
  20. package/dist/operations/completion.d.ts +4 -1
  21. package/dist/operations/completion.js +69 -89
  22. package/dist/operations/completion.js.map +1 -1
  23. package/dist/operations/controller.d.ts +8 -5
  24. package/dist/operations/controller.js +270 -131
  25. package/dist/operations/controller.js.map +1 -1
  26. package/dist/operations/leadBinding.d.ts +2 -0
  27. package/dist/operations/leadBinding.js +22 -0
  28. package/dist/operations/leadBinding.js.map +1 -0
  29. package/dist/operations/liveness.d.ts +35 -0
  30. package/dist/operations/liveness.js +308 -0
  31. package/dist/operations/liveness.js.map +1 -0
  32. package/dist/operations/mcp.js +72 -55
  33. package/dist/operations/mcp.js.map +1 -1
  34. package/dist/operations/monitorProcess.d.ts +8 -0
  35. package/dist/operations/monitorProcess.js +33 -0
  36. package/dist/operations/monitorProcess.js.map +1 -0
  37. package/dist/operations/portfolio.d.ts +35 -0
  38. package/dist/operations/portfolio.js +158 -0
  39. package/dist/operations/portfolio.js.map +1 -0
  40. package/dist/operations/state.d.ts +174 -17
  41. package/dist/operations/state.js +178 -163
  42. package/dist/operations/state.js.map +1 -1
  43. package/dist/operations/supervisor.d.ts +38 -0
  44. package/dist/operations/supervisor.js +195 -0
  45. package/dist/operations/supervisor.js.map +1 -0
  46. package/dist/paseo/launchSpec.d.ts +4 -0
  47. package/dist/paseo/launchSpec.js +31 -37
  48. package/dist/paseo/launchSpec.js.map +1 -1
  49. package/dist/paseo/sdk.d.ts +5 -0
  50. package/dist/paseo/sdk.js +35 -87
  51. package/dist/paseo/sdk.js.map +1 -1
  52. package/dist/paseo/start.d.ts +1 -1
  53. package/dist/paseo/start.js +38 -87
  54. package/dist/paseo/start.js.map +1 -1
  55. package/dist/workers/agentPrompt.d.ts +2 -0
  56. package/dist/workers/agentPrompt.js +135 -190
  57. package/dist/workers/agentPrompt.js.map +1 -1
  58. package/docs/OPERATION_SUPERVISION.md +198 -0
  59. package/package.json +1 -1
  60. package/presets/agents/orchestration.jsonc +14 -4
  61. package/skills/engineering-workflow/SKILL.md +149 -104
@@ -5,38 +5,40 @@ import { outputJsonSchema } from "../agents/outputContracts.js";
5
5
  import { compileOpenCodeRuntimeProjection } from "../agents/permissions.js";
6
6
  import { loadFrozenSkillContext } from "../core/controlPlane.js";
7
7
  import { buildManagedAgentEnvironment, managedBoundedAgentPromptContext } from "../operations/executionContext.js";
8
- import { currentOperationContext } from "../operations/state.js";
8
+ import { persistOperationAgentArtifact } from "../operations/artifacts.js";
9
+ import { currentOperationContext, loadOperation, registerOperationAgent, updateOperationParticipant } from "../operations/state.js";
9
10
  import { compilePaseoAgentLaunchSpec } from "../paseo/launchSpec.js";
10
11
  import { continueManagedPaseoAgent, launchManagedPaseoAgent, materializeManagedPaseoAgent } from "../paseo/runtime.js";
11
12
  import { PaseoSdkUnavailableError } from "../paseo/sdk.js";
12
13
  import { allowedSandboxEnvironment, hardenedPodmanArgs, sandboxImage } from "../security/sandbox.js";
13
14
  import { runProcess } from "../utils/process.js";
14
15
  export async function executeAgentPrompt(root, config, contract, selection, prompt, options = {}) {
15
- const transport = selection.transport === "inherit"
16
- ? (config.orchestration?.provider ?? "none")
17
- : selection.transport;
16
+ const transport = selection.transport === "inherit" ? (config.orchestration?.provider ?? "none") : selection.transport;
18
17
  const effectivePrompt = await buildEffectivePrompt(root, config, contract, selection, prompt, options);
19
- if (transport === "paseo") {
20
- return executeViaPaseo(root, config, contract, selection, effectivePrompt, options);
18
+ if (options.resumeSessionId && !options.supervisorAgent) {
19
+ await markOperationSessionRunning(root, options.resumeSessionId).catch(() => undefined);
21
20
  }
22
- if (transport === "direct") {
23
- return executeDirect(root, config, selection, effectivePrompt, options);
24
- }
25
- if (transport === "podman") {
26
- return executePodman(root, config, contract, selection, effectivePrompt, options);
27
- }
28
- throw new Error(`Unsupported agent prompt transport: ${transport}`);
21
+ let result;
22
+ if (transport === "paseo")
23
+ result = await executeViaPaseo(root, config, contract, selection, effectivePrompt, options);
24
+ else if (transport === "direct")
25
+ result = await executeDirect(root, config, selection, effectivePrompt, options);
26
+ else if (transport === "podman")
27
+ result = await executePodman(root, config, contract, selection, effectivePrompt, options);
28
+ else
29
+ throw new Error(`Unsupported agent prompt transport: ${transport}`);
30
+ return finalizeOperationSession(root, selection, result, options);
29
31
  }
30
32
  export async function materializeAgentPrompt(root, config, contract, selection, options = {}) {
31
- const transport = selection.transport === "inherit"
32
- ? (config.orchestration?.provider ?? "none")
33
- : selection.transport;
33
+ const transport = selection.transport === "inherit" ? (config.orchestration?.provider ?? "none") : selection.transport;
34
34
  if (transport !== "paseo" || options.resumeSessionId)
35
35
  return undefined;
36
36
  const spec = await compilePaseoAgentLaunchSpec(root, config, contract, {
37
37
  selection,
38
38
  phase: options.phase ?? "queued",
39
- kind: options.operationKind
39
+ kind: options.operationKind,
40
+ parentAgentId: options.parentAgentId,
41
+ supervisorAgent: options.supervisorAgent
40
42
  });
41
43
  const startedAt = new Date().toISOString();
42
44
  try {
@@ -50,11 +52,12 @@ export async function materializeAgentPrompt(root, config, contract, selection,
50
52
  thinkingOptionId: spec.thinkingOptionId,
51
53
  env: spec.env,
52
54
  workspaceId: spec.workspaceId,
55
+ parentAgentId: spec.parentAgentId,
53
56
  labels: spec.labels,
54
57
  waitForFinish: false,
55
58
  timeoutSeconds: spec.timeoutSeconds
56
59
  });
57
- return session(selection, materialized.exitCode, materialized.stdout, materialized.stderr, {
60
+ const result = session(selection, materialized.exitCode, materialized.stdout, materialized.stderr, {
58
61
  id: materialized.id,
59
62
  nativeAgent: spec.nativeAgentId ?? selection.nativeAgent,
60
63
  transport: `paseo-${materialized.transport}`,
@@ -66,23 +69,36 @@ export async function materializeAgentPrompt(root, config, contract, selection,
66
69
  status: materialized.status ?? "idle",
67
70
  startedAt
68
71
  });
72
+ if (result.id && !options.supervisorAgent) {
73
+ await updateOperationParticipant(root, spec.operationId, result.id, {
74
+ logicalAgent: selection.logicalAgent,
75
+ role: selection.role,
76
+ stage: spec.phase,
77
+ phase: spec.phase,
78
+ parentSupervisorGeneration: spec.supervisorGeneration,
79
+ parentAgentId: spec.parentAgentId,
80
+ workspaceId: result.workspaceId,
81
+ transport: result.transport,
82
+ status: "IDLE"
83
+ }).catch(() => undefined);
84
+ }
85
+ return result;
69
86
  }
70
87
  catch (error) {
71
- if (error instanceof PaseoSdkUnavailableError ||
72
- (error instanceof Error && error.name === "PaseoSdkUnavailableError")) {
88
+ if (error instanceof PaseoSdkUnavailableError || (error instanceof Error && error.name === "PaseoSdkUnavailableError"))
73
89
  return undefined;
74
- }
75
90
  throw error;
76
91
  }
77
92
  }
78
93
  export async function dispatchMaterializedAgentPrompt(root, config, contract, selection, materialized, prompt, options = {}) {
79
- if (!materialized?.id) {
94
+ if (!materialized?.id)
80
95
  return executeAgentPrompt(root, config, contract, selection, prompt, options);
81
- }
82
96
  const effectivePrompt = await buildEffectivePrompt(root, config, contract, selection, prompt, options);
97
+ if (!options.supervisorAgent)
98
+ await markOperationSessionRunning(root, materialized.id).catch(() => undefined);
83
99
  const timeout = config.orchestration?.worker?.timeoutSeconds ?? 1800;
84
100
  const continued = await continueManagedPaseoAgent(root, materialized.id, effectivePrompt, timeout);
85
- return {
101
+ const result = {
86
102
  ...materialized,
87
103
  exitCode: continued.exitCode,
88
104
  stdout: continued.stdout || materialized.stdout,
@@ -93,21 +109,20 @@ export async function dispatchMaterializedAgentPrompt(root, config, contract, se
93
109
  phase: options.phase ?? materialized.phase,
94
110
  finishedAt: new Date().toISOString()
95
111
  };
112
+ return finalizeOperationSession(root, selection, result, options);
96
113
  }
97
114
  export async function resumeAgentPrompt(root, config, contract, selection, previous, prompt, options = {}) {
98
- if (!previous.id) {
115
+ if (!previous.id)
99
116
  return executeAgentPrompt(root, config, contract, selection, prompt, options);
100
- }
101
- return executeAgentPrompt(root, config, contract, selection, prompt, {
102
- ...options,
103
- resumeSessionId: previous.id
104
- });
117
+ return executeAgentPrompt(root, config, contract, selection, prompt, { ...options, resumeSessionId: previous.id });
105
118
  }
106
119
  async function executeViaPaseo(root, config, contract, selection, prompt, options) {
107
120
  const spec = await compilePaseoAgentLaunchSpec(root, config, contract, {
108
121
  selection,
109
122
  phase: options.phase ?? "work",
110
- kind: options.operationKind
123
+ kind: options.operationKind,
124
+ parentAgentId: options.parentAgentId,
125
+ supervisorAgent: options.supervisorAgent
111
126
  });
112
127
  const startedAt = new Date().toISOString();
113
128
  if (options.resumeSessionId) {
@@ -126,9 +141,7 @@ async function executeViaPaseo(root, config, contract, selection, prompt, option
126
141
  finishedAt: new Date().toISOString()
127
142
  });
128
143
  }
129
- const schema = options.outputContract
130
- ? outputJsonSchema(options.outputContract)
131
- : undefined;
144
+ const schema = options.outputContract ? outputJsonSchema(options.outputContract) : undefined;
132
145
  const launched = await launchManagedPaseoAgent(root, {
133
146
  cwd: spec.cwd,
134
147
  title: spec.title,
@@ -139,6 +152,7 @@ async function executeViaPaseo(root, config, contract, selection, prompt, option
139
152
  thinkingOptionId: spec.thinkingOptionId,
140
153
  env: spec.env,
141
154
  workspaceId: spec.workspaceId,
155
+ parentAgentId: spec.parentAgentId,
142
156
  prompt,
143
157
  outputSchema: schema,
144
158
  labels: spec.labels,
@@ -163,87 +177,43 @@ async function executeDirect(root, config, selection, prompt, options) {
163
177
  const executionEnv = boundedExecutionEnvironment(selection, options);
164
178
  if (selection.runtimeAdapter === "opencode") {
165
179
  const projection = compileOpenCodeRuntimeProjection(selection, config);
166
- const args = [
167
- "opencode",
168
- "run",
169
- "--auto",
170
- "--format",
171
- "json",
172
- "--model",
173
- selection.modelId
174
- ];
180
+ const args = ["opencode", "run", "--auto", "--format", "json", "--model", selection.modelId];
175
181
  if (options.resumeSessionId)
176
182
  args.push("--session", options.resumeSessionId);
177
183
  if (selection.variant)
178
184
  args.push("--variant", selection.variant);
179
- args.push("--agent", projection.binding.agentId);
180
- args.push(...selection.args, prompt);
181
- const result = await runProcess(args.map(quote).join(" "), {
182
- cwd: root,
183
- timeoutMs: (config.orchestration?.worker?.timeoutSeconds ?? 1800) * 1000,
184
- env: { ...projection.env, ...executionEnv }
185
- });
186
- return session(selection, result.exitCode, result.stdout, result.stderr, {
187
- id: options.resumeSessionId ?? extractSessionId(result.stdout),
188
- nativeAgent: projection.binding.agentId,
189
- ...directMetadata(options, startedAt)
190
- });
185
+ args.push("--agent", projection.binding.agentId, ...selection.args, prompt);
186
+ const result = await runProcess(args.map(quote).join(" "), { cwd: root, timeoutMs: (config.orchestration?.worker?.timeoutSeconds ?? 1800) * 1000, env: { ...projection.env, ...executionEnv } });
187
+ return session(selection, result.exitCode, result.stdout, result.stderr, { id: options.resumeSessionId ?? extractSessionId(result.stdout), nativeAgent: projection.binding.agentId, ...directMetadata(options, startedAt) });
191
188
  }
192
- if (selection.runtimeAdapter === "codex") {
189
+ if (selection.runtimeAdapter === "codex")
193
190
  return executeCodex(root, config, selection, prompt, options, startedAt, executionEnv);
194
- }
195
191
  throw new Error(`No direct runtime adapter for ${selection.runtimeAdapter}`);
196
192
  }
197
193
  async function executeCodex(root, config, selection, prompt, options, startedAt, executionEnv) {
198
- const schema = options.outputContract
199
- ? outputJsonSchema(options.outputContract)
200
- : undefined;
201
- const temp = schema
202
- ? await fs.mkdtemp(path.join(os.tmpdir(), "aeh-codex-schema-"))
203
- : undefined;
194
+ const schema = options.outputContract ? outputJsonSchema(options.outputContract) : undefined;
195
+ const temp = schema ? await fs.mkdtemp(path.join(os.tmpdir(), "aeh-codex-schema-")) : undefined;
204
196
  try {
205
197
  const schemaFile = temp ? path.join(temp, "schema.json") : undefined;
206
198
  const outputFile = temp ? path.join(temp, "output.json") : undefined;
207
- if (schemaFile) {
199
+ if (schemaFile)
208
200
  await fs.writeFile(schemaFile, `${JSON.stringify(schema, null, 2)}\n`);
209
- }
210
201
  const args = options.resumeSessionId
211
- ? [
212
- "codex",
213
- "exec",
214
- "resume",
215
- options.resumeSessionId,
216
- "--json",
217
- "--model",
218
- selection.modelName
219
- ]
202
+ ? ["codex", "exec", "resume", options.resumeSessionId, "--json", "--model", selection.modelName]
220
203
  : ["codex", "exec", "--json", "--model", selection.modelName];
221
- if (schemaFile && outputFile) {
204
+ if (schemaFile && outputFile)
222
205
  args.push("--output-schema", schemaFile, "-o", outputFile);
223
- }
224
206
  args.push(...selection.args, prompt);
225
- const result = await runProcess(args.map(quote).join(" "), {
226
- cwd: root,
227
- timeoutMs: (config.orchestration?.worker?.timeoutSeconds ?? 1800) * 1000,
228
- env: executionEnv
229
- });
207
+ const result = await runProcess(args.map(quote).join(" "), { cwd: root, timeoutMs: (config.orchestration?.worker?.timeoutSeconds ?? 1800) * 1000, env: executionEnv });
230
208
  let stdout = result.stdout;
231
209
  if (outputFile) {
232
210
  try {
233
211
  stdout = await fs.readFile(outputFile, "utf8");
234
212
  }
235
- catch {
236
- // event stream remains diagnostic fallback
237
- }
213
+ catch { /* event stream fallback */ }
238
214
  }
239
215
  const id = options.resumeSessionId ?? extractSessionId(result.stdout);
240
- return session(selection, result.exitCode, stdout, [
241
- result.stderr,
242
- outputFile ? `CODEX_EVENT_STREAM:\n${result.stdout}` : ""
243
- ].filter(Boolean).join("\n"), {
244
- id,
245
- ...directMetadata(options, startedAt)
246
- });
216
+ return session(selection, result.exitCode, stdout, [result.stderr, outputFile ? `CODEX_EVENT_STREAM:\n${result.stdout}` : ""].filter(Boolean).join("\n"), { id, ...directMetadata(options, startedAt) });
247
217
  }
248
218
  finally {
249
219
  if (temp)
@@ -251,56 +221,31 @@ async function executeCodex(root, config, selection, prompt, options, startedAt,
251
221
  }
252
222
  }
253
223
  async function executePodman(root, config, contract, selection, prompt, options) {
254
- if (selection.runtimeAdapter !== "opencode") {
224
+ if (selection.runtimeAdapter !== "opencode")
255
225
  throw new Error(`Podman prompt execution currently supports OpenCode; selected ${selection.runtimeAdapter}.`);
256
- }
257
- if (options.resumeSessionId) {
226
+ if (options.resumeSessionId)
258
227
  throw new Error("Ephemeral hardened Podman sessions cannot resume a host agent session without an explicit persisted session volume.");
259
- }
260
228
  const startedAt = new Date().toISOString();
261
229
  const writable = selection.permissions.write === "allow";
262
- const args = [
263
- "podman",
264
- "run",
265
- ...hardenedPodmanArgs(config, selection, writable)
266
- ];
230
+ const args = ["podman", "run", ...hardenedPodmanArgs(config, selection, writable)];
267
231
  args.push("-v", `${root}:/workspace:${writable ? "rw" : "ro"}`);
268
- if (writable) {
269
- for (const relative of sealedArtifacts(config, contract)) {
232
+ if (writable)
233
+ for (const relative of sealedArtifacts(config, contract))
270
234
  args.push("-v", `${path.resolve(root, relative)}:/workspace/${relative}:ro`);
271
- }
272
- }
273
235
  const projection = compileOpenCodeRuntimeProjection(selection, config);
274
236
  args.push("-e", `OPENCODE_CONFIG_CONTENT=${projection.env.OPENCODE_CONFIG_CONTENT}`);
275
- for (const [name, value] of Object.entries(boundedExecutionEnvironment(selection, options))) {
237
+ for (const [name, value] of Object.entries(boundedExecutionEnvironment(selection, options)))
276
238
  args.push("-e", `${name}=${value}`);
277
- }
278
- for (const [name, value] of Object.entries(allowedSandboxEnvironment(config))) {
239
+ for (const [name, value] of Object.entries(allowedSandboxEnvironment(config)))
279
240
  args.push("-e", `${name}=${value}`);
280
- }
281
241
  args.push(sandboxImage(config), "sh", "-lc");
282
- const runtimeArgs = [
283
- "opencode",
284
- "run",
285
- "--auto",
286
- "--format",
287
- "json",
288
- "--model",
289
- selection.modelId
290
- ];
242
+ const runtimeArgs = ["opencode", "run", "--auto", "--format", "json", "--model", selection.modelId];
291
243
  if (selection.variant)
292
244
  runtimeArgs.push("--variant", selection.variant);
293
- runtimeArgs.push("--agent", projection.binding.agentId);
294
- runtimeArgs.push(...selection.args, prompt);
245
+ runtimeArgs.push("--agent", projection.binding.agentId, ...selection.args, prompt);
295
246
  args.push(`cd /workspace && ${runtimeArgs.map(quote).join(" ")}`);
296
- const result = await runProcess(args.map(quote).join(" "), {
297
- cwd: root,
298
- timeoutMs: (config.orchestration?.worker?.timeoutSeconds ?? 1800) * 1000
299
- });
300
- return session(selection, result.exitCode, result.stdout, result.stderr, {
301
- nativeAgent: projection.binding.agentId,
302
- ...directMetadata(options, startedAt, "podman")
303
- });
247
+ const result = await runProcess(args.map(quote).join(" "), { cwd: root, timeoutMs: (config.orchestration?.worker?.timeoutSeconds ?? 1800) * 1000 });
248
+ return session(selection, result.exitCode, result.stdout, result.stderr, { nativeAgent: projection.binding.agentId, ...directMetadata(options, startedAt, "podman") });
304
249
  }
305
250
  async function buildEffectivePrompt(root, config, contract, selection, prompt, options) {
306
251
  const frozenSkills = await loadFrozenSkillContext(root, config, contract.task.id, selection.skills ?? []);
@@ -314,68 +259,79 @@ async function buildEffectivePrompt(root, config, contract, selection, prompt, o
314
259
  interactiveLead: false,
315
260
  orchestrationAllowed: false
316
261
  };
317
- return withAgentCharter(selection, prompt, frozenSkills, managedBoundedAgentPromptContext(identity));
262
+ const hierarchy = [
263
+ options.supervisorAgent ? "You are the Operation Supervisor for this durable AEH operation. Coordinate semantically, but do not replace deterministic controller authority." : undefined,
264
+ options.parentAgentId ? `Paseo parent agent: ${options.parentAgentId}. Parent notifications are advisory; OperationRecord is authoritative.` : undefined
265
+ ].filter(Boolean).join("\n");
266
+ return withAgentCharter(selection, prompt, frozenSkills, [managedBoundedAgentPromptContext(identity), hierarchy].filter(Boolean).join("\n"));
318
267
  }
319
268
  function boundedExecutionEnvironment(selection, options) {
320
269
  const operation = currentOperationContext();
321
- return buildManagedAgentEnvironment({
322
- logicalAgent: selection.logicalAgent,
323
- role: selection.role,
324
- operationId: operation.id,
325
- operationKind: operation.kind ?? options.operationKind,
326
- phase: options.phase ?? "work",
327
- interactiveLead: false,
328
- orchestrationAllowed: false
329
- });
270
+ const env = buildManagedAgentEnvironment({ logicalAgent: selection.logicalAgent, role: selection.role, operationId: operation.id, operationKind: operation.kind ?? options.operationKind, phase: options.phase ?? "work", interactiveLead: false, orchestrationAllowed: false });
271
+ if (options.parentAgentId)
272
+ env.AEH_PARENT_AGENT_ID = options.parentAgentId;
273
+ if (options.supervisorAgent)
274
+ env.AEH_OPERATION_SUPERVISOR = "1";
275
+ return env;
330
276
  }
331
277
  function directMetadata(options, startedAt, transport = "direct") {
332
278
  const operation = currentOperationContext();
333
- return {
334
- transport,
335
- operationId: operation.id,
336
- operationKind: operation.kind ?? options.operationKind,
337
- phase: options.phase ?? "work",
338
- status: "finished",
339
- startedAt,
340
- finishedAt: new Date().toISOString()
341
- };
279
+ return { transport, operationId: operation.id, operationKind: operation.kind ?? options.operationKind, phase: options.phase ?? "work", status: "finished", startedAt, finishedAt: new Date().toISOString() };
342
280
  }
343
- function session(selection, exitCode, stdout, stderr, metadata = {}) {
344
- return {
345
- provider: selection.runtimeAdapter,
346
- model: selection.modelName,
281
+ async function markOperationSessionRunning(root, agentId) {
282
+ const operationId = currentOperationContext().id;
283
+ if (!operationId)
284
+ return;
285
+ await updateOperationParticipant(root, operationId, agentId, { status: "RUNNING" });
286
+ }
287
+ async function finalizeOperationSession(root, selection, result, options) {
288
+ const operationId = result.operationId ?? currentOperationContext().id;
289
+ if (!operationId || options.supervisorAgent)
290
+ return result;
291
+ const artifact = await persistOperationAgentArtifact(root, operationId, `${selection.logicalAgent}-${result.id ?? Date.now()}`, {
347
292
  logicalAgent: selection.logicalAgent,
348
- nativeAgent: selection.nativeAgent,
349
- runtime: selection.runtimeName,
350
- profile: selection.profile,
351
- exitCode,
352
- stdout,
353
- stderr,
354
- ...metadata
355
- };
293
+ role: selection.role,
294
+ phase: result.phase ?? options.phase,
295
+ session: result
296
+ }).catch(() => undefined);
297
+ if (!result.id)
298
+ return result;
299
+ let operation = await loadOperation(root, operationId).catch(() => undefined);
300
+ if (operation && !operation.participants[result.id]) {
301
+ await registerOperationAgent(root, operationId, {
302
+ id: result.id,
303
+ logicalAgent: selection.logicalAgent,
304
+ role: selection.role,
305
+ phase: result.phase ?? options.phase,
306
+ workspaceId: result.workspaceId,
307
+ transport: result.transport?.includes("cli") ? "cli" : "sdk"
308
+ }).catch(() => undefined);
309
+ operation = await loadOperation(root, operationId).catch(() => undefined);
310
+ }
311
+ await updateOperationParticipant(root, operationId, result.id, {
312
+ logicalAgent: selection.logicalAgent,
313
+ role: selection.role,
314
+ stage: result.phase ?? options.phase,
315
+ phase: result.phase ?? options.phase,
316
+ parentAgentId: options.parentAgentId ?? operation?.participants[result.id]?.parentAgentId,
317
+ parentSupervisorGeneration: operation?.participants[result.id]?.parentSupervisorGeneration,
318
+ workspaceId: result.workspaceId,
319
+ transport: result.transport,
320
+ status: result.exitCode === 0 ? "COMPLETED" : "FAILED",
321
+ resultArtifact: artifact,
322
+ error: result.exitCode === 0 ? undefined : result.stderr || `agent exited with ${result.exitCode}`
323
+ }).catch(() => undefined);
324
+ return result;
325
+ }
326
+ function session(selection, exitCode, stdout, stderr, metadata = {}) {
327
+ return { provider: selection.runtimeAdapter, model: selection.modelName, logicalAgent: selection.logicalAgent, nativeAgent: selection.nativeAgent, runtime: selection.runtimeName, profile: selection.profile, exitCode, stdout, stderr, ...metadata };
356
328
  }
357
329
  function withAgentCharter(selection, prompt, frozenSkills, executionContext) {
358
- const sections = [
359
- selection.description
360
- ? `Agent charter for ${selection.logicalAgent}:\n${selection.description}`
361
- : undefined,
362
- executionContext,
363
- frozenSkills
364
- ? `Frozen control-plane skill context (authoritative for this run):\n${frozenSkills}`
365
- : undefined,
366
- prompt
367
- ].filter(Boolean);
368
- return sections.join("\n\n");
330
+ return [selection.description ? `Agent charter for ${selection.logicalAgent}:\n${selection.description}` : undefined, executionContext, frozenSkills ? `Frozen control-plane skill context (authoritative for this run):\n${frozenSkills}` : undefined, prompt].filter(Boolean).join("\n\n");
369
331
  }
370
332
  function sealedArtifacts(config, contract) {
371
333
  const dir = config.sdd?.contractsDir ?? ".harness/contracts";
372
- return [
373
- ...new Set([
374
- `${dir}/${contract.task.id}.yaml`,
375
- `.harness/seals/${contract.task.id}.json`,
376
- ...Object.values(contract.source ?? {}).filter((value) => Boolean(value))
377
- ])
378
- ];
334
+ return [...new Set([`${dir}/${contract.task.id}.yaml`, `.harness/seals/${contract.task.id}.json`, ...Object.values(contract.source ?? {}).filter((value) => Boolean(value))])];
379
335
  }
380
336
  function extractSessionId(text) {
381
337
  for (const line of text.split(/\r?\n/)) {
@@ -404,21 +360,12 @@ function findSessionId(value) {
404
360
  return undefined;
405
361
  }
406
362
  const object = value;
407
- for (const key of [
408
- "thread_id",
409
- "session_id",
410
- "sessionID",
411
- "sessionId",
412
- "threadId"
413
- ]) {
363
+ for (const key of ["thread_id", "session_id", "sessionID", "sessionId", "threadId"])
414
364
  if (typeof object[key] === "string")
415
365
  return object[key];
416
- }
417
366
  const kind = String(object.type ?? object.event ?? "").toLowerCase();
418
- if ((kind.includes("thread") || kind.includes("session")) &&
419
- typeof object.id === "string") {
367
+ if ((kind.includes("thread") || kind.includes("session")) && typeof object.id === "string")
420
368
  return object.id;
421
- }
422
369
  for (const child of Object.values(object)) {
423
370
  const found = findSessionId(child);
424
371
  if (found)
@@ -426,7 +373,5 @@ function findSessionId(value) {
426
373
  }
427
374
  return undefined;
428
375
  }
429
- function quote(value) {
430
- return `'${value.replaceAll("'", "'\\''")}'`;
431
- }
376
+ function quote(value) { return `'${value.replaceAll("'", "'\\''")}'`; }
432
377
  //# sourceMappingURL=agentPrompt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agentPrompt.js","sourceRoot":"","sources":["../../src/workers/agentPrompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentPrompt.js","sourceRoot":"","sources":["../../src/workers/agentPrompt.ts"],"names":[],"mappings":"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"}