@tangle-network/agent-runtime 1.0.0 → 2.0.1

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 (96) hide show
  1. package/dist/{activation-CFS31SWI.d.ts → activation-BuK2H7qx.d.ts} +2 -2
  2. package/dist/{activation-BwoSqHCc.js → activation-ZQWz04u8.js} +4 -4
  3. package/dist/{activation-BwoSqHCc.js.map → activation-ZQWz04u8.js.map} +1 -1
  4. package/dist/agent.d.ts +1 -1
  5. package/dist/agent.js +4 -3
  6. package/dist/agent.js.map +1 -1
  7. package/dist/{bundle-DeDkJbsr.js → bundle-PDYNXIEf.js} +2 -2
  8. package/dist/{bundle-DeDkJbsr.js.map → bundle-PDYNXIEf.js.map} +1 -1
  9. package/dist/candidate-execution/index.js +4 -4
  10. package/dist/{coordination-manager-ewBF777W.js → coordination-manager-BZLp9qpE.js} +8 -363
  11. package/dist/coordination-manager-BZLp9qpE.js.map +1 -0
  12. package/dist/coordination-map-routing-CUvwHAtv.js +362 -0
  13. package/dist/coordination-map-routing-CUvwHAtv.js.map +1 -0
  14. package/dist/{delegate-BiuSfwBa.js → delegate-C-MUU6ML.js} +2 -2
  15. package/dist/{delegate-BiuSfwBa.js.map → delegate-C-MUU6ML.js.map} +1 -1
  16. package/dist/durable-file-CksURHlH.js +1 -0
  17. package/dist/durable-file-DstVeHcj.js +228 -0
  18. package/dist/durable-file-DstVeHcj.js.map +1 -0
  19. package/dist/durable.d.ts +1 -1
  20. package/dist/durable.js +10 -8
  21. package/dist/durable.js.map +1 -1
  22. package/dist/{graph-D6FL1xze.js → graph-CM-6CV_K.js} +6 -5
  23. package/dist/{graph-D6FL1xze.js.map → graph-CM-6CV_K.js.map} +1 -1
  24. package/dist/graph-registry-72DlMnUl.js +585 -0
  25. package/dist/graph-registry-72DlMnUl.js.map +1 -0
  26. package/dist/graph-registry-CAX15LO6.js +1 -0
  27. package/dist/{improve-SiKDcz5_.js → improve-BuZ-I8DP.js} +9 -8
  28. package/dist/{improve-SiKDcz5_.js.map → improve-BuZ-I8DP.js.map} +1 -1
  29. package/dist/index.d.ts +3 -3
  30. package/dist/index.js +12 -11
  31. package/dist/index.js.map +1 -1
  32. package/dist/intelligence.d.ts +2 -2
  33. package/dist/intelligence.js +7 -7
  34. package/dist/{journal-store-BJPMUydp.js → journal-store-BpCOCDoO.js} +208 -635
  35. package/dist/journal-store-BpCOCDoO.js.map +1 -0
  36. package/dist/jsonl-file-BBP9Dz9w.js +429 -0
  37. package/dist/jsonl-file-BBP9Dz9w.js.map +1 -0
  38. package/dist/kernel.d.ts +1 -1
  39. package/dist/kernel.js +13 -12
  40. package/dist/{loop-runner-CqlcC0i4.js → loop-runner-BWD6v1rd.js} +2 -2
  41. package/dist/{loop-runner-CqlcC0i4.js.map → loop-runner-BWD6v1rd.js.map} +1 -1
  42. package/dist/{loop-runner-D9rcTNf2.d.ts → loop-runner-BpLTU_J4.d.ts} +2 -2
  43. package/dist/loop-runner-bin.d.ts +1 -1
  44. package/dist/loop-runner-bin.js +1 -1
  45. package/dist/mcp/bin.js +3 -3
  46. package/dist/mcp/index.d.ts +1 -1
  47. package/dist/mcp/index.js +5 -5
  48. package/dist/{prepare-XWwsOh8O.js → prepare-Bv6X2Wnx.js} +4 -4
  49. package/dist/{prepare-XWwsOh8O.js.map → prepare-Bv6X2Wnx.js.map} +1 -1
  50. package/dist/{profile-C01SQZKa.js → profile-Dir2A1_2.js} +2 -2
  51. package/dist/{profile-C01SQZKa.js.map → profile-Dir2A1_2.js.map} +1 -1
  52. package/dist/profiles.d.ts +1 -1
  53. package/dist/{provision-supervisor-DnwR0AyW.js → provision-supervisor-BWEeWag1.js} +8 -6
  54. package/dist/{provision-supervisor-DnwR0AyW.js.map → provision-supervisor-BWEeWag1.js.map} +1 -1
  55. package/dist/{run-cancellation-CoJRKvih.js → run-cancellation-Cpm-BIUu.js} +3 -2
  56. package/dist/{run-cancellation-CoJRKvih.js.map → run-cancellation-Cpm-BIUu.js.map} +1 -1
  57. package/dist/{runtime-DSYZeav8.js → runtime-Cnr3213E.js} +18 -15
  58. package/dist/{runtime-DSYZeav8.js.map → runtime-Cnr3213E.js.map} +1 -1
  59. package/dist/{sandbox-profile-compat-CXjozdWL.js → sandbox-profile-compat-DRiz9kME.js} +2 -2
  60. package/dist/{sandbox-profile-compat-CXjozdWL.js.map → sandbox-profile-compat-DRiz9kME.js.map} +1 -1
  61. package/dist/{search-executor-DcGAOrAh.js → search-executor-__X1VKnU.js} +5 -5
  62. package/dist/{search-executor-DcGAOrAh.js.map → search-executor-__X1VKnU.js.map} +1 -1
  63. package/dist/{server-SrPLb8w0.js → server-CntFSTpW.js} +4 -4
  64. package/dist/{server-SrPLb8w0.js.map → server-CntFSTpW.js.map} +1 -1
  65. package/dist/{structural-rollout-C_lg83-u.js → structural-rollout-s8W19Mws.js} +5 -5
  66. package/dist/{structural-rollout-C_lg83-u.js.map → structural-rollout-s8W19Mws.js.map} +1 -1
  67. package/dist/{supervise-BXw89Ajc.js → supervise-Cl0F57m9.js} +32 -647
  68. package/dist/supervise-Cl0F57m9.js.map +1 -0
  69. package/dist/{supervision-discovery-CewADdEs.js → supervision-discovery-C3t0Xw-T.js} +5 -158
  70. package/dist/supervision-discovery-C3t0Xw-T.js.map +1 -0
  71. package/dist/{supervisor-hHU3ZJnR.js → supervisor-L7u3pQ1j.js} +99 -150
  72. package/dist/supervisor-L7u3pQ1j.js.map +1 -0
  73. package/dist/task-queue-DbpZAp6C.js +49 -0
  74. package/dist/task-queue-DbpZAp6C.js.map +1 -0
  75. package/dist/task-queue.js +1 -49
  76. package/dist/testing.d.ts +1 -1
  77. package/dist/testing.js +13 -13
  78. package/dist/top-web-CkXPPXjI.js +1114 -0
  79. package/dist/top-web-CkXPPXjI.js.map +1 -0
  80. package/dist/tui/bin.js +4 -3
  81. package/dist/tui/bin.js.map +1 -1
  82. package/dist/tui/index.d.ts +22 -2
  83. package/dist/tui/index.js +3 -3
  84. package/dist/{types-DTHxh4X9.d.ts → types-BfnQq-_k.d.ts} +17 -21
  85. package/dist/{util-ebWMWzY0.js → util-BX20UJ9X.js} +2 -2
  86. package/dist/{util-ebWMWzY0.js.map → util-BX20UJ9X.js.map} +1 -1
  87. package/package.json +4 -4
  88. package/skills/agent-graphs/references/authoring.md +1 -0
  89. package/dist/coordination-manager-ewBF777W.js.map +0 -1
  90. package/dist/journal-store-BJPMUydp.js.map +0 -1
  91. package/dist/supervise-BXw89Ajc.js.map +0 -1
  92. package/dist/supervision-discovery-CewADdEs.js.map +0 -1
  93. package/dist/supervisor-hHU3ZJnR.js.map +0 -1
  94. package/dist/task-queue.js.map +0 -1
  95. package/dist/top-snapshot-DcV7VG4m.js +0 -520
  96. package/dist/top-snapshot-DcV7VG4m.js.map +0 -1
