@tangle-network/agent-runtime 0.231.1 → 0.233.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/{activation-Dltkq5S8.d.ts → activation-C8fPmjWa.d.ts} +2 -2
  2. package/dist/{activation-DVqSBfe1.js → activation-D0_qcEXf.js} +2 -2
  3. package/dist/{activation-DVqSBfe1.js.map → activation-D0_qcEXf.js.map} +1 -1
  4. package/dist/agent.d.ts +2 -2
  5. package/dist/agent.js +2 -2
  6. package/dist/{coordination-driver-CUdEC2Qh.js → coordination-driver-BR52Rt39.js} +14 -13
  7. package/dist/{coordination-driver-CUdEC2Qh.js.map → coordination-driver-BR52Rt39.js.map} +1 -1
  8. package/dist/{delegate-BN0cSSUT.js → delegate-CA-Tnr1_.js} +2 -2
  9. package/dist/{delegate-BN0cSSUT.js.map → delegate-CA-Tnr1_.js.map} +1 -1
  10. package/dist/durable.d.ts +11 -2
  11. package/dist/durable.js +13 -3
  12. package/dist/durable.js.map +1 -1
  13. package/dist/{graph-D4wgK3ns.js → graph-BtMQMQin.js} +3 -3
  14. package/dist/{graph-D4wgK3ns.js.map → graph-BtMQMQin.js.map} +1 -1
  15. package/dist/{improvement-cycle-CjIeWuyB.js → improvement-cycle-WJJALdil.js} +3 -3
  16. package/dist/{improvement-cycle-CjIeWuyB.js.map → improvement-cycle-WJJALdil.js.map} +1 -1
  17. package/dist/{index-BW6lJXnH.d.ts → index-BwWBXoyq.d.ts} +39 -24
  18. package/dist/index.d.ts +6 -6
  19. package/dist/index.js +7 -7
  20. package/dist/intelligence.d.ts +3 -3
  21. package/dist/intelligence.js +3 -3
  22. package/dist/kernel.d.ts +4 -4
  23. package/dist/kernel.js +9 -9
  24. package/dist/{loop-runner-bin-BodmUPOf.js → loop-runner-bin-7cS9NAmk.js} +3 -3
  25. package/dist/{loop-runner-bin-BodmUPOf.js.map → loop-runner-bin-7cS9NAmk.js.map} +1 -1
  26. package/dist/{loop-runner-bin-BcqlGNW-.d.ts → loop-runner-bin-DaOd42mA.d.ts} +3 -3
  27. package/dist/loop-runner-bin.d.ts +1 -1
  28. package/dist/loop-runner-bin.js +1 -1
  29. package/dist/mcp/bin.js +3 -3
  30. package/dist/mcp/index.d.ts +5 -5
  31. package/dist/mcp/index.js +4 -4
  32. package/dist/{openai-tools-avHT8eq3.d.ts → openai-tools-BdFqNlha.d.ts} +2 -2
  33. package/dist/profiles.d.ts +2 -2
  34. package/dist/{provision-supervisor-DyNDlA2I.js → provision-supervisor-BME3OgTk.js} +3 -3
  35. package/dist/{provision-supervisor-DyNDlA2I.js.map → provision-supervisor-BME3OgTk.js.map} +1 -1
  36. package/dist/{runtime-BxZHapmG.js → runtime-CcfA_ElB.js} +9 -8
  37. package/dist/{runtime-BxZHapmG.js.map → runtime-CcfA_ElB.js.map} +1 -1
  38. package/dist/{server-C9pa2tSq.js → server-DU3nDuDb.js} +3 -3
  39. package/dist/{server-C9pa2tSq.js.map → server-DU3nDuDb.js.map} +1 -1
  40. package/dist/{stream-agent-turn-hiU4vgGX.d.ts → stream-agent-turn-aXpd9b_N.d.ts} +2 -11
  41. package/dist/{structural-rollout-DQoLyth9.js → structural-rollout-YlkrevWE.js} +2 -2
  42. package/dist/{structural-rollout-DQoLyth9.js.map → structural-rollout-YlkrevWE.js.map} +1 -1
  43. package/dist/{substrate-CBo6TWOl.d.ts → substrate-B2Os0b0f.d.ts} +2 -2
  44. package/dist/{supervise-Cl_-IsVc.js → supervise-CAJWyXQ-.js} +13 -10
  45. package/dist/supervise-CAJWyXQ-.js.map +1 -0
  46. package/dist/{supervisor-DFsXULnE.js → supervisor-C2xWmESG.js} +517 -199
  47. package/dist/supervisor-C2xWmESG.js.map +1 -0
  48. package/dist/testing.d.ts +2 -2
  49. package/dist/testing.js +12 -12
  50. package/dist/tui/index.d.ts +1 -1
  51. package/dist/tui/index.js +1 -1
  52. package/dist/{types-DBovefLD.d.ts → types-F5MG_7Qq.d.ts} +228 -27
  53. package/package.json +1 -1
  54. package/dist/supervise-Cl_-IsVc.js.map +0 -1
  55. package/dist/supervisor-DFsXULnE.js.map +0 -1
package/dist/testing.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { $a as SuperviseTestOptions, $t as runGraphWithTestBrain, Ao as supervisorAgentWithTestBrain, Tn as driverAgent, Yt as RunGraphTestOptions, to as superviseWithTestBrain, wn as DriverAgentOptions, xo as SupervisorAgentTestDeps } from "./index-BW6lJXnH.js";
2
- import { Dn as ToolLoopChat, En as ToolLoopCallContext } from "./stream-agent-turn-hiU4vgGX.js";
1
+ import { $a as SuperviseTestOptions, $t as runGraphWithTestBrain, Ao as supervisorAgentWithTestBrain, Tn as driverAgent, Yt as RunGraphTestOptions, to as superviseWithTestBrain, wn as DriverAgentOptions, xo as SupervisorAgentTestDeps } from "./index-BwWBXoyq.js";
2
+ import { Dn as ToolLoopChat, En as ToolLoopCallContext } from "./stream-agent-turn-aXpd9b_N.js";
3
3
  import { AgentImprovementProposal, AgentProfile, AgentProfileImprovementMeasuredComparison, SandboxSizePreset } from "@tangle-network/agent-interface";
4
4
  //#region src/testing/index.d.ts
5
5
  /** A proposal produced by Runtime's opaque profile-improvement path. */
package/dist/testing.js CHANGED
@@ -1,14 +1,14 @@
1
- import { f as verifyAgentImprovementProposal } from "./improvement-cycle-CjIeWuyB.js";
1
+ import { f as verifyAgentImprovementProposal } from "./improvement-cycle-WJJALdil.js";
2
2
  import { o as canonicalCandidateDigest$1, u as immutableCandidateValue } from "./protected-redaction-wGo44k2K.js";
3
3
  import { M as parseExactAgentProfile, w as applyExactAgentProfileDiff } from "./prepare-Dc30WRB0.js";
