agentic-engineering-harness 0.6.22 → 0.6.24

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.
@@ -13,6 +13,7 @@ import { continueManagedPaseoAgent, launchManagedPaseoAgent, materializeManagedP
13
13
  import { PaseoSdkUnavailableError } from "../paseo/sdk.js";
14
14
  import { allowedSandboxEnvironment, hardenedPodmanArgs, sandboxImage } from "../security/sandbox.js";
15
15
  import { runProcess } from "../utils/process.js";
16
+ import { activateStructuredResultTurnForAgent, reconcileStructuredResult } from "./resultGateway.js";
16
17
  import { compileAgentPromptPolicy } from "./promptPolicy.js";
17
18
  export async function executeAgentPrompt(root, config, contract, selection, prompt, options = {}) {
18
19
  const transport = selection.transport === "inherit" ? (config.orchestration?.provider ?? "none") : selection.transport;
@@ -20,6 +21,9 @@ export async function executeAgentPrompt(root, config, contract, selection, prom
20
21
  if (options.resumeSessionId && !options.supervisorAgent) {
21
22
  await markOperationSessionRunning(root, options.resumeSessionId).catch(() => undefined);
22
23
  }
24
+ if (options.outputContract && options.resumeSessionId && transport !== "paseo") {
25
+ await activateStructuredResultTurnForAgent(root, options.resumeSessionId, options.phase).catch(() => undefined);
26
+ }
23
27
  let result;
24
28
  if (transport === "paseo")
25
29
  result = await executeViaPaseo(root, config, contract, selection, effectivePrompt, options);
@@ -29,7 +33,7 @@ export async function executeAgentPrompt(root, config, contract, selection, prom
29
33
  result = await executePodman(root, config, contract, selection, effectivePrompt, options);
30
34
  else
31
35
  throw new Error(`Unsupported agent prompt transport: ${transport}`);
32
- return finalizeOperationSession(root, selection, result, options);
36
+ return finalizeOperationSession(root, contract, selection, result, options);
33
37
  }
34
38
  export async function materializeAgentPrompt(root, config, contract, selection, options = {}) {
35
39
  const transport = selection.transport === "inherit" ? (config.orchestration?.provider ?? "none") : selection.transport;
@@ -114,10 +118,10 @@ export async function dispatchMaterializedAgentPrompt(root, config, contract, se
114
118
  phase: options.phase ?? materialized.phase,
115
119
  finishedAt: new Date().toISOString()
116
120
  };
117
- const finalized = await finalizeOperationSession(root, selection, result, options);
118
- if (!options.outputContract || result.exitCode !== 0)
121
+ const finalized = await finalizeOperationSession(root, contract, selection, result, options);
122
+ if (!options.outputContract || finalized.exitCode !== 0)
119
123
  return finalized;
120
- const delivery = validateCapturedAgentContract(options.outputContract, result.stdout, result.stderr);
124
+ const delivery = validateCapturedAgentContract(options.outputContract, finalized.stdout, finalized.stderr);
121
125
  if (delivery.ok)
122
126
  return finalized;
123
127
  const repairPhase = `${options.phase ?? materialized.phase ?? "work"}-contract-repair`;
@@ -137,7 +141,7 @@ export async function dispatchMaterializedAgentPrompt(root, config, contract, se
137
141
  phase: repairPhase,
138
142
  finishedAt: new Date().toISOString()
139
143
  };
140
- return finalizeOperationSession(root, selection, repairedResult, repairOptions);
144
+ return finalizeOperationSession(root, contract, selection, repairedResult, repairOptions);
141
145
  }
142
146
  export async function resumeAgentPrompt(root, config, contract, selection, previous, prompt, options = {}) {
143
147
  if (!previous.id)
@@ -165,9 +169,10 @@ function serializationRepairPrompt(contractName, failure) {
165
169
  "Do not inspect files, run tools, repeat the task, add new findings, or change conclusions.",
166
170
  `The prior delivery failed structured serialization: ${failure ?? "unknown contract failure"}.`,
167
171
  "Serialize only the result already present in this session into the requested contract.",
168
- "Return exactly one plain-text marker line and nothing else:",
172
+ "If aeh_submit_result is available, submit the contract object through that tool; a successful durable submission is authoritative and no marker is required.",
173
+ "Only if the result tool is unavailable, return exactly one plain-text marker line and nothing else:",
169
174
  "AEH_RESULT_JSON=<valid compact JSON>",
170
- "Use ordinary ASCII JSON double quotes (U+0022). Do not use Markdown fences or typographic quotes."
175
+ "For the marker fallback use ordinary ASCII JSON double quotes (U+0022); do not use Markdown fences or typographic quotes."
171
176
  ].join("\n");
172
177
  }
173
178
  async function executeViaPaseo(root, config, contract, selection, prompt, options) {
@@ -346,52 +351,72 @@ async function markOperationSessionRunning(root, agentId) {
346
351
  return;
347
352
  await updateOperationParticipant(root, operationId, agentId, { status: "RUNNING" });
348
353
  }
349
- async function finalizeOperationSession(root, selection, result, options) {
350
- const operationId = result.operationId ?? currentOperationContext().id;
351
- if (!operationId || options.supervisorAgent)
354
+ async function finalizeOperationSession(root, contract, selection, observed, options) {
355
+ const operationId = observed.operationId ?? currentOperationContext().id ?? contract.task.id;
356
+ let result = observed;
357
+ let accepted;
358
+ let contractDelivery;
359
+ if (options.outputContract && observed.exitCode === 0) {
360
+ const resolution = await reconcileStructuredResult(root, {
361
+ operationId,
362
+ agentId: observed.id,
363
+ logicalAgent: selection.logicalAgent,
364
+ role: selection.role,
365
+ contract: options.outputContract,
366
+ phase: observed.phase ?? options.phase,
367
+ stdout: observed.stdout,
368
+ stderr: observed.stderr
369
+ });
370
+ contractDelivery = resolution.ok
371
+ ? { ok: true }
372
+ : { ok: false, failure: resolution.failure ?? `invalid ${options.outputContract} output contract` };
373
+ if (resolution.accepted) {
374
+ accepted = resolution.accepted;
375
+ result = { ...observed, stdout: JSON.stringify(resolution.accepted.payload) };
376
+ }
377
+ }
378
+ if (options.supervisorAgent)
352
379
  return result;
353
- const turnStamp = (result.finishedAt ?? new Date().toISOString()).replace(/[^0-9A-Za-z]+/g, "-");
354
- const contractDelivery = options.outputContract
355
- ? validateCapturedAgentContract(options.outputContract, result.stdout, result.stderr)
356
- : undefined;
357
- const artifact = await persistOperationAgentArtifact(root, operationId, `${selection.logicalAgent}-${result.id ?? "no-session"}-${turnStamp}`, {
380
+ const turnStamp = (observed.finishedAt ?? new Date().toISOString()).replace(/[^0-9A-Za-z]+/g, "-");
381
+ const transcriptArtifact = await persistOperationAgentArtifact(root, operationId, `${selection.logicalAgent}-${observed.id ?? "no-session"}-${turnStamp}`, {
358
382
  logicalAgent: selection.logicalAgent,
359
383
  role: selection.role,
360
- phase: result.phase ?? options.phase,
384
+ phase: observed.phase ?? options.phase,
361
385
  outputContract: options.outputContract,
362
386
  contractDelivery,
363
- session: result
387
+ structuredResultArtifact: accepted?.artifact,
388
+ session: observed
364
389
  }).catch(() => undefined);
365
- if (!result.id)
390
+ if (!observed.id)
366
391
  return result;
367
392
  let operation = await loadOperation(root, operationId).catch(() => undefined);
368
- if (operation && !operation.participants[result.id]) {
393
+ if (operation && !operation.participants[observed.id]) {
369
394
  await registerOperationAgent(root, operationId, {
370
- id: result.id,
395
+ id: observed.id,
371
396
  logicalAgent: selection.logicalAgent,
372
397
  role: selection.role,
373
- phase: result.phase ?? options.phase,
374
- workspaceId: result.workspaceId,
375
- transport: result.transport?.includes("cli") ? "cli" : "sdk"
398
+ phase: observed.phase ?? options.phase,
399
+ workspaceId: observed.workspaceId,
400
+ transport: observed.transport?.includes("cli") ? "cli" : "sdk"
376
401
  }).catch(() => undefined);
377
402
  operation = await loadOperation(root, operationId).catch(() => undefined);
378
403
  }
379
404
  const contractFailure = contractDelivery && !contractDelivery.ok
380
405
  ? contractDelivery.failure ?? `invalid ${options.outputContract ?? "agent"} output contract`
381
406
  : undefined;
382
- const failed = result.exitCode !== 0 || Boolean(contractFailure);
383
- await updateOperationParticipant(root, operationId, result.id, {
407
+ const failed = observed.exitCode !== 0 || Boolean(contractFailure);
408
+ await updateOperationParticipant(root, operationId, observed.id, {
384
409
  logicalAgent: selection.logicalAgent,
385
410
  role: selection.role,
386
- stage: result.phase ?? options.phase,
387
- phase: result.phase ?? options.phase,
388
- parentAgentId: options.parentAgentId ?? operation?.participants[result.id]?.parentAgentId,
389
- parentSupervisorGeneration: operation?.participants[result.id]?.parentSupervisorGeneration,
390
- workspaceId: result.workspaceId,
391
- transport: result.transport,
411
+ stage: observed.phase ?? options.phase,
412
+ phase: observed.phase ?? options.phase,
413
+ parentAgentId: options.parentAgentId ?? operation?.participants[observed.id]?.parentAgentId,
414
+ parentSupervisorGeneration: operation?.participants[observed.id]?.parentSupervisorGeneration,
415
+ workspaceId: observed.workspaceId,
416
+ transport: observed.transport,
392
417
  status: failed ? "FAILED" : "COMPLETED",
393
- resultArtifact: artifact,
394
- error: failed ? ((contractFailure ?? result.stderr) || `agent exited with ${result.exitCode}`) : undefined
418
+ resultArtifact: accepted?.artifact ?? transcriptArtifact,
419
+ error: failed ? ((contractFailure ?? observed.stderr) || `agent exited with ${observed.exitCode}`) : undefined
395
420
  }).catch(() => undefined);
396
421
  return result;
397
422
  }
@@ -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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"}
@@ -1,12 +1,13 @@
1
1
  import { outputJsonSchema } from "../agents/outputContracts.js";
2
2
  export function compileAgentPromptPolicy(selection, contract, options) {
3
- const skills = new Set((selection.skills ?? []).filter((skill) => skill !== "structured-output-delivery"));
3
+ const inheritedSkills = selection.skills ?? [];
4
+ let skills = new Set(inheritedSkills.filter((skill) => skill !== "structured-output-delivery"));
4
5
  const contractRepair = options.phase?.endsWith("-contract-repair") ?? false;
5
6
  if (options.operationKind === "audit" && selection.role === "reviewer") {
6
- skills.add("audit-review-protocol");
7
- skills.delete("verification-planning");
8
- if (!hasTraceableAcceptance(contract))
9
- skills.delete("acceptance-traceability");
7
+ skills = new Set(["audit-review-protocol"]);
8
+ if (hasTraceableAcceptance(contract) && inheritedSkills.includes("acceptance-traceability")) {
9
+ skills.add("acceptance-traceability");
10
+ }
10
11
  }
11
12
  if (contractRepair && selection.logicalAgent === "operation-supervisor")
12
13
  skills.clear();
@@ -29,19 +30,25 @@ export function nativeSchemaEnforced(selection, transport) {
29
30
  }
30
31
  export function outputContractContext(contractName, nativeSchema, repair = false) {
31
32
  if (repair) {
32
- return `AEH output contract: ${contractName}. This is a serialization-repair turn; structured-output-delivery governs the exact marker format.`;
33
+ return [
34
+ `AEH output contract: ${contractName}. This is a serialization-repair turn.`,
35
+ "If the capability-scoped aeh_submit_result tool is available, submit the already-established contract payload through it; a successful durable submission is authoritative.",
36
+ "Do not redo semantic work. If the result tool is unavailable, structured-output-delivery governs the compatibility marker fallback."
37
+ ].join("\n");
33
38
  }
34
39
  if (nativeSchema) {
35
40
  return [
36
41
  `AEH output contract: ${contractName}.`,
37
42
  "The exact JSON Schema is supplied out-of-band and validated deterministically by the runtime.",
38
- "Return only the contract result; do not add prose or Markdown around it."
43
+ "If aeh_submit_result is available, submit exactly the final contract payload through it before completing; that durable result is lifecycle-authoritative.",
44
+ "A provider-required native structured final may repeat the same payload for transport compatibility, but must not represent a different semantic result."
39
45
  ].join("\n");
40
46
  }
41
47
  const schema = outputJsonSchema(contractName);
42
48
  return [
43
49
  `AEH output contract: ${contractName}. Runtime validation is authoritative.`,
44
- "This transport cannot enforce the schema out-of-band, so match the compact schema below exactly and return no prose.",
50
+ "If aeh_submit_result is available, submit exactly the final contract payload through it; the durable result is authoritative.",
51
+ "Otherwise this transport cannot enforce the schema out-of-band, so match the compact schema below exactly and return no prose.",
45
52
  schema ? `Schema: ${JSON.stringify(schema)}` : undefined
46
53
  ].filter(Boolean).join("\n");
47
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"promptPolicy.js","sourceRoot":"","sources":["../../src/workers/promptPolicy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAehE,MAAM,UAAU,wBAAwB,CACtC,SAAkC,EAClC,QAAsB,EACtB,OAAiC;IAEjC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,4BAA4B,CAAC,CAAC,CAAC;IAC3G,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,kBAAkB,CAAC,IAAI,KAAK,CAAC;IAE5E,IAAI,OAAO,CAAC,aAAa,KAAK,OAAO,IAAI,SAAS,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACvE,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;QACvC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC;YAAE,MAAM,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;IAClF,CAAC;IAED,IAAI,cAAc,IAAI,SAAS,CAAC,YAAY,KAAK,sBAAsB;QAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IACxF,IAAI,cAAc;QAAE,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAE7D,OAAO;QACL,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC;QACnB,qBAAqB,EAAE,OAAO,CAAC,cAAc;YAC3C,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,cAAc,EAAE,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,cAAc,CAAC;YACnH,CAAC,CAAC,SAAS;KACd,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,QAAsB;IAC3D,OAAO,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,IAAI,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,IAAI,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AACrH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,SAAkC,EAAE,SAAiB;IACxF,IAAI,SAAS,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IACvC,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,cAAc,KAAK,OAAO,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,YAAoB,EAAE,YAAqB,EAAE,MAAM,GAAG,KAAK;IAC/F,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,wBAAwB,YAAY,oGAAoG,CAAC;IAClJ,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO;YACL,wBAAwB,YAAY,GAAG;YACvC,+FAA+F;YAC/F,0EAA0E;SAC3E,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC9C,OAAO;QACL,wBAAwB,YAAY,wCAAwC;QAC5E,sHAAsH;QACtH,MAAM,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;KACzD,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"promptPolicy.js","sourceRoot":"","sources":["../../src/workers/promptPolicy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAehE,MAAM,UAAU,wBAAwB,CACtC,SAAkC,EAClC,QAAsB,EACtB,OAAiC;IAEjC,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC;IAC/C,IAAI,MAAM,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,4BAA4B,CAAC,CAAC,CAAC;IAChG,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,kBAAkB,CAAC,IAAI,KAAK,CAAC;IAE5E,IAAI,OAAO,CAAC,aAAa,KAAK,OAAO,IAAI,SAAS,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACvE,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC;QAC5C,IAAI,sBAAsB,CAAC,QAAQ,CAAC,IAAI,eAAe,CAAC,QAAQ,CAAC,yBAAyB,CAAC,EAAE,CAAC;YAC5F,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,IAAI,cAAc,IAAI,SAAS,CAAC,YAAY,KAAK,sBAAsB;QAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IACxF,IAAI,cAAc;QAAE,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAE7D,OAAO;QACL,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC;QACnB,qBAAqB,EAAE,OAAO,CAAC,cAAc;YAC3C,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,cAAc,EAAE,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,cAAc,CAAC;YACnH,CAAC,CAAC,SAAS;KACd,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,QAAsB;IAC3D,OAAO,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,IAAI,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,IAAI,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AACrH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,SAAkC,EAAE,SAAiB;IACxF,IAAI,SAAS,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IACvC,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,cAAc,KAAK,OAAO,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,YAAoB,EAAE,YAAqB,EAAE,MAAM,GAAG,KAAK;IAC/F,IAAI,MAAM,EAAE,CAAC;QACX,OAAO;YACL,wBAAwB,YAAY,wCAAwC;YAC5E,6KAA6K;YAC7K,qIAAqI;SACtI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO;YACL,wBAAwB,YAAY,GAAG;YACvC,+FAA+F;YAC/F,4JAA4J;YAC5J,0JAA0J;SAC3J,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC9C,OAAO;QACL,wBAAwB,YAAY,wCAAwC;QAC5E,+HAA+H;QAC/H,gIAAgI;QAChI,MAAM,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;KACzD,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { type AcceptedStructuredResult, type StructuredResultSource } from "./resultGateway.js";
2
+ export declare function commitStructuredResult<T = unknown>(root: string, operationId: string, channelId: string, payload: unknown, source: StructuredResultSource): Promise<AcceptedStructuredResult<T>>;
@@ -0,0 +1,49 @@
1
+ import crypto from "node:crypto";
2
+ import fs from "node:fs/promises";
3
+ import path from "node:path";
4
+ import { validateAgentOutput } from "../agents/outputContracts.js";
5
+ import { operationArtifactDir, resolveOperationStateRoot } from "../operations/state.js";
6
+ import { acceptStructuredResult, loadStructuredResultChannel } from "./resultGateway.js";
7
+ export async function commitStructuredResult(root, operationId, channelId, payload, source) {
8
+ const lock = path.join(operationArtifactDir(resolveOperationStateRoot(root), operationId), "result-channels", `${safe(channelId)}.commit.lock`);
9
+ return withLock(lock, async () => {
10
+ const channel = await loadStructuredResultChannel(root, operationId, channelId);
11
+ const turn = channel.activeTurn;
12
+ if (!turn)
13
+ throw new Error("AEH_RESULT_NO_ACTIVE_TURN: no controller-activated result turn exists.");
14
+ if (turn.status === "ACCEPTED" && turn.sha256 && turn.artifact) {
15
+ const validation = validateAgentOutput(turn.contract, payload);
16
+ if (!validation.ok)
17
+ throw new Error(`RESULT_ALREADY_ACCEPTED: ${validation.issues.join("; ")}`);
18
+ const normalized = validation.value;
19
+ const sha256 = crypto.createHash("sha256").update(JSON.stringify(normalized)).digest("hex");
20
+ if (sha256 !== turn.sha256)
21
+ throw new Error("CONFLICTING_RESULT: the active turn already has a different accepted payload.");
22
+ return { artifact: turn.artifact, sha256, payload: normalized, source: turn.source ?? source, turnId: turn.id, channelId };
23
+ }
24
+ return acceptStructuredResult(root, operationId, channelId, payload, source);
25
+ });
26
+ }
27
+ function safe(value) { return value.trim().replace(/[^A-Za-z0-9._-]+/g, "-").replace(/^-+|-+$/g, "") || "result"; }
28
+ async function withLock(file, action) {
29
+ await fs.mkdir(path.dirname(file), { recursive: true });
30
+ const deadline = Date.now() + 5_000;
31
+ for (;;) {
32
+ try {
33
+ const handle = await fs.open(file, "wx");
34
+ try {
35
+ return await action();
36
+ }
37
+ finally {
38
+ await handle.close().catch(() => undefined);
39
+ await fs.rm(file, { force: true }).catch(() => undefined);
40
+ }
41
+ }
42
+ catch (error) {
43
+ if (error.code !== "EEXIST" || Date.now() >= deadline)
44
+ throw error;
45
+ await new Promise((resolve) => setTimeout(resolve, 10));
46
+ }
47
+ }
48
+ }
49
+ //# sourceMappingURL=resultCommit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resultCommit.js","sourceRoot":"","sources":["../../src/workers/resultCommit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,91 @@
1
+ export type StructuredResultSource = "mcp" | "captured";
2
+ export type StructuredResultTurnStatus = "PENDING" | "ACCEPTED" | "REJECTED" | "CONFLICT";
3
+ export interface StructuredResultTurn {
4
+ id: string;
5
+ sequence: number;
6
+ contract: string;
7
+ phase?: string;
8
+ status: StructuredResultTurnStatus;
9
+ attempts: number;
10
+ activatedAt: string;
11
+ acceptedAt?: string;
12
+ artifact?: string;
13
+ sha256?: string;
14
+ source?: StructuredResultSource;
15
+ error?: string;
16
+ }
17
+ export interface StructuredResultChannel {
18
+ version: 1;
19
+ operationId: string;
20
+ channelId: string;
21
+ logicalAgent: string;
22
+ role?: string;
23
+ contract: string;
24
+ agentId?: string;
25
+ createdAt: string;
26
+ updatedAt: string;
27
+ sequence: number;
28
+ activeTurn?: StructuredResultTurn;
29
+ }
30
+ export interface StructuredResultArtifact<T = unknown> {
31
+ version: 1;
32
+ kind: "agent-result";
33
+ operationId: string;
34
+ channelId: string;
35
+ turnId: string;
36
+ sequence: number;
37
+ logicalAgent: string;
38
+ role?: string;
39
+ agentId?: string;
40
+ contract: string;
41
+ source: StructuredResultSource;
42
+ createdAt: string;
43
+ payloadSha256: string;
44
+ payload: T;
45
+ }
46
+ export interface AcceptedStructuredResult<T = unknown> {
47
+ artifact: string;
48
+ sha256: string;
49
+ payload: T;
50
+ source: StructuredResultSource;
51
+ turnId: string;
52
+ channelId: string;
53
+ }
54
+ export interface StructuredResultResolution<T = unknown> {
55
+ ok: boolean;
56
+ accepted?: AcceptedStructuredResult<T>;
57
+ failure?: string;
58
+ }
59
+ export declare function provisionStructuredResultChannel(root: string, input: {
60
+ operationId: string;
61
+ logicalAgent: string;
62
+ role?: string;
63
+ contract: string;
64
+ channelId?: string;
65
+ }): Promise<StructuredResultChannel>;
66
+ export declare function bindStructuredResultChannel(root: string, operationId: string, channelId: string, agentId: string): Promise<StructuredResultChannel>;
67
+ export declare function activateStructuredResultTurn(root: string, operationId: string, channelId: string, phase?: string): Promise<StructuredResultTurn>;
68
+ export declare function activateStructuredResultTurnForAgent(root: string, agentId: string, phase?: string): Promise<StructuredResultTurn | undefined>;
69
+ export declare function acceptStructuredResult<T = unknown>(root: string, operationId: string, channelId: string, payload: unknown, source: StructuredResultSource): Promise<AcceptedStructuredResult<T>>;
70
+ export declare function acceptedStructuredResultForAgent<T = unknown>(root: string, agentId: string): Promise<AcceptedStructuredResult<T> | undefined>;
71
+ export declare function reconcileStructuredResult<T = unknown>(root: string, input: {
72
+ operationId: string;
73
+ agentId?: string;
74
+ logicalAgent: string;
75
+ role?: string;
76
+ contract: string;
77
+ phase?: string;
78
+ stdout: string;
79
+ stderr?: string;
80
+ }): Promise<StructuredResultResolution<T>>;
81
+ export declare function projectAcceptedStructuredResult<T extends {
82
+ stdout: string;
83
+ }>(root: string, agentId: string, result: T): Promise<T>;
84
+ export declare function loadStructuredResultChannel(root: string, operationId: string, channelId: string): Promise<StructuredResultChannel>;
85
+ export declare function resultSinkMcpServerDefinition(root: string, operationId: string, channelId: string): {
86
+ type: "stdio";
87
+ command: string;
88
+ args: string[];
89
+ env: Record<string, string>;
90
+ alwaysLoad: true;
91
+ };