@@ -1,9 +1,11 @@
1
- import { $ as traceRootWriter, A as runtimeProviderCode, At as sandboxLeafOutputFromEvents, B as retainedExecutorContext, Bt as createSandboxUsageLedger, D as runtimeFailureCause, Dt as createSandboxToolPartState, E as reportedFailureCause, Et as assertValidSpend, F as executorEvidenceWriter, Ft as extractTransportEventIdentity, Gt as sandboxTerminalUsageField, H as workspaceCaptureWriter, Ht as isSandboxTerminalEvent, I as isProvisioningRefusal, It as parseCanonicalTransportEvent, Jt as parseCodexUsageRecord, L as leafContinuationExecutionId, Lt as assertSandboxServedModel, M as BUDGET_CONTINUATION_TASK, Mt as sandboxProgressEvents, N as DISPATCH_NOT_ADMITTED_CODE, P as RetainedExecutionPendingError, R as prepareRetainedExecutor, Rt as canonicalSandboxUsageMode, St as newUsageTotals, T as sha256, U as UNAVAILABLE_CODES, Ut as notifySandboxEventObserver, V as retainedExecutorSeamKey, W as UNAVAILABLE_STATUSES, Wt as sandboxEventServedBackend, X as unavailableSignalOfFailure, Y as unavailableSignalInText, Yt as recordValue, _ as publishExclusiveDurableFile, a as isNoEntError, at as executorFailure, b as captureRunWriteContext, bt as createBudgetPool, ct as hashJson, d as SpawnEventIndex, dt as causeChain, f as closesCursorSlot, ft as errMessage, g as assertNoSymlinkDescendant, gt as defaultRedactor, ht as errorText, it as contentRef, j as settlementFailureCause, jt as sandboxOutputMarker, k as runtimeFailureRemediationSchema, lt as credentialCommandExit, m as outsideCursorNamespace, mt as errorProperty, n as appendSpawnEvents, nt as shareParsedStrings, ot as executorFailureInfra, p as insideCursorNamespace, pt as errorHttpStatus, q as unavailablePauseMs, r as spawnJournalRecordEvents, rt as contentAddress, st as executorFailureReason, t as FileSpawnJournal, tt as detachedSnapshot, ut as isCredentialRefusal, vt as resolveRedactor, wt as spendFromUsageTotals, x as fenceRunWrite, xt as meterUsageEvent, y as writeAtomicDurableFile, yt as BudgetReconcileFault, zt as createSandboxTurnEventCollector } from "./journal-store-BJPMUydp.js";
2
1
  import { c as RetainedInteractiveAdmissionError, d as RetainedRunDispatchBindingError, f as RuntimeRunStateError, i as ConfigError, l as RetainedInteractiveBindingError, m as ValidationError$1, r as BackendTransportError, t as AgentEvalError$1, u as RetainedRunAdmissionError } from "./errors-AzSuGI23.js";
3
- import { A as ACCEPTED_RESULT_GRACE_MS, B as teardownExecutor, C as withTimeout, E as addResourceSpend, F as armDeadlineTimer, I as boundedChildDeadlineAt, L as checkInIdleMs, O as resourceTelemetry, P as ROOT_DEADLINE_REASON, R as isDeadlineAbortReason, S as unmeteredSpend, T as zeroTokenUsage, V as teardownSurfaces, _ as roundBoxMinutes, a as cloneSpend, b as throwAbort, c as errorMessage, d as isAbortError$1, f as isAsyncIterable, g as randomUuid, h as randomSuffix, i as chargedTokens, j as CHILD_DEADLINE_REASON, k as withBudgetResources, m as promptCacheTokenClasses, n as addSpend, o as cloneTokenUsage, p as mapWithConcurrency, r as addTokenUsage, s as deleteBoxSafe, t as abortError, v as sleep, w as zeroSpend, x as throwIfAborted, y as stringifySafe, z as singleFlightTeardown } from "./util-ebWMWzY0.js";
4
- import { runTaskQueue } from "./task-queue.js";
2
+ import { A as ACCEPTED_RESULT_GRACE_MS, B as teardownExecutor, C as withTimeout, E as addResourceSpend, F as armDeadlineTimer, I as boundedChildDeadlineAt, L as checkInIdleMs, O as resourceTelemetry, P as ROOT_DEADLINE_REASON, R as isDeadlineAbortReason, S as unmeteredSpend, T as zeroTokenUsage, V as teardownSurfaces, _ as roundBoxMinutes, a as cloneSpend, b as throwAbort, c as errorMessage, d as isAbortError$1, f as isAsyncIterable, g as randomUuid, h as randomSuffix, i as chargedTokens, j as CHILD_DEADLINE_REASON, k as withBudgetResources, m as promptCacheTokenClasses, n as addSpend, o as cloneTokenUsage, p as mapWithConcurrency, r as addTokenUsage, s as deleteBoxSafe, t as abortError, v as sleep, w as zeroSpend, x as throwIfAborted, y as stringifySafe, z as singleFlightTeardown } from "./util-BX20UJ9X.js";
3
+ import { t as runTaskQueue } from "./task-queue-DbpZAp6C.js";
4
+ import { $ as newUsageTotals, A as workspaceCaptureWriter, C as executorEvidenceWriter, E as prepareRetainedExecutor, Et as recordValue, F as unavailablePauseMs, G as executorFailureInfra, H as contentAddress, J as credentialCommandExit, K as executorFailureReason, L as unavailableSignalInText, M as UNAVAILABLE_STATUSES, O as retainedExecutorContext, Q as meterUsageEvent, R as unavailableSignalOfFailure, S as RetainedExecutionPendingError, St as sandboxTerminalUsageField, T as leafContinuationExecutionId, Tt as parseCodexUsageRecord, U as contentRef, V as traceRootWriter, W as executorFailure, X as BudgetReconcileFault, Y as isCredentialRefusal, Z as createBudgetPool, _ as runtimeFailureRemediationSchema, _t as createSandboxUsageLedger, a as encodeResultBlob, b as BUDGET_CONTINUATION_TASK, bt as notifySandboxEventObserver, c as insideCursorNamespace, ct as sandboxOutputMarker, ft as extractTransportEventIdentity, gt as createSandboxTurnEventCollector, h as runtimeFailureCause, ht as canonicalSandboxUsageMode, it as createSandboxToolPartState, j as UNAVAILABLE_CODES, k as retainedExecutorSeamKey, l as outsideCursorNamespace, lt as sandboxProgressEvents, m as reportedFailureCause, mt as assertSandboxServedModel, n as appendSpawnEvents, o as SpawnEventIndex, pt as parseCanonicalTransportEvent, q as hashJson, r as spawnJournalRecordEvents, rt as assertValidSpend, s as closesCursorSlot, st as sandboxLeafOutputFromEvents, t as FileSpawnJournal, tt as spendFromUsageTotals, u as FileObserverJournal, v as runtimeProviderCode, w as isProvisioningRefusal, x as DISPATCH_NOT_ADMITTED_CODE, xt as sandboxEventServedBackend, y as settlementFailureCause, yt as isSandboxTerminalEvent } from "./journal-store-BpCOCDoO.js";
5
+ import { _ as errorText, b as resolveRedactor, d as detachedSnapshot, f as shareParsedStrings, g as errorProperty, h as errorHttpStatus, l as sha256, m as errMessage, p as causeChain, v as defaultRedactor } from "./jsonl-file-BBP9Dz9w.js";
5
6
  import { _ as agentHarness, a as concreteProfileModel, c as profileModelExecutionSettings, d as assertRouterAutoDeclaration, f as assertRouterAutoResponse, g as observedModelMatchesDeclared, h as observedModelHasSnapshot, l as profileProviderModel, m as mergeObservedModelIdentity, o as enforceTokenLimits, s as profileBridgeWireModel, t as assertExecutableAgentProfile, u as resolveRouterRetryPolicy } from "./model-policy-C-RGAUW4.js";