4
- import { p as supervisorAgentWithTestBrain, r as superviseWithTestBrain } from "./supervise-Cl_-IsVc.js";
5
- import { r as driverAgent } from "./coordination-driver-CUdEC2Qh.js";
6
- import { i as runGraphWithTestBrain } from "./graph-D4wgK3ns.js";
4
+ import { p as supervisorAgentWithTestBrain, r as superviseWithTestBrain } from "./supervise-CAJWyXQ-.js";
5
+ import { r as driverAgent } from "./coordination-driver-BR52Rt39.js";
6
+ import { i as runGraphWithTestBrain } from "./graph-BtMQMQin.js";
7
7
  import { SANDBOX_SIZE_PRESET_NAMES } from "@tangle-network/agent-interface";
8
8
  //#region src/testing/fixtures/agent-improvement-proposal.json
9
9
  var agent_improvement_proposal_default = {
10
10
  changedSurfaces: ["prompt"],
11
- digest: "sha256:6e82ad15ab3d4ce4f73913de01f1e13ebc68bb4b4d9120b43382f01954dd956e",
11
+ digest: "sha256:c955600d688a194cfb429c3c6165a5b8f16ca1634597cab757af0b05cd3290e3",
12
12
  evaluation: {
13
13
  "decision": {
14
14
  "contributingChecks": [
@@ -4579,7 +4579,7 @@ var agent_improvement_proposal_default = {
4579
4579
  ],
4580
4580
  "metadata": {
4581
4581
  "fixture": "agent-improvement-proposal",
4582
- "runtimeVersion": "0.231.1"
4582
+ "runtimeVersion": "0.233.0"
4583
4583
  },
4584
4584
  "objectives": [
4585
4585
  {
@@ -4690,8 +4690,8 @@ var agent_improvement_proposal_default = {
4690
4690
  "baselineContentHash": "sha256:5c21ee53e513fc604cb09754e21c392b24a424da0ef37dbf8f1ee4a8a0b08f09",
4691
4691
  "candidateContentHash": "sha256:60fcbb1c728194bd51d7d19cb732d1c3f1881dce7e0a6266b41c8b98cfd65693",
4692
4692
  "kind": "agent-eval-loop",
4693
- "recordDigest": "sha256:e26e7e4ff57e2509e042c553c638f579680f438553fbede8b8d51c35b2c6be68",
4694
- "runId": "agent-runtime-0.231.1-proposal-fixture",
4693
+ "recordDigest": "sha256:cbf8298e0f8dd8a60ef8fe8ce3cc4b5c214e35a3c40c05c167e22a4848c43a90",
4694
+ "runId": "agent-runtime-0.233.0-proposal-fixture",
4695
4695
  "schema": "agent-candidate-experiment"
4696
4696
  }
4697
4697
  },
@@ -4714,13 +4714,13 @@ var agent_improvement_proposal_default = {
4714
4714
  }],
4715
4715
  kind: "agent-improvement-proposal",
4716
4716
  proposedAt: "2026-07-10T01:00:00.000Z",
4717
- runId: "agent-runtime-0.231.1-proposal-fixture"
4717
+ runId: "agent-runtime-0.233.0-proposal-fixture"
4718
4718
  };
4719
4719
  //#endregion
4720
4720
  //#region src/testing/fixtures/agent-profile-improvement-proposal.json
4721
4721
  var agent_profile_improvement_proposal_default = {
4722
4722
  changedSurfaces: ["prompt", "skills"],
4723
- digest: "sha256:d02c9c48865e63a968095846d85416c925186c770caca400680b2448988414f8",
4723
+ digest: "sha256:a28e23a8892b3d8ba6c66c374750e321b06bc036fad7aa76984e617cdc378ff3",
4724
4724
  evaluation: {
4725
4725
  "decision": {
4726
4726
  "contributingChecks": [
@@ -6354,7 +6354,7 @@ var agent_profile_improvement_proposal_default = {
6354
6354
  ],
6355
6355
  "metadata": {
6356
6356
  "fixture": "agent-profile-improvement-proposal",
6357
- "runtimeVersion": "0.231.1"
6357
+ "runtimeVersion": "0.233.0"
6358
6358
  },
6359
6359
  "objectives": [
6360
6360
  {
@@ -6465,7 +6465,7 @@ var agent_profile_improvement_proposal_default = {
6465
6465
  "baselineContentHash": "sha256:21c495a37c418c10bde64fbaa188beddeed31f1f051ea60a6a6582a9ee0db704",
6466
6466
  "candidateContentHash": "sha256:103f77bc8481601eef1ad5fe6ba84a40dffabc3a44f421f8c8559121edab84e9",
6467
6467
  "kind": "agent-eval-loop",
6468
- "recordDigest": "sha256:5cad90b609c3f39e1fe23ea5a140b10fb58221ee0b7aabf12b62a8e5c0e3b58c",
6468
+ "recordDigest": "sha256:1bcc70b1e1bb5a020da56e97fcc4a2d89824ecf8ca59b2e0232b868333daa4c4",
6469
6469
  "runId": "profile-improvement-1",
6470
6470
  "schema": "agent-profile-improvement-experiment"
6471
6471
  }
@@ -1,4 +1,4 @@
1
- import { Ct as ProvisionedSupervisor, St as ProvisionSupervisorRequest, Tt as provisionSupervisor, wt as SupervisorCleanupReceipt, xt as ProvisionSupervisorConnection } from "../index-BW6lJXnH.js";
1
+ import { Ct as ProvisionedSupervisor, St as ProvisionSupervisorRequest, Tt as provisionSupervisor, wt as SupervisorCleanupReceipt, xt as ProvisionSupervisorConnection } from "../index-BwWBXoyq.js";
2
2
  //#region src/tui/top-app.d.ts
3
3
  /**
4
4
  * The interactive side of the supervisor-run TUI: a keypress/mouse loop over the frames
package/dist/tui/index.js CHANGED
@@ -1,3 +1,3 @@
1
- import { t as provisionSupervisor } from "../provision-supervisor-DyNDlA2I.js";
1
+ import { t as provisionSupervisor } from "../provision-supervisor-BME3OgTk.js";
2
2
  import { a as renderTopFrameWithLayout, i as renderTopFrame, n as runTopApp, r as loadTopSnapshot, t as renderTopOnce } from "../top-app-CMMd8DgR.js";
3
3
  export { loadTopSnapshot, provisionSupervisor, renderTopFrame, renderTopFrameWithLayout, renderTopOnce, runTopApp };
@@ -1743,34 +1743,121 @@ type RecoverRetainedRunResult = {
1743
1743
  readonly environment: AgentEnvironment;
1744
1744
  };
1745
1745
  //#endregion
1746
- //#region src/runtime/native-session-evidence.d.ts
1747
- declare const NATIVE_SESSION_SCHEMA_VERSION: 1;
1748
- interface NativeSessionFile {
1746
+ //#region src/runtime/harness-transcript.d.ts
1747
+ declare const HARNESS_TRANSCRIPT_SCHEMA_VERSION: 1;
1748
+ interface HarnessTranscriptFile {
1749
1749
  readonly path: string;
1750
1750
  readonly bytes: number;
1751
1751
  readonly content: string;
1752
1752
  }
1753
- interface NativeSessionArtifact {
1754
- readonly schemaVersion: typeof NATIVE_SESSION_SCHEMA_VERSION;
1753
+ interface HarnessTranscriptArtifact {
1754
+ readonly schemaVersion: typeof HARNESS_TRANSCRIPT_SCHEMA_VERSION;
1755
1755
  readonly harness: string;
1756
- readonly files: readonly NativeSessionFile[];
1756
+ readonly files: readonly HarnessTranscriptFile[];
1757
1757
  /** Paths found but not read, with why — a gap named is a gap an operator can act on. */
1758
1758
  readonly skipped: readonly {
1759
1759
  readonly path: string;
1760
1760
  readonly reason: string;
1761
1761
  }[];
1762
1762
  }
1763
- type NativeSessionEvidence = {
1763
+ /** Why no transcript reached a record, from either the capture or the settle path. */
1764
+ type HarnessTranscriptUnavailableReason = 'unsupported-environment' | 'unknown-harness' | 'no-transcript' | 'enumeration-failed' |
1765
+ /** No environment was ever created for this child, so there is no transcript and never
1766
+ * was one. The admission refusal of #1240 is the measured case: a budget pool that
1767
+ * refuses an unknown dollar cost kills the child before it runs. Distinct from
1768
+ * `unsupported-environment`, which means a box existed and could not be read. */
1769
+ 'execution-never-started' |
1770
+ /** An environment WAS created and the child ran, but the capture never executed — the
1771
+ * deadline/abort path closes the stream with `iterator.return()`, which runs the
1772
+ * generator's `finally` and skips its `catch`. Says only what is known: this child had a
1773
+ * transcript and nobody read it. Never collapse it into `execution-never-started`; that
1774
+ * would report a child that reasoned for twenty seconds as one that never ran. */
1775
+ 'capture-did-not-run' |
1776
+ /** This executor implements no transcript port at all: a CLI, in-process, bridge, or
1777
+ * sandbox-session executor that has no capture yet. An absence by construction, never a
1778
+ * failure — and never a claim that the harness wrote nothing. */
1779
+ 'executor-exposes-no-transcript' |
1780
+ /** Session files were found and none was carried: every path was refused, over budget,
1781
+ * unreadable, or skipped by an abort. The `skipped` list beside this reason names each one,
1782
+ * so "there was a transcript and it was not kept" never reads as "no transcript". */
1783
+ 'nothing-carried' |
1784
+ /** The capture succeeded and the blob write did not. The transcript existed in memory and
1785
+ * never reached disk; mirrors `trace-persistence-failed` on the tool-span receipt. */
1786
+ 'transcript-persistence-failed';
1787
+ interface HarnessTranscriptUnavailable {
1788
+ readonly status: 'unavailable';
1789
+ readonly reason: HarnessTranscriptUnavailableReason;
1790
+ /** Present with `nothing-carried`: the paths that existed and why each was not read. */
1791
+ readonly skipped?: readonly {
1792
+ readonly path: string;
1793
+ readonly reason: string;
1794
+ }[];
1795
+ }
1796
+ /**
1797
+ * What the executor holds in memory between the read and the settle: the files, inline.
1798
+ *
1799
+ * Never journaled and never inside a result blob. The scope persists it under its own content
1800
+ * ref and records the {@link HarnessTranscriptEvidence} receipt instead, so the settlement stays
1801
+ * small and a replay pays nothing for a transcript nobody opens.
1802
+ */
1803
+ type HarnessTranscriptCapture = {
1804
+ readonly status: 'captured';
1805
+ readonly artifact: HarnessTranscriptArtifact;
1806
+ readonly fileCount: number;
1807
+ readonly totalBytes: number;
1808
+ /** Non-zero when some transcript was found but deliberately not carried. */
1809
+ readonly skippedCount: number;
1810
+ } | HarnessTranscriptUnavailable;
1811
+ /**
1812
+ * The durable receipt on a settlement: a content-addressed pointer to a persisted
1813
+ * {@link HarnessTranscriptArtifact}, or the exact reason there is none. A SIBLING of the tool-span
1814
+ * `trace` receipt, never nested inside it — a dropped child has zero tool spans and an
1815
+ * unavailable trace, and it is precisely the child whose transcript this exists to keep.
1816
+ */
1817
+ type HarnessTranscriptEvidence = {
1764
1818
  readonly status: 'available';
1765
- readonly artifact: NativeSessionArtifact;
1819
+ /** Content-addressed pointer to a persisted `HarnessTranscriptArtifact` in the run's blobs. */
1820
+ readonly transcriptRef: string;
1821
+ readonly harness: string;
1766
1822
  readonly fileCount: number;
1767
1823
  readonly totalBytes: number;
1768
1824
  /** Non-zero when some transcript was found but deliberately not carried. */
1769
1825
  readonly skippedCount: number;
1770
- } | {
1771
- readonly status: 'unavailable';
1772
- readonly reason: 'unsupported-environment' | 'unknown-harness' | 'no-transcript' | 'enumeration-failed';
1773
- };
1826
+ } | HarnessTranscriptUnavailable;
1827
+ /** The two optional environment reads the capture needs. Public because `captureHarnessTranscript`
1828
+ * is, so a BYO executor can satisfy it with any box that offers a bounded `read` and an `exec`. */
1829
+ interface ReadableEnvironment {
1830
+ readonly read?: (path: string, options?: {
1831
+ readonly signal?: AbortSignal;
1832
+ }) => Promise<string>;
1833
+ readonly exec?: (command: string, options?: Record<string, unknown>) => Promise<{
1834
+ readonly stdout?: string;
1835
+ readonly exitCode?: number;
1836
+ }>;
1837
+ }
1838
+ /**
1839
+ * Read the harness transcript out of one LIVE environment.
1840
+ *
1841
+ * Call this before the environment is destroyed — on the settled path that means before the
1842
+ * result is built, since the `finally` that destroys runs after. It never throws: a teardown
1843
+ * must not fail because evidence could not be collected, and every failure mode is a named
1844
+ * `reason` the settled receipt carries instead of an empty artifact that reads as coverage.
1845
+ */
1846
+ declare function captureHarnessTranscript(environment: ReadableEnvironment | undefined, harness: string | undefined, signal?: AbortSignal): Promise<HarnessTranscriptCapture>;
1847
+ /**
1848
+ * Persist a capture under its own content ref and return the receipt a settlement carries.
1849
+ *
1850
+ * The scope calls this, not the executor: storage stays out of every provider and destroy site,
1851
+ * exactly as the tool-span trace is persisted by `captureWorkerTraceEvidence` and not by the
1852
+ * source that collected it. A capture that is already unavailable passes through untouched.
1853
+ */
1854
+ declare function persistHarnessTranscript(capture: HarnessTranscriptCapture, blobs: Pick<ResultBlobStore, 'put'>): Promise<HarnessTranscriptEvidence>;
1855
+ /**
1856
+ * Rehydrate the exact persisted transcript a receipt points at, or `undefined` when the receipt
1857
+ * says there is none. Throws only when the receipt claims a blob the store does not hold — that
1858
+ * is corruption, not absence, and must not read as "no transcript".
1859
+ */
1860
+ declare function harnessTranscriptArtifact(evidence: HarnessTranscriptEvidence, blobs: Pick<ResultBlobStore, 'get'>): Promise<HarnessTranscriptArtifact | undefined>;
1774
1861
  //#endregion
1775
1862
  //#region src/runtime/retained-interactive-types.d.ts
1776
1863
  /** Environment and exact AgentProfile used to start one native coding-agent process. @stable */
@@ -2729,6 +2816,18 @@ interface Executor<Out> {
2729
2816
  * executors omit it (returns `undefined`).
2730
2817
  */
2731
2818
  metered?(): Spend | undefined;
2819
+ /**
2820
+ * The child's OWN harness transcript, read out of its environment while that environment was
2821
+ * still live. Read on settle, valid after `execute` resolves OR throws — the throw half is the
2822
+ * point: a child that drops produces no result artifact, so before this the only carrier was
2823
+ * the settled result and a dropped child's reasoning died with its box (#1244).
2824
+ *
2825
+ * An executor with no transcript to offer omits the method entirely; the settle path then
2826
+ * records `executor-exposes-no-transcript` rather than an empty artifact that reads as
2827
+ * coverage. Never throws. Returns the in-memory capture; the SCOPE persists it under its own
2828
+ * content ref and settles the receipt, so no executor ever learns about storage.
2829
+ */
2830
+ harnessTranscript?(): HarnessTranscriptCapture | undefined;
2732
2831
  }
2733
2832
  /** Why Runtime cannot provide structured tool-call evidence for one settled execution. */
2734
2833
  type WorkerTraceUnavailableReason = 'execution-did-not-start' | 'executor-did-not-expose-trace-source' | 'trace-source-unavailable' | 'no-tool-spans-captured' | 'invalid-tool-spans' | 'trace-collection-failed' | 'trace-persistence-failed' | 'legacy-settlement-without-trace-evidence' | 'not-an-executor';
@@ -2738,16 +2837,6 @@ type WorkerTraceEvidence = {
2738
2837
  /** Content-addressed pointer to a persisted `WorkerToolTraceArtifact`. */
2739
2838
  readonly traceRef: string;
2740
2839
  readonly spanCount: number;
2741
- /**
2742
- * The child's OWN harness transcript, read out of its environment before destroy.
2743
- *
2744
- * `traceRef` above points at the supervisor's tool spans: toolName, args, status,
2745
- * callId, with startedAt === endedAt. It carries no assistant text, no reasoning and
2746
- * no tool results, so `status: 'available'` on this object never meant the child's
2747
- * session survived — it was destroyed with the environment. This says whether it did.
2748
- * Absent on a settlement recorded before the capture existed.
2749
- */
2750
- readonly nativeSession?: NativeSessionEvidence;
2751
2840
  } | {
2752
2841
  readonly status: 'unavailable';
2753
2842
  readonly reason: WorkerTraceUnavailableReason;
@@ -3390,6 +3479,12 @@ type Settled<Out> = {
3390
3479
  providerModel?: ProviderModelExecutionEvidence;
3391
3480
  /** Structured tool evidence captured before this settlement was journaled. */
3392
3481
  trace: WorkerTraceEvidence;
3482
+ /** Whether the child's OWN harness transcript survived its environment, or why it did not.
3483
+ * A SIBLING of `trace`, not a field inside it: `trace` carries the supervisor's tool spans
3484
+ * (toolName, args, status, callId, startedAt === endedAt) and nothing the child said, and a
3485
+ * child with zero tool spans has an UNAVAILABLE trace — so a receipt nested inside the
3486
+ * available arm could never describe exactly the children that need it most (#1244). */
3487
+ harnessTranscript?: HarnessTranscriptEvidence;
3393
3488
  /** Present when the measured spend exceeded this child's reservation. */
3394
3489
  budgetViolation?: BudgetViolation;
3395
3490
  /** Epoch ms parsed from the durable settlement record when available. */
@@ -3406,10 +3501,22 @@ type Settled<Out> = {
3406
3501
  infra: boolean;
3407
3502
  /** Partial structured tool evidence captured before this failure was journaled. */
3408
3503
  trace: WorkerTraceEvidence;
3504
+ /** The child's own harness transcript, read out of its environment at the last moment it
3505
+ * was live, or the named reason it could not be. This is the path the capture existed
3506
+ * for and never covered: a dropped child produces no result artifact, so before #1244
3507
+ * its reasoning was destroyed with its box. */
3508
+ harnessTranscript?: HarnessTranscriptEvidence;
3409
3509
  /** Partial provider model evidence survives an aborted or failed execution. */
3410
3510
  providerModel?: ProviderModelExecutionEvidence;
3411
3511
  /** Present when the spend reconciled for this child exceeded its reservation. */
3412
3512
  budgetViolation?: BudgetViolation;
3513
+ /** Present only when this child's provider execution was RETAINED (see
3514
+ * `RetainedExecutionState`); absent on an ordinary down. `'pending'` on the settlement the
3515
+ * driver receives at the reconcile; `'released'` on the replayed settlement of a node the
3516
+ * release sweep closed. The driver and every replay reader see the fact the journal
3517
+ * states, so a reader never splits this population on `reason` text — which is identical
3518
+ * on every one of these children. */
3519
+ retainedExecution?: RetainedExecutionState;
3413
3520
  /** Epoch ms parsed from the durable settlement/cancellation record when available. */
3414
3521
  settledAt?: number;
3415
3522
  seq: number;
@@ -3650,6 +3757,11 @@ interface NodeSnapshot {
3650
3757
  readonly trace?: WorkerTraceEvidence;
3651
3758
  /** Present once a settled node's measured spend exceeded its reservation. */
3652
3759
  readonly budgetViolation?: BudgetViolation;
3760
+ /** Present on a retained child: `'pending'` while its cursor slot is open, `'released'` once
3761
+ * the release sweep closed it. The live view (`makeTreeView`) and the journal view
3762
+ * (`materializeTreeView`) state the same fact, so a settle record's `tree` answers the
3763
+ * retained-vs-down question without the observer journal. */
3764
+ readonly retainedExecution?: RetainedExecutionState;
3653
3765
  }
3654
3766
  /** The live tree — what `scope.view` / `RootHandle.view()` materialize for a viewer. */
3655
3767
  interface TreeView {
@@ -3744,8 +3856,23 @@ type SpawnEvent = {
3744
3856
  reason?: string;
3745
3857
  /** Structured tool evidence. Optional only for journals written before trace capture. */
3746
3858
  trace?: WorkerTraceEvidence;
3859
+ /** Whether this child's harness transcript survived, or the named reason it did not.
3860
+ * Absent on journals written before the capture existed — which is not the same fact as
3861
+ * a recorded `unavailable`, and is why this stays optional rather than defaulting. */
3862
+ harnessTranscript?: HarnessTranscriptEvidence;
3747
3863
  /** Present when the reconciled spend exceeded the reservation, on either status. */
3748
3864
  budgetViolation?: BudgetViolation;
3865
+ /** Written only by the release sweep, on the same tree, after every `environment-teardown`
3866
+ * receipt for the node reads `destroyed: true` and the executor's own teardown confirmed.
3867
+ * `spent` is this node's child-work component of the reconcile the pool committed — for
3868
+ * a leaf the streamed floor itself, for a recursive executor its `accounting().reported`
3869
+ * split with the remainder on its `metered` records — never the reservation ceiling.
3870
+ * `reason`/`infra`/`trace`/`harnessTranscript`/`outRef`/`providerModel` are the
3871
+ * settlement the driver received, verbatim; `seq` is the cursor seq stamped on that
3872
+ * delivery, so replay yields it at the position the driver saw it; `at` is the settlement
3873
+ * instant, and the release instant is on the receipt immediately before it. Typed so a
3874
+ * `'pending'` can never be journaled: the journal states that as `reconciled`. */
3875
+ retainedExecution?: Extract<RetainedExecutionState, 'released'>;
3749
3876
  seq: number;
3750
3877
  at: string;
3751
3878
  } | {
@@ -3757,8 +3884,14 @@ type SpawnEvent = {
3757
3884
  spent?: Spend;
3758
3885
  providerModel?: ProviderModelExecutionEvidence;
3759
3886
  trace?: WorkerTraceEvidence;
3887
+ /** The child's harness transcript receipt, when the executor could still be read at the
3888
+ * cancel. The settle path writes it on this record exactly as on `settled`. */
3889
+ harnessTranscript?: HarnessTranscriptEvidence;
3760
3890
  outRef?: string;
3761
3891
  budgetViolation?: BudgetViolation;
3892
+ /** As on `settled`: a retained child that was cancelled settles `cancelled`, and the one
3893
+ * builder writes whichever kind the settlement had. */
3894
+ retainedExecution?: Extract<RetainedExecutionState, 'released'>;
3762
3895
  seq: number;
3763
3896
  at: string;
3764
3897
  } | {
@@ -3862,12 +3995,19 @@ type SpawnEvent = {
3862
3995
  * observed, while its cursor slot stays OPEN so a resume can recover the execution. It stands
3863
3996
  * in for the `settled` record an open node cannot carry: cost readers and a restored pool
3864
3997
  * charge this floor for the node instead of its declared ceiling, and a later `settled` or
3865
- * `cancelled` record for the same node supersedes it. A driver's own inference travels on its
3998
+ * `cancelled` record for the same node supersedes it. That record has two writers: a
3999
+ * resumed process's recovered settlement, or the release sweep's terminal record marked
4000
+ * `retainedExecution: 'released'`. A driver's own inference travels on its
3866
4001
  * `metered` record as on every other path, so `reconciled + metered` is what the pool
3867
4002
  * committed. Its `seq` lives outside the cursor-uniqueness namespace. */
3868
4003
  kind: 'reconciled';
3869
4004
  id: NodeId;
3870
4005
  spent: Spend;
4006
+ /** The transcript receipt of a retained-pending child. This record is the ONLY durable home
4007
+ * it has: the node writes no `settled` record while its slot stays open, and these are the
4008
+ * #1244 children exactly — dropped mid-run with a live box the capture read. A later
4009
+ * terminal record for the node carries the same receipt forward. */
4010
+ harnessTranscript?: HarnessTranscriptEvidence;
3871
4011
  seq: number;
3872
4012
  at: string;
3873
4013
  } | {
@@ -3890,7 +4030,11 @@ type SpawnEvent = {
3890
4030
  * the environment its executor kept for recovery could never be recovered; this is the
3891
4031
  * receipt of the supervisor's release, one per environment, naming the provider's own id
3892
4032
  * so a fleet listing can be reconciled against it. A `destroyed: false` receipt carries why
3893
- * in `detail`, and the node is then also journaled as `teardown-unconfirmed`.
4033
+ * in `detail`, and the node is then also journaled as `teardown-unconfirmed`. When every
4034
+ * receipt for a node is `destroyed: true` and the executor confirms teardown, the node's
4035
+ * terminal `settled`/`cancelled` record with `retainedExecution: 'released'` follows on
4036
+ * the same tree and closes the cursor slot; a `destroyed: false` receipt or an unconfirmed
4037
+ * teardown leaves the slot open because the environment may still exist.
3894
4038
  * Informational: replay, `materializeTreeView`, and cost readers skip it, and its `seq` is
3895
4039
  * per node, outside the cursor-uniqueness namespace. */
3896
4040
  kind: 'environment-teardown';
@@ -4042,7 +4186,11 @@ interface SupervisorOpts {
4042
4186
  * - `'release'`: the run will not be resumed, so nothing would ever reconcile or release those
4043
4187
  * environments. The join barrier releases each one and journals an `environment-teardown`
4044
4188
  * receipt per environment. Measured 2026-09-11: four settled runs held 18 of a 60-slot
4045
- * Sandbox fleet for 19 to 37 hours without it.
4189
+ * Sandbox fleet for 19 to 37 hours without it. It then closes each released child's cursor
4190
+ * slot with a terminal record marked `retainedExecution: 'released'`, so `spendGaps` names
4191
+ * it `unreported` (a floor) rather than `never-settled` (a ceiling) and
4192
+ * `fleetYield.releasedUnrecovered` counts it; a refused release leaves the slot open and
4193
+ * the node in `teardownUnconfirmed`.
4046
4194
  * - `'keep'`: a later process may resume this run, so the environments stay for its recovery.
4047
4195
  *
4048
4196
  * Default: `'keep'` when `resume` is true (a durable run a later process may continue), else
@@ -4148,6 +4296,53 @@ interface SpendGap {
4148
4296
  readonly kind: 'never-settled' | 'unreported';
4149
4297
  readonly channels: ReadonlyArray<SpendChannel>;
4150
4298
  }
4299
+ /**
4300
+ * The recorded fate of a child whose provider execution was RETAINED: admitted durably, with no
4301
+ * accepted terminal result when local observation stopped (the `RetainedExecutionPendingError`
4302
+ * path). Not a failure classification — the child is `down` either way.
4303
+ *
4304
+ * - `'pending'`: the reservation was reconciled at a floor, the cursor slot is open, and the
4305
+ * environment is kept so a resume can reconcile the paid execution. Only ever on the in-memory
4306
+ * `Settled` and the first `agent.child` payload; the journal states it as the `reconciled`
4307
+ * record and replay never yields it. For an executor without `releaseRetained` it means only
4308
+ * that nothing could be released.
4309
+ * - `'released'`: root settlement under `retainedAtSettlement: 'release'` destroyed the
4310
+ * environment (executor-confirmed) before any process recovered the execution; this is the
4311
+ * node's terminal record. The pool's own admission fault, if the reconcile raised one, is not
4312
+ * on this record.
4313
+ *
4314
+ * Absent = an ordinary child. The live `Settled` a driver branched on carried `'pending'` where
4315
+ * replay yields `'released'` for the same seq, so a resume-aware driver must not branch on the
4316
+ * two values. No `'recovered'` value exists yet: a live-adopted recovery settles on the ordinary
4317
+ * path and the recorded-result path writes no marker.
4318
+ */
4319
+ type RetainedExecutionState = 'pending' | 'released';
4320
+ /**
4321
+ * How this run's spawned CHILDREN ended, counted by node id off the complete journal FOREST at
4322
+ * root settlement — after the join barrier and the release sweep, so the terminal records the
4323
+ * sweep wrote are included, and forest-wide so a director's grandchildren count (the population
4324
+ * the observer projection shows). Invariant: `spawned === done + down + cancelled + neverSettled`.
4325
+ * Distinct from a no-winner's `downCount`, the breaker's tally of ordinary down settlements: a
4326
+ * released record is the driver's earlier down re-stated, so the breaker skips it and
4327
+ * `downCount` never includes a retained child, while `down` here does. `spendGaps` stays
4328
+ * root-tree scoped, so on a nested run the two disagree by design.
4329
+ */
4330
+ interface FleetYield {
4331
+ /** Every `spawned` record with a parent; the run root and an owned tree's re-rooted owner copy
4332
+ * are exempt. */
4333
+ readonly spawned: number;
4334
+ readonly done: number;
4335
+ /** `settled` records with `status: 'down'`, released records included. */
4336
+ readonly down: number;
4337
+ readonly cancelled: number;
4338
+ /** Spawned with no terminal record: a crash-orphaned child, a refused release, or a retained
4339
+ * executor with nothing to release. Named after `SpendGap`'s `never-settled`. */
4340
+ readonly neverSettled: number;
4341
+ /** Terminal records marked `retainedExecution: 'released'` — a subset of `down + cancelled`.
4342
+ * A nested manager whose OWN retained execution was released counts here beside the
4343
+ * grandchildren it released, because its execution was destroyed unrecovered too. */
4344
+ readonly releasedUnrecovered: number;
4345
+ }
4151
4346
  /**
4152
4347
  * One channel on which a settled reservation's measured spend exceeded what it reserved.
4153
4348
  * `tokens` is in the pool's charged unit (`chargedTokens`), `usd` is measured dollars, and a
@@ -4200,6 +4395,8 @@ type SupervisedResult<Out> = {
4200
4395
  /** The journaled nodes whose usage accounting is incomplete — the named gaps behind a
4201
4396
  * `false` `tokensKnown`/`usdKnown` on `spentTotal`. Present exactly when non-empty. */
4202
4397
  spendGaps?: ReadonlyArray<SpendGap>;
4398
+ /** How the fleet ended, see `FleetYield`. Always present: zeros are facts. */
4399
+ fleetYield: FleetYield;
4203
4400
  /** Where `spentTotal` went: `driverInference` = the drivers' own chat turns (metered via
4204
4401
  * `Scope.meter`); `childWork` = every spawned child's reconciled spend (the journal sum).
4205
4402
  * `driverInference + childWork === spentTotal` on `iterations`/`tokens`/`usd`; the
@@ -4245,6 +4442,8 @@ type SupervisedResult<Out> = {
4245
4442
  /** The journaled nodes whose usage accounting is incomplete — the named gaps behind a
4246
4443
  * `false` `tokensKnown`/`usdKnown` on `spentTotal`. Present exactly when non-empty. */
4247
4444
  spendGaps?: ReadonlyArray<SpendGap>;
4445
+ /** How the fleet ended, see `FleetYield`. Always present: zeros are facts. */
4446
+ fleetYield: FleetYield;
4248
4447
  /** Never present on a lifecycle arm — the discriminant, not prose, is what makes
4249
4448
  * `if (r.reason === 'driver-failed') r.error.message` compile and every other arm refuse it. */
4250
4449
  error?: never;
@@ -4292,6 +4491,8 @@ type SupervisedResult<Out> = {
4292
4491
  /** The journaled nodes whose usage accounting is incomplete — the named gaps behind a
4293
4492
  * `false` `tokensKnown`/`usdKnown` on `spentTotal`. Present exactly when non-empty. */
4294
4493
  spendGaps?: ReadonlyArray<SpendGap>;
4494
+ /** How the fleet ended, see `FleetYield`. Always present: zeros are facts. */
4495
+ fleetYield: FleetYield;
4295
4496
  /** The driver's own rejection, carried across the typed no-winner boundary so the failure is
4296
4497
  * recoverable by the caller. A non-`Error` rejection is normalized, never dropped. */
4297
4498
  error: NoWinnerError;
@@ -4341,5 +4542,5 @@ interface WidenGate<Out> {
4341
4542
  readonly judgeExempt?: boolean;
4342
4543
  }
4343
4544
  //#endregion
4344
- export { Spend as $, RetainedInteractiveEnvironmentAdmission as $n, RunProvenance as $r, RuntimeStreamEventSummary as $t, NodeSnapshot as A, RuntimeCanonicalStreamEvent as Ai, ExecutorProgress as An, DefaultVerdict$1 as Ar, EvalRunsExportConfig as At, RootHandle as B, RetainedInteractiveStartMaterial as Bn, LoopPlanDescription as Br, buildLoopSpanNodes as Bt, ExecutorToolCall as C, BackendErrorDetail as Ci, TraceSource as Cn, ReservationHolder as Cr, TraceContext as Ct, NoWinnerError as D, OpenAIChatToolChoice as Di, ActivityLog as Dn, createBudgetPool as Dr, traceContextToEnv as Dt, MaterializedModelIdentity as E, OpenAIChatTool as Ei, sandboxSessionTraceSource as En, ReservationTicket as Er, readTraceContextFromEnv as Et, ResourceLimit as F, ReconnectRetainedInteractiveRunOptions as Fn, LoopEndedPayload as Fr, OtelExportConfig as Ft, Runtime as G, NativeContextContinuationExecution as Gn, LoopTeardownFailedPayload as Gr, generateSpanId as Gt, RootProviderModelEvidence as H, NativeSessionArtifact as Hn, LoopResult as Hr, createOpenInferenceFileExporter as Ht, ResourceSpend as I, RecoverRetainedInteractiveRunOptions as In, LoopIterationDispatchPayload as Ir, OtelExporter as It, SpawnEvent as J, ReconnectRetainedRunOptions as Jn, LoopTraceEvent as Jr, padTraceId as Jt, Scope as K, NativeContextContinuationHandle as Kn, LoopTokenUsage as Kr, loopEventToOtelSpan as Kt, ResultBlobStore as L, RetainedInteractiveAdmissionHook as Ln, LoopIterationEndedPayload as Lr, OtelSpan as Lt, ProfileMaterializationReceipt as M, RuntimeSessionStore as Mi, WorkerProgress as Mn, ExecCtx as Mr, INTELLIGENCE_WIRE_VERSION as Mt, ProviderModelAttemptEvidence as N, RuntimeStreamEvent as Ni, createActivityLog as Nn, Iteration as Nr, LoopSpanNode as Nt, NodeExecutionIdentity as O, RunAgentTaskOptions as Oi, ActivityNote as On, spendFromUsageEvents as Or, EvalRunEvent as Ot, ProviderModelExecutionEvidence as P, readWorkerProgress as Pn, LoopDecisionPayload as Pr, OtelAttribute as Pt, SpawnRejection as Q, RetainedInteractiveAdmission as Qn, OutputAdapter as Qr, RuntimeStreamEventSink as Qt, ResumedKeyState as R, RetainedInteractiveEnvironmentInput as Rn, LoopIterationStartedPayload as Rr, RuntimeEventOtelOptions as Rt, ExecutorTeardownWarning as S, AgentTaskStatus as Si, ToolStepInput as Sn, LeakedReservation as Sr, workerTraceSeamKey as St, MaterializedExecutionIdentity as T, OpenAIChatResponseFormat as Ti, decodeToolPart as Tn, ReservationStage as Tr, mergeTraceEnv as Tt, RootSignal as U, NativeSessionEvidence as Un, LoopSandboxPlacement as Ur, createOtelExporter as Ut, RootMaterialization as V, StartRetainedInteractiveRunOptions as Vn, LoopPlanPayload as Vr, buildRuntimeEventOtelSpans as Vt, RootStreamReceipt as W, NativeSessionFile as Wn, LoopStartedPayload as Wr, exportEvalRuns as Wt, SpawnOpts as X, RecoverRetainedRunOptions as Xn, MountManifestEntry as Xr, RuntimeEventCollector as Xt, SpawnJournal as Y, RecoverRetainedRunIntentOptions as Yn, LoopWinner as Yr, toOtelAttributes as Yt, SpawnPrior as Z, RecoverRetainedRunResult as Zn, MountRecorder as Zr, RuntimeStreamEventCollector as Zt, ExecutorMaterialization as _, AgentRuntimeEvent as _i, timerAt as _n, StartRetainedRunOptions as _r, WorkerTraceResolver as _t, BudgetOverspend as a, RuntimeRunCost as ai, sanitizeAgentRuntimeEvent as an, RetainedRunCancellation as ar, SupervisorOpts as at, ExecutorRegistry as b, AgentTaskRunResult as bi, SessionMessageLike as bn, BudgetReadout as br, workerTraceEnv as bt, EnvironmentTeardownReceipt as c, RuntimeRunPersistenceAdapter as ci, PendingWait as cn, RetainedRunEnvironmentAdmission as cr, UnconfirmedTeardown as ct, ExecutorAccounting as d, startRuntimeRun as di, WaitProbeRegistry as dn, RetainedRunIntentAdmission as dr, WaitOpts as dt, SandboxClient as ei, RuntimeTelemetryOptions as en, RetainedInteractiveIntentAdmission as er, SpendChannel as et, ExecutorCancellation as f, AgentAdapter as fi, WaitRejection as fn, RetainedRunReplayPoint as fr, WidenGate as ft, ExecutorFactory as g, AgentKnowledgeProvider as gi, pollFor as gn, StartRetainedRunInEnvironmentOptions as gr, WorkerTraceUnavailableReason as gt, ExecutorExecutionBinding as h, AgentExecutionBackend as hi, isWaitOutcome as hn, RetainedRunTurnInput as hr, WorkerTraceEvidence as ht, Budget as i, RuntimeRunCompleteInput as ii, createRuntimeStreamEventCollector as in, RetainedRunCancelOptions as ir, Supervisor as it, NodeStatus as j, RuntimeSession as ji, ScopeProgressInput as jn, Driver as jr, EvalRunsExportResult as jt, NodeId as k, RunAgentTaskStreamOptions as ki, DEFAULT_STALL_AFTER_MS as kn, AgentRunSpec as kr, EvalRunGeneration as kt, ExecutionBindingReceipt as l, RuntimeRunRow as li, WaitOutcome as ln, RetainedRunEventOptions as lr, UnknownMaterializationReason as lt, ExecutorContext as m, AgentBackendInput as mi, createWaitProbes as mn, RetainedRunStartMaterial as mr, WorkerInteractiveUnavailableReason as mt, AgentExecutionRef as n, ValidationCtx as ni, SanitizedKnowledgeRequirement as nn, RetainedRunAdmission as nr, SteerableRootHandle as nt, BudgetViolation as o, RuntimeRunHandle as oi, sanitizeKnowledgeReadinessReport as on, RetainedRunDispatchedAdmission as or, TokenUsageProvenance as ot, ExecutorCancellationRequest as p, AgentBackendContext as pi, WaitSpec as pn, RetainedRunSnapshot as pr, WorkerInteractiveSession as pt, Settled as q, NativeContextContinuationInput as qn, LoopTraceEmitter as qr, padSpanId as qt, AgentSpec as r, Validator as ri, createRuntimeEventCollector as rn, RetainedRunAdmissionHook as rr, SupervisedResult as rt, DefaultVerdict as s, RuntimeRunOptions as si, sanitizeRuntimeStreamEvent as sn, RetainedRunEffect as sr, TreeView as st, Agent as t, SelectionReceipt as ti, SanitizedKnowledgeReadinessReport as tn, RetainedInteractiveStartedAdmission as tr, SpendGap as tt, Executor as u, RuntimeRunStatus as ui, WaitProbe as un, RetainedRunHandle as ur, UsageEvent as ut, ExecutorNodeContext as v, AgentRuntimeEventSink as vi, validateWaitSpec as vn, BudgetPool as vr, WorkerTraceSeamCarrier as vt, Handle as w, KnowledgeReadinessDecision as wi, createPushTraceSource as wn, ReservationRejection as wr, createPropagatingTraceEmitter as wt, ExecutorResult as x, AgentTaskSpec as xi, SessionTraceBox as xn, BudgetReconcileFault as xr, workerTraceHeaders as xt, ExecutorProgressEvent as y, AgentTaskContext as yi, waitUntil as yn, BudgetPoolRestore as yr, readWorkerTraceContext as yt, ResumedWork as z, RetainedInteractiveRunHandle as zn, LoopLineageOptions as zr, buildLoopOtelSpans as zt };
4345
- //# sourceMappingURL=types-DBovefLD.d.ts.map
4545
+ export { SpawnPrior as $, persistHarnessTranscript as $n, LoopStartedPayload as $r, RuntimeStreamEventCollector as $t, NodeId as A, AgentTaskSpec as Ai, ActivityNote as An, BudgetReconcileFault as Ar, EvalRunEvent as At, ResumedWork as B, RuntimeSession as Bi, RetainedInteractiveEnvironmentInput as Bn, Driver as Br, RuntimeEventOtelOptions as Bt, ExecutorToolCall as C, AgentBackendInput as Ci, SessionTraceBox as Cn, RetainedRunStartMaterial as Cr, workerTraceHeaders as Ct, MaterializedModelIdentity as D, AgentRuntimeEventSink as Di, decodeToolPart as Dn, BudgetPool as Dr, mergeTraceEnv as Dt, MaterializedExecutionIdentity as E, AgentRuntimeEvent as Ei, createPushTraceSource as En, StartRetainedRunOptions as Er, createPropagatingTraceEmitter as Et, ProviderModelExecutionEvidence as F, OpenAIChatTool as Fi, createActivityLog as Fn, ReservationTicket as Fr, LoopSpanNode as Ft, RootSignal as G, HarnessTranscriptCapture as Gn, LoopIterationDispatchPayload as Gr, createOtelExporter as Gt, RootHandle as H, RuntimeStreamEvent as Hi, RetainedInteractiveStartMaterial as Hn, Iteration as Hr, buildLoopSpanNodes as Ht, ResourceLimit as I, OpenAIChatToolChoice as Ii, readWorkerProgress as In, createBudgetPool as Ir, OtelAttribute as It, Scope as J, HarnessTranscriptUnavailable as Jn, LoopLineageOptions as Jr, loopEventToOtelSpan as Jt, RootStreamReceipt as K, HarnessTranscriptEvidence as Kn, LoopIterationEndedPayload as Kr, exportEvalRuns as Kt, ResourceSpend as L, RunAgentTaskOptions as Li, ReconnectRetainedInteractiveRunOptions as Ln, spendFromUsageEvents as Lr, OtelExportConfig as Lt, NodeStatus as M, BackendErrorDetail as Mi, ExecutorProgress as Mn, ReservationHolder as Mr, EvalRunsExportConfig as Mt, ProfileMaterializationReceipt as N, KnowledgeReadinessDecision as Ni, ScopeProgressInput as Nn, ReservationRejection as Nr, EvalRunsExportResult as Nt, NoWinnerError as O, AgentTaskContext as Oi, sandboxSessionTraceSource as On, BudgetPoolRestore as Or, readTraceContextFromEnv as Ot, ProviderModelAttemptEvidence as P, OpenAIChatResponseFormat as Pi, WorkerProgress as Pn, ReservationStage as Pr, INTELLIGENCE_WIRE_VERSION as Pt, SpawnOpts as Q, harnessTranscriptArtifact as Qn, LoopSandboxPlacement as Qr, RuntimeEventCollector as Qt, ResultBlobStore as R, RunAgentTaskStreamOptions as Ri, RecoverRetainedInteractiveRunOptions as Rn, AgentRunSpec as Rr, OtelExporter as Rt, ExecutorTeardownWarning as S, AgentBackendContext as Si, SessionMessageLike as Sn, RetainedRunSnapshot as Sr, workerTraceEnv as St, Handle as T, AgentKnowledgeProvider as Ti, TraceSource as Tn, StartRetainedRunInEnvironmentOptions as Tr, TraceContext as Tt, RootMaterialization as U, StartRetainedInteractiveRunOptions as Un, LoopDecisionPayload as Ur, buildRuntimeEventOtelSpans as Ut, RetainedExecutionState as V, RuntimeSessionStore as Vi, RetainedInteractiveRunHandle as Vn, ExecCtx as Vr, buildLoopOtelSpans as Vt, RootProviderModelEvidence as W, HarnessTranscriptArtifact as Wn, LoopEndedPayload as Wr, createOpenInferenceFileExporter as Wt, SpawnEvent as X, ReadableEnvironment as Xn, LoopPlanPayload as Xr, padTraceId as Xt, Settled as Y, HarnessTranscriptUnavailableReason as Yn, LoopPlanDescription as Yr, padSpanId as Yt, SpawnJournal as Z, captureHarnessTranscript as Zn, LoopResult as Zr, toOtelAttributes as Zt, ExecutorMaterialization as _, RuntimeRunPersistenceAdapter as _i, isWaitOutcome as _n, RetainedRunEnvironmentAdmission as _r, WorkerTraceEvidence as _t, BudgetOverspend as a, MountManifestEntry as ai, createRuntimeEventCollector as an, RecoverRetainedRunOptions as ar, SupervisedResult as at, ExecutorRegistry as b, startRuntimeRun as bi, validateWaitSpec as bn, RetainedRunIntentAdmission as br, WorkerTraceSeamCarrier as bt, EnvironmentTeardownReceipt as c, RunProvenance as ci, sanitizeKnowledgeReadinessReport as cn, RetainedInteractiveEnvironmentAdmission as cr, TokenUsageProvenance as ct, ExecutorAccounting as d, ValidationCtx as di, WaitOutcome as dn, RetainedRunAdmission as dr, UnknownMaterializationReason as dt, LoopTeardownFailedPayload as ei, RuntimeStreamEventSink as en, NativeContextContinuationExecution as er, SpawnRejection as et, ExecutorCancellation as f, Validator as fi, WaitProbe as fn, RetainedRunAdmissionHook as fr, UsageEvent as ft, ExecutorFactory as g, RuntimeRunOptions as gi, createWaitProbes as gn, RetainedRunEffect as gr, WorkerInteractiveUnavailableReason as gt, ExecutorExecutionBinding as h, RuntimeRunHandle as hi, WaitSpec as hn, RetainedRunDispatchedAdmission as hr, WorkerInteractiveSession as ht, Budget as i, LoopWinner as ii, SanitizedKnowledgeRequirement as in, RecoverRetainedRunIntentOptions as ir, SteerableRootHandle as it, NodeSnapshot as j, AgentTaskStatus as ji, DEFAULT_STALL_AFTER_MS as jn, LeakedReservation as jr, EvalRunGeneration as jt, NodeExecutionIdentity as k, AgentTaskRunResult as ki, ActivityLog as kn, BudgetReadout as kr, traceContextToEnv as kt, ExecutionBindingReceipt as l, SandboxClient as li, sanitizeRuntimeStreamEvent as ln, RetainedInteractiveIntentAdmission as lr, TreeView as lt, ExecutorContext as m, RuntimeRunCost as mi, WaitRejection as mn, RetainedRunCancellation as mr, WidenGate as mt, AgentExecutionRef as n, LoopTraceEmitter as ni, RuntimeTelemetryOptions as nn, NativeContextContinuationInput as nr, SpendChannel as nt, BudgetViolation as o, MountRecorder as oi, createRuntimeStreamEventCollector as on, RecoverRetainedRunResult as or, Supervisor as ot, ExecutorCancellationRequest as p, RuntimeRunCompleteInput as pi, WaitProbeRegistry as pn, RetainedRunCancelOptions as pr, WaitOpts as pt, Runtime as q, HarnessTranscriptFile as qn, LoopIterationStartedPayload as qr, generateSpanId as qt, AgentSpec as r, LoopTraceEvent as ri, SanitizedKnowledgeReadinessReport as rn, ReconnectRetainedRunOptions as rr, SpendGap as rt, DefaultVerdict as s, OutputAdapter as si, sanitizeAgentRuntimeEvent as sn, RetainedInteractiveAdmission as sr, SupervisorOpts as st, Agent as t, LoopTokenUsage as ti, RuntimeStreamEventSummary as tn, NativeContextContinuationHandle as tr, Spend as tt, Executor as u, SelectionReceipt as ui, PendingWait as un, RetainedInteractiveStartedAdmission as ur, UnconfirmedTeardown as ut, ExecutorNodeContext as v, RuntimeRunRow as vi, pollFor as vn, RetainedRunEventOptions as vr, WorkerTraceUnavailableReason as vt, FleetYield as w, AgentExecutionBackend as wi, ToolStepInput as wn, RetainedRunTurnInput as wr, workerTraceSeamKey as wt, ExecutorResult as x, AgentAdapter as xi, waitUntil as xn, RetainedRunReplayPoint as xr, readWorkerTraceContext as xt, ExecutorProgressEvent as y, RuntimeRunStatus as yi, timerAt as yn, RetainedRunHandle as yr, WorkerTraceResolver as yt, ResumedKeyState as z, RuntimeCanonicalStreamEvent as zi, RetainedInteractiveAdmissionHook as zn, DefaultVerdict$1 as zr, OtelSpan as zt };
4546
+ //# sourceMappingURL=types-F5MG_7Qq.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tangle-network/agent-runtime",
3
- "version": "0.231.1",
3
+ "version": "0.233.0",
4
4
  "description": "Shared task-lifecycle skeleton for agents: a recursive loop kernel for chat turns, one-shot tasks, and multi-attempt loops, with trace capture and eval-gated self-improvement. Domain behavior lives in adapters; scoring and ship-gates in @tangle-network/agent-eval.",
5
5
  "homepage": "https://github.com/tangle-network/agent-runtime#readme",
6
6
  "repository": {