6
- import { B as sha256Bytes$1, H as hasControlCharacter, I as deepFreezeCandidate, M as verifyWorkspaceSnapshotArtifacts, U as nativeSystemPrompt, c as verifyAgentCandidateWorkspaceTree, g as verifiedArtifactChunks, o as readAgentCandidateWorkspaceArtifactFiles, s as verifyAgentCandidateWorkspaceArtifacts, t as assertSandboxProfileCompatibility, v as verifyAgentCandidateWorkspaceArchive } from "./sandbox-profile-compat-CXjozdWL.js";
7
+ import { B as sha256Bytes$1, H as hasControlCharacter, I as deepFreezeCandidate, M as verifyWorkspaceSnapshotArtifacts, U as nativeSystemPrompt, c as verifyAgentCandidateWorkspaceTree, g as verifiedArtifactChunks, o as readAgentCandidateWorkspaceArtifactFiles, s as verifyAgentCandidateWorkspaceArtifacts, t as assertSandboxProfileCompatibility, v as verifyAgentCandidateWorkspaceArchive } from "./sandbox-profile-compat-DRiz9kME.js";
8
+ import { a as writeAtomicDurableFile, n as assertNoSymlinkDescendant, r as publishExclusiveDurableFile, s as fenceRunWrite } from "./durable-file-DstVeHcj.js";
7
9
  import { i as notifyRuntimeHookEvent } from "./runtime-hooks-CsW2pfFk.js";
8
10
  import * as traceContract from "@tangle-network/agent-trace-contract";
9
11
  import { ATTR, OPERATION_NAME_ATTR, toW3CSpanId, toW3CTraceId } from "@tangle-network/agent-trace-contract";
@@ -357,27 +359,37 @@ function readSandboxOutcome(value) {
357
359
  if (!outcome || typeof outcome !== "object") return void 0;
358
360
  return outcome;
359
361
  }
362
+ // src/runtime/supervise/flow-brain.ts
363
+ const flowOwners = /* @__PURE__ */ new WeakSet();
364
+ /** Runtime schedules this model-free brain under graph edge caps, pool, deadline and abort. */
365
+ function runtimeFlowBrain() {
366
+ const brain = async () => ({
367
+ content: null,
368
+ toolCalls: []
369
+ });
370
+ flowOwners.add(brain);
371
+ return brain;
372
+ }
373
+ /** True only for a brain `runtimeFlowBrain` minted. */
374
+ function isRuntimeFlowBrain(brain) {
375
+ return flowOwners.has(brain);
376
+ }
377
+ /** Carry the same unforgeable ownership through the built code driver and its spec copies. */
378
+ function runtimeFlowAgent(agent, brain) {
379
+ if (brain && isRuntimeFlowBrain(brain)) flowOwners.add(agent);
380
+ return agent;
381
+ }
382
+ function isRuntimeFlowAgent(agent) {
383
+ return typeof agent === "object" && agent !== null && flowOwners.has(agent);
384
+ }
360
385
  // src/runtime/supervise/executable-spec.ts
361
- /**
362
- * Parse one untrusted profile into the exact immutable value execution may consume.
363
- *
364
- * Snapshotting before schema parsing reads caller-owned fields once. Snapshotting the parsed
365
- * result prevents downstream custom code from changing any identity or authority field.
366
- */
386
+ /** Read untrusted fields once, then parse and seal the exact executable profile. */
367
387
  function executableAgentProfileSnapshot(raw, context) {
368
388
  const profile = authoredAgentProfileSnapshot(raw, context);
369
389
  assertExecutableAgentProfile(profile, context);
370
390
  return profile;
371
391
  }
372
- /**
373
- * Parse and seal a profile as authored, without requiring it to select a harness and model.
374
- *
375
- * This is the intake for a leaf whose behavior is code the caller already built: a verbatim
376
- * `AgentSpec.executor`. Such an executor receives only the task and a signal, so no registry,
377
- * harness, or backend reads the profile after intake, and there is no ambient fill to refuse. The
378
- * profile still parses and still digests into the node's identity; it is simply not obliged to
379
- * claim a model that nothing runs. A graph script node is the canonical case.
380
- */
392
+ /** Seal code-owned behavior without inventing a model: verbatim executors and owned flow drivers. */
381
393
  function authoredAgentProfileSnapshot(raw, context) {
382
394
  const input = detachedSnapshot(raw, `${context}: AgentProfile input`);
383
395
  const profile = agentProfileSchema.parse(input);
@@ -386,7 +398,7 @@ function authoredAgentProfileSnapshot(raw, context) {
386
398
  /** Snapshot an executable spec while retaining trusted callbacks by reference. */
387
399
  function executableAgentSpecSnapshot(raw, context) {
388
400
  const { profile: rawProfile, harness, execution: rawExecution, ...runtimeExtensions } = raw;
389
- const profile = raw.executor === void 0 ? executableAgentProfileSnapshot(rawProfile, context) : authoredAgentProfileSnapshot(rawProfile, context);
401
+ const profile = raw.executor === void 0 && !isRuntimeFlowAgent(runtimeExtensions.driver) ? executableAgentProfileSnapshot(rawProfile, context) : authoredAgentProfileSnapshot(rawProfile, context);
390
402
  const execution = rawExecution === void 0 ? void 0 : detachedSnapshot(rawExecution, `${context}: execution attribution`);
391
403
  return Object.freeze({
392
404
  ...runtimeExtensions,
@@ -1185,13 +1197,8 @@ const CODEX_REPRODUCIBLE_ARGS = [
1185
1197
  const CODEX_PERMISSION_PROFILE = "agent_runtime_reproducible";
1186
1198
  // src/mcp/local-harness-invocation.ts
1187
1199
  /**
1188
- * Default per-harness command + arg shape. `buildArgs` takes ONLY the task prompt and
1189
- * emits the prompt-only invocation (no model, no system prompt) — the safe default shape
1190
- * the in-process executor's `streamPrompt` drives. `modelArgs` maps a resolved model to
1191
- * the harness's selector flag, which each harness spells for itself: codex, kimi-code and
1192
- * opencode take `-m <model>`, claude-code and pi take `--model <model>`. The §1.5
1193
- * profile-aware mapper `harnessInvocation` composes these to thread the full
1194
- * supervisor-authored profile (systemPrompt + model) into argv.
1200
+ * Per-harness prompt invocation and model, effort, permission and input capabilities.
1201
+ * `harnessInvocation` composes these with the authored profile before execution.
1195
1202
  *
1196
1203
  * Every per-harness difference is a FIELD on this row, never a test on the harness name at a
1197
1204
  * call site: adding harness N+1 is one entry here, and a caller asking for a capability the
@@ -1209,6 +1216,7 @@ const HARNESS_INVOCATIONS = {
1209
1216
  codex: {
1210
1217
  command: "codex",
1211
1218
  buildArgs: (taskPrompt) => ["exec", taskPrompt],
1219
+ stdinPromptArgIndex: 1,
1212
1220
  modelArgs: (model) => ["-m", model],
1213
1221
  reasoningArgs: (level) => ["-c", `model_reasoning_effort="${level}"`],
1214
1222
  permissionBypassArgs: () => [
@@ -2092,22 +2100,13 @@ var RollingByteCapture = class {
2092
2100
  }
2093
2101
  };
2094
2102
  /**
2095
- * Spawn a local coding harness CLI as a subprocess + collect its output.
2096
- *
2097
- * NOT responsible for parsing the harness's output or extracting a diff —
2098
- * the in-process executor's `streamPrompt` orchestrates `git diff` against
2099
- * the worktree after this resolves. This function is intentionally narrow:
2100
- * spawn, wait, capture, return.
2103
+ * Spawn a local harness, collect output and confirm process-tree cleanup.
2104
+ * The caller owns output parsing and workspace diffs.
2101
2105
  *
2102
- * Fails loud — throws when:
2103
- * - `cwd` doesn't exist (subprocess emits ENOENT; surfaced as Error)
2104
- * - the harness binary is not on PATH (ENOENT)
2105
- * - the caller signal was already aborted before process launch
2106
+ * Spawn failures and signals already aborted before launch reject.
2106
2107
  *
2107
- * Does NOT throw when:
2108
- * - the subprocess exits non-zero (`result.exitCode` carries the code)
2109
- * - a non-reproducible subprocess is aborted / timed out (`result.aborted` /
2110
- * `result.timedOut` carries the reason even when a TERM-aware child exits zero)
2108
+ * Ordinary nonzero exits and cancellation return the exit code and timeout/abort flags.
2109
+ * A failed prompt delivery rejects after the child is reaped.
2111
2110
  *
2112
2111
  * Reproducible Codex additionally requires a terminal usage event. If cancellation
2113
2112
  * prevents that event, this rejects with `CodexExecutionDiagnosticError` instead of
@@ -2179,11 +2178,16 @@ async function runLocalHarness(options) {
2179
2178
  deniedProbePaths: isolated.deniedProbePaths,
2180
2179
  ...options.signal ? { signal: options.signal } : {}
2181
2180
  }) : void 0;
2181
+ const inputIndex = options.codexReproducible ? void 0 : invocation.stdinPromptArgIndex;
2182
+ const canonicalPrompt = options.invocation ? options.invocation.prompt : taskPrompt;
2183
+ const input = inputIndex !== void 0 && args[0] === invocation.buildArgs("")[0] && args[inputIndex] === canonicalPrompt ? canonicalPrompt : void 0;
2184
+ const stdinPrompt = input?.trim() ? input : void 0;
2185
+ const spawnArgs = stdinPrompt === void 0 ? args : args.map((arg, index) => index === inputIndex ? "-" : arg);
2182
2186
  return await new Promise((resolve, reject) => {
2183
2187
  let child;
2184
2188
  try {
2185
2189
  options.signal?.throwIfAborted();
2186
- child = spawnImpl(command, args, {
2190
+ child = spawnImpl(command, spawnArgs, {
2187
2191
  cwd,
2188
2192
  env,
2189
2193
  stdio: "pipe",
@@ -2193,7 +2197,11 @@ async function runLocalHarness(options) {
2193
2197
  reject(err instanceof Error ? err : new Error(String(err)));
2194
2198
  return;
2195
2199
  }
2196
- child.stdin?.end();
2200
+ let deliveryError;
2201
+ child.stdin?.on("error", (error) => {
2202
+ deliveryError = error;
2203
+ });
2204
+ child.stdin?.end(stdinPrompt?.startsWith("") ? `\uFEFF${stdinPrompt}` : stdinPrompt);
2197
2205
  const stdoutCapture = new RollingByteCapture(maxOutputBytes);
2198
2206
  const stderrCapture = new RollingByteCapture(maxOutputBytes);
2199
2207
  let timedOut = false;
@@ -2265,6 +2273,7 @@ async function runLocalHarness(options) {
2265
2273
  try {
2266
2274
  if (!termination && process.platform !== "win32" && typeof child.pid === "number" && processGroupExists(child.pid)) await terminate();
2267
2275
  if (termination) await termination;
2276
+ if (deliveryError && code === 0 && !timedOut && !aborted) throw deliveryError;
2268
2277
  const durationMs = Date.now() - startedAt;
2269
2278
  const usage = options.codexReproducible ? parseCodexTokenUsage(stdout) : void 0;
2270
2279
  finalize({
@@ -2660,7 +2669,7 @@ function callerEnv(overrides) {
2660
2669
  */
2661
2670
  async function spawnProfiledHarness(args) {
2662
2671
  const invocationProfile = profileWithResourceInstructions(args.profile, args.resourceInstructions);
2663
- const { command, args: invocationArgs } = harnessInvocation(args.harness, invocationProfile, args.taskPrompt, {
2672
+ const invocation = harnessInvocation(args.harness, invocationProfile, args.taskPrompt, {
2664
2673
  dangerouslySkipPermissions: args.dangerouslySkipPermissions,
2665
2674
  ...args.fullAccess ? { fullAccess: true } : {},
2666
2675
  ...args.codexReproducible ? { codexReproducible: true } : {}
@@ -2670,8 +2679,8 @@ async function spawnProfiledHarness(args) {
2670
2679
  cwd: args.workspacePath,
2671
2680
  taskPrompt: args.taskPrompt,
2672
2681
  invocation: {
2673
- command,
2674
- args: [...invocationArgs, ...args.applied.flags.map(publicPlanString)]
2682
+ ...invocation,
2683
+ args: [...invocation.args, ...args.applied.flags.map(publicPlanString)]
2675
2684
  },
2676
2685
  env: {
2677
2686
  ...callerEnv(args.env),
@@ -9819,10 +9828,16 @@ function createInPlaceCliExecutor(options) {
9819
9828
  usd: 0,
9820
9829
  ms: Date.now() - started
9821
9830
  };
9831
+ const exit = result.harness;
9832
+ const failed = exit.exitCode !== 0 || exit.timedOut;
9822
9833
  artifact = {
9823
9834
  outRef: contentAddress(result),
9824
9835
  out: result,
9825
- spent
9836
+ spent,
9837
+ ...failed ? { outcome: {
9838
+ success: false,
9839
+ error: `${harness} exited ${exit.exitCode ?? exit.killedBySignal}${exit.timedOut ? " after its timeout" : ""}: ${exit.stderr.trim().slice(-300)}`
9840
+ } } : {}
9826
9841
  };
9827
9842
  return artifact;
9828
9843
  },
@@ -12320,6 +12335,7 @@ async function startRetainedRun(options) {
12320
12335
  assertStableText(options.environment.idempotencyKey, "environment idempotency key");
12321
12336
  assertStableText(options.turn.turnId, "turn idempotency key");
12322
12337
  if (typeof options.onAdmission !== "function") throw new Error("startRetainedRun requires an awaited onAdmission durability hook");
12338
+ const onAdmission = journaledAdmissions(options.journalRoot, options.intent?.runId, options.onAdmission);
12323
12339
  const contextTransfer = retainedContextTransfer(options.turn.contextTransfer);
12324
12340
  const transferReceipt = retainedContextTransferReceipt(options, options.provider.name, contextTransfer);
12325
12341
  const { sessionId, executionId } = options.identity ?? options.intent ?? (transferReceipt === void 0 ? void 0 : {
@@ -12341,7 +12357,7 @@ async function startRetainedRun(options) {
12341
12357
  }));
12342
12358
  if (!options.provider.get) throw new Error(`provider "${options.provider.name}" cannot reconstruct an environment by id`);
12343
12359
  const intent = retainedRunIntent(options, identity, contextTransfer);
12344
- if (options.intent === void 0) await admitDurably(options.onAdmission, intent);
12360
+ if (options.intent === void 0) await admitDurably(onAdmission, intent);
12345
12361
  else assertExactRetainedRunIntent(options.intent, intent);
12346
12362
  const providerCapabilities = await assertRetainedCapabilities(options.provider);
12347
12363
  if (transferReceipt !== void 0) assertRetainedContextTransferCapability(providerCapabilities);
@@ -12401,10 +12417,10 @@ async function startRetainedRun(options) {
12401
12417
  contextTransfer,
12402
12418
  expectedRunId: transferReceipt?.runId,
12403
12419
  identity,
12404
- onAdmission: options.onAdmission,
12420
+ onAdmission,
12405
12421
  capabilities,
12406
12422
  now: options.now,
12407
- preserveEnvironment: transferReceipt !== void 0 || options.existingEnvironmentId !== void 0
12423
+ preserveEnvironment: options.preserveEnvironment === true || transferReceipt !== void 0 || options.existingEnvironmentId !== void 0
12408
12424
  });
12409
12425
  }
12410
12426
  /**
@@ -12561,6 +12577,32 @@ async function admitDurably(onAdmission, admission) {
12561
12577
  throw new RetainedRunAdmissionError(stableAdmission, { cause: error });
12562
12578
  }
12563
12579
  }
12580
+ /**
12581
+ * Mirror each admission into `<journalRoot>/<runId>/observer.jsonl`, the observer format
12582
+ * agent-runtime-top reads. The caller's hook stays authoritative; an observer append that
12583
+ * fails never fails the run, matching `FileObserverJournal`'s contract.
12584
+ */
12585
+ function journaledAdmissions(journalRoot, replayRunId, onAdmission) {
12586
+ if (journalRoot === void 0) return onAdmission;
12587
+ let runId = replayRunId;
12588
+ return async (admission) => {
12589
+ await onAdmission(admission);
12590
+ if ("runId" in admission) runId ??= admission.runId;
12591
+ if (runId === void 0) return;
12592
+ await new FileObserverJournal(join(journalRoot, runId, "observer.jsonl"), runId).appendEvent({
12593
+ id: `${runId}:${admission.phase}`,
12594
+ pursuitId: runId,
12595
+ runId,
12596
+ target: "agent.run",
12597
+ phase: "before",
12598
+ timestamp: Date.now(),
12599
+ payload: {
12600
+ status: "running",
12601
+ admission: admission.phase
12602
+ }
12603
+ }).catch(() => void 0);
12604
+ };
12605
+ }
12564
12606
  function isInteractiveAdmission(admission) {
12565
12607
  return admission.phase === "interactive_intent" || admission.phase === "interactive_environment" || admission.phase === "interactive_started";
12566
12608
  }
@@ -14041,6 +14083,7 @@ function retainedDispatchMaterial(args, retention, selectedTurn, signal) {
14041
14083
  ...selectedTurn,
14042
14084
  turnId
14043
14085
  },
14086
+ preserveEnvironment: retention.preserveEnvironment,
14044
14087
  ...priorSession === void 0 ? {} : {
14045
14088
  existingEnvironmentId: priorSession.environmentId,
14046
14089
  identity: {
@@ -14070,36 +14113,11 @@ function assertReplayMaterial(args, material, intent, turn, selectedTurn, turnId
14070
14113
  material.turn = original.turn;
14071
14114
  }
14072
14115
  }
14073
- /** Replay the committed intent, or find the session the environment admission names. */
14074
- async function recoverFromEnvironmentAdmission(args, material, intent, environmentAdmission, onAdmission) {
14075
- const replay = (admission) => recoverRetainedRun({
14076
- provider: args.provider,
14077
- admission,
14078
- replay: material,
14079
- onAdmission
14080
- });
14081
- let recovered = material.existingEnvironmentId !== void 0 && intent?.phase === "intent" ? await replay(intent) : await recoverRetainedRun({
14082
- provider: args.provider,
14083
- environmentId: environmentAdmission.environmentId,
14084
- sessionId: environmentAdmission.sessionId,
14085
- executionId: environmentAdmission.executionId
14086
- });
14087
- if (recovered.outcome === "unverifiable" && intent?.phase === "intent") recovered = await replay(intent);
14088
- if (recovered.outcome !== "recovered") throw new Error(`retained provider execution is ${recovered.outcome}`);
14089
- await onAdmission({
14090
- phase: "dispatched",
14091
- controlRef: recovered.handle.controlRef,
14092
- idempotencyKey: environmentAdmission.idempotencyKey,
14093
- turnId: environmentAdmission.turnId
14094
- });
14095
- return recovered.handle;
14096
- }
14097
14116
  /** Reconnect, recover or start the retained run, whichever the journal's admissions call for. */
14098
14117
  async function acquireRetainedHandle(args, retention, material, onAdmission, turnInputs) {
14099
14118
  const admissions = retention.admissions;
14100
14119
  const dispatched = [...admissions].reverse().find((admission) => admission.phase === "dispatched");
14101
14120
  const intent = admissions.find((admission) => admission.phase === "intent");
14102
- const environmentAdmission = admissions.find((admission) => admission.phase === "environment");
14103
14121
  if (args.recovering && admissions.length > 0) {
14104
14122
  if (!intent) throw new Error("retained provider execution has no original intent");
14105
14123
  assertReplayMaterial(args, material, intent, turnInputs.turn, turnInputs.selectedTurn, turnInputs.turnId);
@@ -14112,7 +14130,6 @@ async function acquireRetainedHandle(args, retention, material, onAdmission, tur
14112
14130
  if (!reconnected) throw new Error("retained provider environment is unavailable");
14113
14131
  return reconnected;
14114
14132
  }
14115
- if (args.recovering && environmentAdmission?.phase === "environment") return recoverFromEnvironmentAdmission(args, material, intent, environmentAdmission, onAdmission);
14116
14133
  if (args.recovering && intent?.phase === "intent") {
14117
14134
  const recovered = await recoverRetainedRun({
14118
14135
  provider: args.provider,
@@ -20371,75 +20388,6 @@ function createExecutorRegistry() {
20371
20388
  }
20372
20389
  };
20373
20390
  }
20374
- // src/durable/spawn-journal/result-blob-store.ts
20375
- /**
20376
- * FS `ResultBlobStore`. One JSON file per artifact under `dir`, named by a
20377
- * filesystem-safe encoding of the `outRef` (`sha256:<hex>` → `sha256-<hex>.json`).
20378
- * `put` fsyncs so a crash between writes never loses an acknowledged blob.
20379
- *
20380
- * @stable
20381
- */
20382
- var FileResultBlobStore = class {
20383
- dir;
20384
- writeContext = captureRunWriteContext();
20385
- constructor(dir) {
20386
- this.dir = dir;
20387
- }
20388
- async put(outRef, artifact) {
20389
- return this.writeContext(async () => {
20390
- const { text } = encodeResultBlob(outRef, artifact);
20391
- const filePath = this.blobPath(outRef);
20392
- assertNoSymlinkDescendant(this.dir, filePath, "result blob");
20393
- await (await import("node:fs/promises")).mkdir(this.dir, { recursive: true });
20394
- assertNoSymlinkDescendant(this.dir, filePath, "result blob");
20395
- if (!publishExclusiveDurableFile(filePath, text, { mode: 384 })) assertContentAddress(outRef, await this.get(outRef));
20396
- });
20397
- }
20398
- async get(outRef) {
20399
- const filePath = this.blobPath(outRef);
20400
- assertNoSymlinkDescendant(this.dir, filePath, "result blob");
20401
- const fs = await import("node:fs/promises");
20402
- const { constants } = await import("node:fs");
20403
- let text;
20404
- try {
20405
- const handle = await fs.open(filePath, constants.O_RDONLY | constants.O_NOFOLLOW);
20406
- try {
20407
- if (!(await handle.stat()).isFile()) throw new Error("result blob must be a regular file");
20408
- text = await handle.readFile("utf8");
20409
- } finally {
20410
- await handle.close();
20411
- }
20412
- } catch (err) {
20413
- if (isNoEntError(err)) return void 0;
20414
- throw err;
20415
- }
20416
- const artifact = JSON.parse(text);
20417
- assertContentAddress(outRef, artifact);
20418
- return artifact;
20419
- }
20420
- blobPath(outRef) {
20421
- if (!/^sha256:[0-9a-f]{64}$/.test(outRef)) throw new Error("invalid result blob content address");
20422
- return `${this.dir}/${outRef.replace(/:/g, "-")}.json`;
20423
- }
20424
- };
20425
- /** @internal shared with the SQL-backed store. */
20426
- function encodeResultBlob(outRef, artifact) {
20427
- const detached = detachedSnapshot(artifact, "result blob");
20428
- assertContentAddress(outRef, detached);
20429
- const text = JSON.stringify(detached);
20430
- if (text === void 0) throw new Error("result blob must contain JSON");
20431
- const snapshot = JSON.parse(text);
20432
- assertContentAddress(outRef, snapshot);
20433
- return {
20434
- snapshot,
20435
- text
20436
- };
20437
- }
20438
- /** @internal shared with the SQL-backed store. */
20439
- function assertContentAddress(outRef, artifact) {
20440
- const expected = contentAddress(artifact);
20441
- if (outRef !== expected) throw new Error(`blob outRef '${outRef}' does not match the artifact content hash '${expected}'; a content-addressed store refuses a mismatched ref (breaks the replay invariant)`);
20442
- }
20443
20391
  // src/durable/in-memory-spawn-stores.ts
20444
20392
  /** In-process decision and payload retention; no acknowledged state survives process exit. */
20445
20393
  /**
@@ -24623,6 +24571,7 @@ async function startRetainedInteractiveRun(options) {
24623
24571
  assertStableText(startOptions.environment.idempotencyKey, "environment idempotency key");
24624
24572
  assertStableText(startOptions.interactiveIdempotencyKey, "interactive idempotency key");
24625
24573
  if (typeof startOptions.onAdmission !== "function") throw new Error("startRetainedInteractiveRun requires an awaited onAdmission durability hook");
24574
+ const onAdmission = journaledAdmissions(startOptions.journalRoot, startOptions.intent?.runId, startOptions.onAdmission);
24626
24575
  if (!startOptions.provider.get) throw new Error(`provider "${startOptions.provider.name}" cannot reconstruct an environment by id`);
24627
24576
  const profile = agentProfileSchema.parse(startOptions.environment.profile);
24628
24577
  if (profile.harness === void 0) throw new Error("retained interactive runs require AgentProfile.harness");
@@ -24634,7 +24583,7 @@ async function startRetainedInteractiveRun(options) {
24634
24583
  assertStableText(identity.sessionId, "retained session id");
24635
24584
  assertStableText(identity.executionId, "retained execution id");
24636
24585
  const intent = interactiveIntent(startOptions, profile, identity);
24637
- if (startOptions.intent === void 0) await admitDurably(startOptions.onAdmission, intent);
24586
+ if (startOptions.intent === void 0) await admitDurably(onAdmission, intent);
24638
24587
  else assertExactInteractiveIntent(startOptions.intent, intent, () => interactiveIntent(startOptions, profile, identity, legacyRetainedCreateMaterial));
24639
24588
  const providerCapabilities = AgentEnvironmentCapabilitiesSchema.parse(await awaitAbortable$1(Promise.resolve().then(() => startOptions.provider.capabilities()), startOptions.signal));
24640
24589
  assertInteractiveCapabilities(startOptions.provider.name, providerCapabilities);
@@ -24655,7 +24604,7 @@ async function startRetainedInteractiveRun(options) {
24655
24604
  throw error;
24656
24605
  }
24657
24606
  const request = interactiveRequest(startOptions, environment, profile, requestedProfileDigest, identity);
24658
- await admitDurably(startOptions.onAdmission, {
24607
+ await admitDurably(onAdmission, {
24659
24608
  phase: "interactive_environment",
24660
24609
  provider: startOptions.provider.name,
24661
24610
  environmentId: environment.id,
@@ -24664,7 +24613,7 @@ async function startRetainedInteractiveRun(options) {
24664
24613
  request
24665
24614
  });
24666
24615
  const ref = exactStartedRef(request, await startInteractiveProcess(environment, () => environment.startInteractive(request, { signal: startOptions.signal }), startOptions.signal));
24667
- await admitDurably(startOptions.onAdmission, {
24616
+ await admitDurably(onAdmission, {
24668
24617
  phase: "interactive_started",
24669
24618
  idempotencyKey: startOptions.environment.idempotencyKey,
24670
24619
  interactiveIdempotencyKey: startOptions.interactiveIdempotencyKey,
@@ -29647,6 +29596,6 @@ async function noWinner(settled, rejection) {
29647
29596
  reason: "no-result-selected"
29648
29597
  };
29649
29598
  }
29650
- export { abandonScopeRetainedOwnerInvocation as $, CheckUnavailableError as $n, newExecutionAttemptId as $r, harnessTranscriptArtifact as $t, noteScopeOwnerPlannedExecution as A, createPeerMailbox as An, harnessInvocation as Ar, acquireSandbox as At, deriveNodeExecutionIdentity as B, DriverAttemptsExhaustedError as Bn, renderUnsupported as Br, createAgentEnvironmentProviderRegistry as Bt, interactiveAdmissionSeamKey as C, INBOX_RECEIPT_KEY as Cn, signalAbortError as Cr, DEFAULT_SANDBOX_STEERING_MAX_TURNS as Ct, recoverRetainedInteractiveRun as D, DEFAULT_PEER_MAIL_LIMITS as Dn, runSettledCommand as Dr, readPromptOptions as Dt, reconnectRetainedInteractiveRun as E, AUTHORITY_MARKERS as En, defaultRunCommand as Er, assertBoxlessPromptOptions as Et, coordinationProfileToolPrefix as F, DEFAULT_STALL_AFTER_MS as Fn, defineProfileMaterializationContract as Fr, createCodeModeTools as Ft, meterRuntimeOwnedProviderAttempt as G, summarizeDriverAttempts as Gn, attestRuntimeOwnedPendingExecutor as Gr, reconnectRetainedRun as Gt, queueOf as H, abandonablePending as Hn, sandboxProfileMaterialization as Hr, providerAsExecutor as Ht, providerVisibleProfile as I, createActivityLog as In, fullProfileMaterialization as Ir, runCodeMode as It, recordScopeOwnerPause as J, SeatChain as Jn, authoredProfileDigest as Jr, startRetainedRunInEnvironment as Jt, recordScopeOwnerBarrenPause as K, undispatchedCredentialExit as Kn, attestRuntimeOwnedScopeOwner as Kr, recoverRetainedRun as Kt, runtimeGraphMetadataKey as L, readWorkerProgress as Ln, profileMaterializationAxes$1 as Lr, toolResultText as Lt, restoreScopeOwnerAcceptedExecution as M, peerMailTools as Mn, assertProfileMaterialization as Mr, defaultSelectWinner as Mt, scopeOwnerExecutorNodeContext as N, peerMailVerbNames as Nn, assertProfileMaterializes as Nr, codeModeArguments as Nt, startRetainedInteractiveRun as O, PEER_MAIL_WIRE_KEY as On, runWorktreeHarness as Or, createSandboxForSpec as Ot, coordinationMcpAlias as P, taskToPrompt$1 as Pn, controlProfileMaterialization as Pr, codeModeModelOutput as Pt, resolveSpawnResourcePaths as Q, subscriptionUsageLimitSignal as Qn, knownMaterializationReceipt as Qr, captureHarnessTranscript as Qt, settledToIteration as R, isLiveNodeStatus as Rn, promptControlProfileMaterialization as Rr, createRouterTranscript as Rt, workerTraceAnalysisStore as S, sanitizeRuntimeStreamEvent as Sn, runAbortable as Sr, snapshotExecutorConfig as St, readWorkerInteractiveBinding as T, failPendingAfter as Tn, bridgeStopSignalKey as Tr, runAgentRounds as Tt, rollingDispatch as U, causedByPartialFailure as Un, unsupportedProfileDimensions as Ur, LEAF_CONTINUATION_TASK as Ut, freeSlots as V, HarnessTurnFailedError as Vn, sandboxActProfileMaterialization as Vr, resolveAgentEnvironmentProvider as Vt, meterRuntimeOwnedAccounting as W, classifyDriverFailure as Wn, worktreeCliProfileMaterialization as Wr, providerAsSandboxClient as Wt, scopeRetainedOwnerResourceReader as X, authoredSeatStages as Xn, inheritRuntimeOwnedExecutorAttestation as Xr, destroyInteractiveEnvironment as Xt, prepareScopeRetainedOwnerSeatSwitch as Y, SeatChainExhaustedError as Yn, finalizeRuntimeOwnedPendingExecutor as Yr, retainedCreateMaterial as Yt, environmentReader as Z, seatExecutionProfile as Zn, knownExecutionBindingReceipt as Zr, environmentGone as Zt, withDriverExecutor as _, providerMessageText as _i, generateSpanId as _n, harnessUsageIsEmpty as _r, FileResultBlobStore as _t, assertRunParking as a, runtimeOwnedExecutorProviderEvidence as ai, openSlotGroup as an, admitContinuationPolicy as ar, scopeRetainedOwnerTurnEnded as at, isTraceAnalysisStore as b, createRuntimeStreamEventCollector as bn, RunCancellationReason as br, captureReusableExecutorConfig as bt, sleepScopeWait as c, unknownExecutionBindingReceipt as ci, WORKER_TRACE_PROPAGATION as cn, createContinuationKeeper as cr, noteScopeRetainedOwnerCoordination as ct, runFinalizer as d, executableAgentSpecSnapshot as di, buildLoopOtelSpans as dn, bridgeAdmissionRefusal as dr, scopeRetainedOwnerContext as dt, providerAttemptEvidence as ei, persistHarnessTranscript as en, gateFactoryOnDeliverable as er, consumeScopeRetainedOwnerResult as et, runTree as f, projectSandboxOutcome as fi, buildLoopSpanNodes as fn, bridgeModelRouteRefusal as fr, scopeRetainedOwnerJournalRoot as ft, isDriverSpec as g, promptOptionsFromAgentTurnInput as gi, flatOtelSpan as gn, createCodexRolloutStoreReader as gr, InMemorySpawnJournal as gt, driverExecutorFactory as h, promptFromAgentTurnInput as hi, createOtelExporter as hn, addHarnessUsage as hr, InMemoryResultBlobStore as ht, RunParkedError as i, runtimeOwnedExecutorMaterialization as ii, createWorkerSlots as in, CONTINUATIONS_DIR as ir, beginScopeRetainedOwnerDrive as it, recordScopeOwnerMaterialization as j, isPeerMailEnvelope as jn, terminateProcessTreeAndConfirm as jr, TERMINAL_DECISIONS as jt, beginScopeOwnerAttempt as k, claimsAuthority as kn, LOCAL_HARNESSES as kr, createSandboxLineage as kt, withRunParking as l, unknownMaterializationReceipt as li, createPropagatingTraceEmitter as ln, failedItems as lr, bindScopeRetainedOwnerEnvironmentId as lt, driverChild as m, awaitAbortable$1 as mi, createOpenInferenceFileExporter as mn, ROUTER_PRICE_SOURCE as mr, materializeTreeView as mt, createSupervisor as n, runtimeOwnedDriveHarnessProviderEvidence as ni, resolveHarnessTranscriptCapture as nn, mapExecutorResult as nr, scopeRetainedOwnerPriorSpend as nt, bindScopeParkingDrain as o, runtimeOwnedPendingExecutorMaterialization as oi, createWorktreeCliExecutor as on, bestComposite as or, reconcileScopeRetainedOwnerEnvironment as ot, createRootHandle as p, readSandboxOutcome as pi, buildRuntimeEventOtelSpans as pn, priceTokens as pr, loadSpawnForest as pt, recordScopeOwnerDriverAttempt as q, upstreamUnavailableSignal as qn, authoredAgentIdentity as qr, startRetainedRun as qt, assertResumeLimits as r, runtimeOwnedExecutorExecutionBinding as ri, retainHarnessTranscript as rn, verdictFromJudgeScore as rr, scopeRetainedOwnerResult as rt, readRunParking as s, runtimeOwnedScopeOwnerRuntime as si, createInPlaceCliExecutor as sn, checkVerdictOf as sr, scopeRetainedOwnerRestorePoint as st, DEFAULT_MAX_DEPTH as t, recordRuntimeOwnedDriveHarnessProviderEvidence as ti, readHarnessTranscript as tn, gateOnDeliverable as tr, prepareScopeRetainedOwnerTask as tt, bestDelivered as u, executableAgentProfileSnapshot as ui, readTraceContextFromEnv as un, isFiniteNumber as ur, bindScopeRetainedOwnerProvider as ut, createScope as v, loopEventToOtelSpan as vn, readCodexRolloutSession as vr, createExecutorRegistry as vt, attachWorker as w, createInbox as wn, bridgeRuntimeAttachmentsKey as wr, createSteerableSandboxSession as wt, parseWorkerToolTraceArtifact as x, sanitizeKnowledgeReadinessReport as xn, linkAbort as xr, createExecutor as xt, replaySpawnTree as y, createRuntimeEventCollector as yn, createPushTraceSource as yr, bindReusableExecutorExecutionId as yt, assertRecursiveReservationPolicy as z, isTerminalNodeStatus as zn, promptModelProfileMaterialization as zr, routerBrain as zt };
29599
+ export { abandonScopeRetainedOwnerInvocation as $, gateFactoryOnDeliverable as $n, providerAttemptEvidence as $r, persistHarnessTranscript as $t, noteScopeOwnerPlannedExecution as A, isPeerMailEnvelope as An, terminateProcessTreeAndConfirm as Ar, TERMINAL_DECISIONS as At, deriveNodeExecutionIdentity as B, HarnessTurnFailedError as Bn, sandboxActProfileMaterialization as Br, resolveAgentEnvironmentProvider as Bt, interactiveAdmissionSeamKey as C, createInbox as Cn, bridgeRuntimeAttachmentsKey as Cr, createSteerableSandboxSession as Ct, recoverRetainedInteractiveRun as D, PEER_MAIL_WIRE_KEY as Dn, runWorktreeHarness as Dr, createSandboxForSpec as Dt, reconnectRetainedInteractiveRun as E, DEFAULT_PEER_MAIL_LIMITS as En, runSettledCommand as Er, readPromptOptions as Et, coordinationProfileToolPrefix as F, createActivityLog as Fn, fullProfileMaterialization as Fr, runCodeMode as Ft, meterRuntimeOwnedProviderAttempt as G, undispatchedCredentialExit as Gn, attestRuntimeOwnedScopeOwner as Gr, recoverRetainedRun as Gt, queueOf as H, causedByPartialFailure as Hn, unsupportedProfileDimensions as Hr, LEAF_CONTINUATION_TASK as Ht, providerVisibleProfile as I, readWorkerProgress as In, profileMaterializationAxes$1 as Ir, toolResultText as It, recordScopeOwnerPause as J, SeatChainExhaustedError as Jn, finalizeRuntimeOwnedPendingExecutor as Jr, retainedCreateMaterial as Jt, recordScopeOwnerBarrenPause as K, upstreamUnavailableSignal as Kn, authoredAgentIdentity as Kr, startRetainedRun as Kt, runtimeGraphMetadataKey as L, isLiveNodeStatus as Ln, promptControlProfileMaterialization as Lr, createRouterTranscript as Lt, restoreScopeOwnerAcceptedExecution as M, peerMailVerbNames as Mn, assertProfileMaterializes as Mr, codeModeArguments as Mt, scopeOwnerExecutorNodeContext as N, taskToPrompt$1 as Nn, controlProfileMaterialization as Nr, codeModeModelOutput as Nt, startRetainedInteractiveRun as O, claimsAuthority as On, LOCAL_HARNESSES as Or, createSandboxLineage as Ot, coordinationMcpAlias as P, DEFAULT_STALL_AFTER_MS as Pn, defineProfileMaterializationContract as Pr, createCodeModeTools as Pt, resolveSpawnResourcePaths as Q, CheckUnavailableError as Qn, newExecutionAttemptId as Qr, harnessTranscriptArtifact as Qt, settledToIteration as R, isTerminalNodeStatus as Rn, promptModelProfileMaterialization as Rr, routerBrain as Rt, workerTraceAnalysisStore as S, INBOX_RECEIPT_KEY as Sn, signalAbortError as Sr, DEFAULT_SANDBOX_STEERING_MAX_TURNS as St, readWorkerInteractiveBinding as T, AUTHORITY_MARKERS as Tn, defaultRunCommand as Tr, assertBoxlessPromptOptions as Tt, rollingDispatch as U, classifyDriverFailure as Un, worktreeCliProfileMaterialization as Ur, providerAsSandboxClient as Ut, freeSlots as V, abandonablePending as Vn, sandboxProfileMaterialization as Vr, providerAsExecutor as Vt, meterRuntimeOwnedAccounting as W, summarizeDriverAttempts as Wn, attestRuntimeOwnedPendingExecutor as Wr, reconnectRetainedRun as Wt, scopeRetainedOwnerResourceReader as X, seatExecutionProfile as Xn, knownExecutionBindingReceipt as Xr, environmentGone as Xt, prepareScopeRetainedOwnerSeatSwitch as Y, authoredSeatStages as Yn, inheritRuntimeOwnedExecutorAttestation as Yr, destroyInteractiveEnvironment as Yt, environmentReader as Z, subscriptionUsageLimitSignal as Zn, knownMaterializationReceipt as Zr, captureHarnessTranscript as Zt, withDriverExecutor as _, promptFromAgentTurnInput as _i, loopEventToOtelSpan as _n, readCodexRolloutSession as _r, createExecutorRegistry as _t, assertRunParking as a, runtimeOwnedPendingExecutorMaterialization as ai, createWorktreeCliExecutor as an, bestComposite as ar, scopeRetainedOwnerTurnEnded as at, isTraceAnalysisStore as b, sanitizeKnowledgeReadinessReport as bn, linkAbort as br, createExecutor as bt, sleepScopeWait as c, unknownMaterializationReceipt as ci, createPropagatingTraceEmitter as cn, failedItems as cr, noteScopeRetainedOwnerCoordination as ct, runFinalizer as d, isRuntimeFlowBrain as di, buildLoopSpanNodes as dn, bridgeModelRouteRefusal as dr, scopeRetainedOwnerContext as dt, recordRuntimeOwnedDriveHarnessProviderEvidence as ei, readHarnessTranscript as en, gateOnDeliverable as er, consumeScopeRetainedOwnerResult as et, runTree as f, runtimeFlowAgent as fi, buildRuntimeEventOtelSpans as fn, priceTokens as fr, scopeRetainedOwnerJournalRoot as ft, isDriverSpec as g, awaitAbortable$1 as gi, generateSpanId as gn, harnessUsageIsEmpty as gr, InMemorySpawnJournal as gt, driverExecutorFactory as h, readSandboxOutcome as hi, flatOtelSpan as hn, createCodexRolloutStoreReader as hr, InMemoryResultBlobStore as ht, RunParkedError as i, runtimeOwnedExecutorProviderEvidence as ii, openSlotGroup as in, admitContinuationPolicy as ir, beginScopeRetainedOwnerDrive as it, recordScopeOwnerMaterialization as j, peerMailTools as jn, assertProfileMaterialization as jr, defaultSelectWinner as jt, beginScopeOwnerAttempt as k, createPeerMailbox as kn, harnessInvocation as kr, acquireSandbox as kt, withRunParking as l, executableAgentProfileSnapshot as li, readTraceContextFromEnv as ln, isFiniteNumber as lr, bindScopeRetainedOwnerEnvironmentId as lt, driverChild as m, projectSandboxOutcome as mi, createOtelExporter as mn, addHarnessUsage as mr, materializeTreeView as mt, createSupervisor as n, runtimeOwnedExecutorExecutionBinding as ni, retainHarnessTranscript as nn, verdictFromJudgeScore as nr, scopeRetainedOwnerPriorSpend as nt, bindScopeParkingDrain as o, runtimeOwnedScopeOwnerRuntime as oi, createInPlaceCliExecutor as on, checkVerdictOf as or, reconcileScopeRetainedOwnerEnvironment as ot, createRootHandle as p, runtimeFlowBrain as pi, createOpenInferenceFileExporter as pn, ROUTER_PRICE_SOURCE as pr, loadSpawnForest as pt, recordScopeOwnerDriverAttempt as q, SeatChain as qn, authoredProfileDigest as qr, startRetainedRunInEnvironment as qt, assertResumeLimits as r, runtimeOwnedExecutorMaterialization as ri, createWorkerSlots as rn, CONTINUATIONS_DIR as rr, scopeRetainedOwnerResult as rt, readRunParking as s, unknownExecutionBindingReceipt as si, WORKER_TRACE_PROPAGATION as sn, createContinuationKeeper as sr, scopeRetainedOwnerRestorePoint as st, DEFAULT_MAX_DEPTH as t, runtimeOwnedDriveHarnessProviderEvidence as ti, resolveHarnessTranscriptCapture as tn, mapExecutorResult as tr, prepareScopeRetainedOwnerTask as tt, bestDelivered as u, executableAgentSpecSnapshot as ui, buildLoopOtelSpans as un, bridgeAdmissionRefusal as ur, bindScopeRetainedOwnerProvider as ut, createScope as v, promptOptionsFromAgentTurnInput as vi, createRuntimeEventCollector as vn, createPushTraceSource as vr, bindReusableExecutorExecutionId as vt, attachWorker as w, failPendingAfter as wn, bridgeStopSignalKey as wr, runAgentRounds as wt, parseWorkerToolTraceArtifact as x, sanitizeRuntimeStreamEvent as xn, runAbortable as xr, snapshotExecutorConfig as xt, replaySpawnTree as y, providerMessageText as yi, createRuntimeStreamEventCollector as yn, RunCancellationReason as yr, captureReusableExecutorConfig as yt, assertRecursiveReservationPolicy as z, DriverAttemptsExhaustedError as zn, renderUnsupported as zr, createAgentEnvironmentProviderRegistry as zt };
29651
29600
 
29652
- //# sourceMappingURL=supervisor-hHU3ZJnR.js.map
29601
+ //# sourceMappingURL=supervisor-L7u3pQ1j.js.map