@tangle-network/agent-runtime 0.73.0 → 0.74.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 (44) hide show
  1. package/dist/agent.d.ts +34 -2
  2. package/dist/agent.js +3 -2
  3. package/dist/agent.js.map +1 -1
  4. package/dist/analyst-loop.d.ts +1 -1
  5. package/dist/chunk-JPURCA2O.js +266 -0
  6. package/dist/chunk-JPURCA2O.js.map +1 -0
  7. package/dist/{chunk-7ODB76J5.js → chunk-MRWXCFV5.js} +2 -2
  8. package/dist/chunk-O2UPHN7X.js +114 -0
  9. package/dist/chunk-O2UPHN7X.js.map +1 -0
  10. package/dist/{chunk-U56XGKVY.js → chunk-QKNBYHMK.js} +3 -3
  11. package/dist/{chunk-HPYWEFVY.js → chunk-SA5GCF2X.js} +2 -2
  12. package/dist/{chunk-NCH4XUZ7.js → chunk-ZKMOIEOB.js} +13 -119
  13. package/dist/chunk-ZKMOIEOB.js.map +1 -0
  14. package/dist/{coordination-DU0saWeg.d.ts → coordination-DEVknvQo.d.ts} +3 -2
  15. package/dist/generator-YkAQrOoD.d.ts +382 -0
  16. package/dist/index.d.ts +13 -167
  17. package/dist/index.js +15 -262
  18. package/dist/index.js.map +1 -1
  19. package/dist/intelligence.d.ts +1 -1
  20. package/dist/lifecycle.d.ts +787 -200
  21. package/dist/lifecycle.js +814 -9
  22. package/dist/lifecycle.js.map +1 -1
  23. package/dist/local-harness-BE_h8szs.d.ts +93 -0
  24. package/dist/{loop-runner-bin-eD3m0rHW.d.ts → loop-runner-bin-BPthX22l.d.ts} +2 -2
  25. package/dist/loop-runner-bin.d.ts +6 -5
  26. package/dist/loop-runner-bin.js +4 -3
  27. package/dist/loops.d.ts +10 -9
  28. package/dist/loops.js +3 -2
  29. package/dist/mcp/bin.js +2 -1
  30. package/dist/mcp/bin.js.map +1 -1
  31. package/dist/mcp/index.d.ts +8 -6
  32. package/dist/mcp/index.js +6 -4
  33. package/dist/mcp/index.js.map +1 -1
  34. package/dist/mcp-serve-verifier-CT1KLTG_.d.ts +162 -0
  35. package/dist/{openai-tools-CBurv8Cu.d.ts → openai-tools-D-VCAEmw.d.ts} +1 -1
  36. package/dist/profiles.d.ts +1 -1
  37. package/dist/{types-JufmXF2a.d.ts → types-YimN9PQP.d.ts} +1 -1
  38. package/dist/{worktree-DaxOvw-C.d.ts → worktree-CtuEQ7bZ.d.ts} +2 -93
  39. package/dist/{worktree-fanout-DIffZohV.d.ts → worktree-fanout-Cdez8GR7.d.ts} +3 -2
  40. package/package.json +1 -1
  41. package/dist/chunk-NCH4XUZ7.js.map +0 -1
  42. /package/dist/{chunk-7ODB76J5.js.map → chunk-MRWXCFV5.js.map} +0 -0
  43. /package/dist/{chunk-U56XGKVY.js.map → chunk-QKNBYHMK.js.map} +0 -0
  44. /package/dist/{chunk-HPYWEFVY.js.map → chunk-SA5GCF2X.js.map} +0 -0
@@ -0,0 +1,162 @@
1
+ import { AnalystFinding } from '@tangle-network/agent-eval';
2
+ import { L as LocalHarness, r as runLocalHarness } from './local-harness-BE_h8szs.js';
3
+ import { LabeledScenarioStore, WorktreeAdapter, SurfaceProposer } from '@tangle-network/agent-eval/campaign';
4
+
5
+ /**
6
+ * @experimental
7
+ *
8
+ * `improvementDriver` — the ONE reflective/agentic improvement proposer for
9
+ * agent-eval's improvement loop. It implements `SurfaceProposer` and owns
10
+ * the candidate lifecycle (worktree create → generate → finalize/discard,
11
+ * × populationSize); it delegates the only thing that genuinely varies — HOW
12
+ * a candidate change is produced — to a pluggable `CandidateGenerator`.
13
+ *
14
+ * There is no separate "analyst driver" vs "autoresearch driver": those are
15
+ * the SAME driver at two settings of a dial.
16
+ * - cheap reflective path → `reflectiveGenerator` (shots=1, no sandbox;
17
+ * applies pre-drafted patches)
18
+ * - full agentic path → `agenticGenerator` (shots=N, multi-shot
19
+ * verify-in-session loop; an agent reads code +
20
+ * report, edits, and re-tries on verifier failure)
21
+ * Both emit changes into a worktree the driver finalizes into a
22
+ * `CodeSurface{ worktreeRef }` the loop measures on the holdout. See
23
+ * agent-eval's `docs/design/self-improvement-engine.md`.
24
+ */
25
+
26
+ /** The byte-producing seam — the ONE thing that differs between the cheap
27
+ * reflective path and the full agentic path. A generator makes (uncommitted)
28
+ * changes inside `worktreePath`; the driver commits them via the worktree
29
+ * adapter's `finalize`. */
30
+ interface CandidateGenerator {
31
+ kind: string;
32
+ generate(args: {
33
+ /** The candidate worktree — a fresh checkout of baseRef. Write changes here. */
34
+ worktreePath: string;
35
+ /** Phase-2 research report (analyst findings + diff), opaque. */
36
+ report: unknown;
37
+ /** Findings resolved from the report or the loop context. */
38
+ findings: AnalystFinding[];
39
+ /** Handle to all captured data, to ground the change. */
40
+ dataset?: LabeledScenarioStore;
41
+ /** DEPTH: max iterations the generator may take (agentic uses this; the
42
+ * reflective generator ignores it). */
43
+ maxShots: number;
44
+ signal: AbortSignal;
45
+ }): Promise<{
46
+ applied: boolean;
47
+ summary: string;
48
+ }>;
49
+ }
50
+ interface ImprovementDriverOptions {
51
+ worktree: WorktreeAdapter;
52
+ generator: CandidateGenerator;
53
+ /** Base ref candidate worktrees fork from. Default `main`. */
54
+ baseRef?: string;
55
+ }
56
+ declare function improvementDriver(opts: ImprovementDriverOptions): SurfaceProposer<AnalystFinding>;
57
+
58
+ /**
59
+ * @experimental
60
+ *
61
+ * `agenticGenerator` — the full-agentic `CandidateGenerator`: the
62
+ * `shots=N, sandbox=on` setting of the one `improvementDriver`. It runs a real
63
+ * coding harness (claude / codex / opencode) inside the candidate worktree the
64
+ * driver already created, letting the agent read the codebase + the research
65
+ * report and make the change in place. The driver then commits the worktree
66
+ * into a `CodeSurface`.
67
+ *
68
+ * Mechanism: identical to the proven Phase-2.8 in-process executor — spawn the
69
+ * harness as a subprocess with `cwd` = the worktree, on the same filesystem,
70
+ * so edits land in place (no sandbox-mount round-trip). `runLocalHarness` is
71
+ * the verified primitive. The OUTER sandbox is the improvement loop's own
72
+ * execution context; the generator does not nest a second sandbox per
73
+ * candidate (which would reintroduce a host↔sandbox worktree-transport
74
+ * problem that does not need solving here).
75
+ *
76
+ * `maxShots` is the DEPTH dial — a multi-shot verify-in-session loop, NOT the
77
+ * kernel `runLoop`. Each shot runs one full harness session in the (persistent)
78
+ * worktree; between shots the loop refines based on what the last shot produced:
79
+ * - empty tree → "you changed nothing, make the edits" → retry
80
+ * - dirty + `verify` fails → feed the verifier's failure into the next shot
81
+ * (the worktree persists, so the harness RESUMES atop its own failing
82
+ * edits with the error in hand — no `--resume` session plumbing needed,
83
+ * and harness-agnostic across claude/codex/opencode)
84
+ * - dirty + `verify` ok (or no verifier configured) → return the candidate
85
+ * A candidate that never verifies within `maxShots` is discarded (`applied:
86
+ * false`), never shipped — if you configured a verifier, a non-passing tree is
87
+ * not a candidate. With no verifier the legacy behavior holds: first dirty shot
88
+ * is the candidate.
89
+ */
90
+
91
+ /** Outcome of verifying a candidate worktree. `feedback` (compiler errors,
92
+ * failing test output) is fed into the next shot when `ok` is false. */
93
+ interface VerifyResult {
94
+ ok: boolean;
95
+ feedback?: string;
96
+ }
97
+ /** Verifies the edited worktree. Sync or async; throws only on a setup fault
98
+ * (a candidate that fails verification returns `{ok:false}`, it does not
99
+ * throw). */
100
+ type Verifier = (worktreePath: string) => Promise<VerifyResult> | VerifyResult;
101
+ interface AgenticGeneratorOptions {
102
+ /** Local coding harness to run in the worktree. Default `claude`. */
103
+ harness?: LocalHarness;
104
+ /** Per-shot wall-clock timeout (ms). Default = `runLocalHarness` default (5m). */
105
+ timeoutMs?: number;
106
+ /** Build the harness task prompt from the report + findings. Override for
107
+ * domain phrasing; the default turns findings into a concrete coder task. */
108
+ buildPrompt?: (args: {
109
+ report: unknown;
110
+ findings: AnalystFinding[];
111
+ }) => string;
112
+ /** Verify the worktree after each dirtying shot. When set, a candidate that
113
+ * fails verification is NOT returned — the failure feeds the next shot
114
+ * (verify-in-session), up to `maxShots`; a candidate that never verifies is
115
+ * discarded (`applied:false`), never shipped. Omitted ⇒ legacy behavior:
116
+ * the first dirty shot is the candidate. See `commandVerifier`. */
117
+ verify?: Verifier;
118
+ /** Test seam — inject the harness runner (defaults to `runLocalHarness`). */
119
+ runHarness?: typeof runLocalHarness;
120
+ /** Test seam — inject the worktree-dirty check (defaults to `git status`). */
121
+ isDirty?: (worktreePath: string) => boolean;
122
+ }
123
+ declare function agenticGenerator(opts?: AgenticGeneratorOptions): CandidateGenerator;
124
+ /** A `Verifier` that runs a command in the worktree: exit 0 ⇒ ok, any other
125
+ * exit ⇒ failed with stdout+stderr as feedback. The common case — verify by
126
+ * `tsc --noEmit`, `pnpm build`, or a test command. A timeout is treated as a
127
+ * FAILED candidate (a change that hangs the build is a bad change); a missing
128
+ * binary or spawn fault throws (a setup bug, not a failed candidate — no
129
+ * silent fallback). */
130
+ declare function commandVerifier(command: string, args?: string[], timeoutMs?: number): Verifier;
131
+
132
+ /**
133
+ * `mcpServeVerifier` — the intrinsic verifier for a built MCP server: the
134
+ * boot-and-probe checker named in docs/artifact-lifecycle-frontier.md. A
135
+ * generated MCP server is only a candidate if it actually *serves* — so this
136
+ * boots it over stdio (the default local MCP transport) and runs the real
137
+ * handshake: `initialize` → `notifications/initialized` → `tools/list`, and
138
+ * asserts the server answers with at least `minTools` tools.
139
+ *
140
+ * Outcomes follow the `Verifier` contract: a server that fails to start, exits
141
+ * early, errors the handshake, times out, or exposes no tools is a FAILED
142
+ * candidate (`{ok:false}`, fed back into the next generation shot); a missing
143
+ * start binary or spawn fault THROWS (a setup bug, never a silent fallback).
144
+ *
145
+ * Protocol matches the runtime's own stdio MCP server (src/mcp/server.ts):
146
+ * newline-delimited JSON-RPC 2.0, protocol version 2024-11-05.
147
+ */
148
+
149
+ interface McpServeSpec {
150
+ /** Command that starts the built MCP server in the worktree (stdio transport). */
151
+ command: string;
152
+ args?: string[];
153
+ /** Extra env for the server process (merged over `process.env`). */
154
+ env?: Record<string, string>;
155
+ /** Handshake timeout (ms). Default 30s. */
156
+ timeoutMs?: number;
157
+ /** Minimum tools the server must expose to pass. Default 1. */
158
+ minTools?: number;
159
+ }
160
+ declare function mcpServeVerifier(spec: McpServeSpec): Verifier;
161
+
162
+ export { type AgenticGeneratorOptions as A, type CandidateGenerator as C, type ImprovementDriverOptions as I, type McpServeSpec as M, type Verifier as V, type VerifyResult as a, agenticGenerator as b, commandVerifier as c, improvementDriver as i, mcpServeVerifier as m };
@@ -1,4 +1,4 @@
1
- import { O as OpenAIChatTool } from './types-JufmXF2a.js';
1
+ import { O as OpenAIChatTool } from './types-YimN9PQP.js';
2
2
 
3
3
  /**
4
4
  * @experimental
@@ -1,6 +1,6 @@
1
1
  import { a as UiFinding, U as UiLens } from './substrate-rNj6TDc3.js';
2
2
  export { C as CoderTask, b as UI_FINDING_SEVERITIES, c as UI_LENSES, d as UiFindingScreenshot, e as UiFindingSeverity, f as coderTaskToPrompt } from './substrate-rNj6TDc3.js';
3
- import { S as SandboxClient, a as OutputAdapter, V as Validator, A as AgentRunSpec } from './types-JufmXF2a.js';
3
+ import { S as SandboxClient, b as OutputAdapter, V as Validator, A as AgentRunSpec } from './types-YimN9PQP.js';
4
4
  import { SandboxEvent } from '@tangle-network/sandbox';
5
5
  import { AgentProfile } from '@tangle-network/agent-interface';
6
6
  import '@tangle-network/agent-eval';
@@ -1257,4 +1257,4 @@ interface ExecCtx {
1257
1257
  parentSpanId?: string;
1258
1258
  }
1259
1259
 
1260
- export { type LoopEndedPayload as $, type AgentRunSpec as A, type BackendErrorDetail as B, type RuntimeHookEvent as C, type RuntimeHookPhase as D, type ExecCtx as E, type RuntimeHookTarget as F, type RuntimeRunHandle as G, type RuntimeRunPersistenceAdapter as H, type Iteration as I, type RuntimeRunRow as J, type KnowledgeReadinessDecision as K, type LoopTokenUsage as L, composeRuntimeHooks as M, defineRuntimeHooks as N, type OpenAIChatTool as O, notifyRuntimeDecisionPoint as P, notifyRuntimeHookEvent as Q, type RuntimeStreamEvent as R, type SandboxClient as S, startRuntimeRun as T, type Driver as U, type Validator as V, type LoopWinner as W, type LoopLineageOptions as X, type LoopResult as Y, type MountRecorder as Z, type LoopDecisionPayload as _, type OutputAdapter as a, type LoopIterationDispatchPayload as a0, type LoopIterationEndedPayload as a1, type LoopIterationStartedPayload as a2, type LoopPlanDescription as a3, type LoopPlanPayload as a4, type LoopStartedPayload as a5, type LoopTeardownFailedPayload as a6, type MountManifestEntry as a7, type RunProvenance as a8, type SelectionReceipt as a9, type ValidationCtx as aa, type RuntimeHooks as b, type LoopTraceEvent as c, type LoopSandboxPlacement as d, type LoopTraceEmitter as e, type AgentBackendInput as f, type AgentExecutionBackend as g, type OpenAIChatToolChoice as h, type AgentBackendContext as i, type RunAgentTaskOptions as j, type AgentTaskRunResult as k, type RunAgentTaskStreamOptions as l, type AgentRuntimeEvent as m, type AgentTaskStatus as n, type RuntimeSessionStore as o, type RuntimeSession as p, type AgentAdapter as q, type AgentKnowledgeProvider as r, type AgentRuntimeEventSink as s, type AgentTaskContext as t, type AgentTaskSpec as u, type RuntimeDecisionEvidenceRef as v, type RuntimeDecisionKind as w, type RuntimeDecisionPoint as x, type RuntimeHookContext as y, type RuntimeHookErrorContext as z };
1260
+ export { type LoopEndedPayload as $, type AgentRunSpec as A, type BackendErrorDetail as B, type RuntimeHookEvent as C, type RuntimeHookPhase as D, type ExecCtx as E, type RuntimeHookTarget as F, type RuntimeRunHandle as G, type RuntimeRunPersistenceAdapter as H, type Iteration as I, type RuntimeRunRow as J, type KnowledgeReadinessDecision as K, type LoopTokenUsage as L, composeRuntimeHooks as M, defineRuntimeHooks as N, type OpenAIChatTool as O, notifyRuntimeDecisionPoint as P, notifyRuntimeHookEvent as Q, type RuntimeHooks as R, type SandboxClient as S, startRuntimeRun as T, type Driver as U, type Validator as V, type LoopWinner as W, type LoopLineageOptions as X, type LoopResult as Y, type MountRecorder as Z, type LoopDecisionPayload as _, type RuntimeStreamEvent as a, type LoopIterationDispatchPayload as a0, type LoopIterationEndedPayload as a1, type LoopIterationStartedPayload as a2, type LoopPlanDescription as a3, type LoopPlanPayload as a4, type LoopStartedPayload as a5, type LoopTeardownFailedPayload as a6, type MountManifestEntry as a7, type RunProvenance as a8, type SelectionReceipt as a9, type ValidationCtx as aa, type OutputAdapter as b, type LoopTraceEvent as c, type LoopSandboxPlacement as d, type LoopTraceEmitter as e, type AgentBackendInput as f, type AgentExecutionBackend as g, type OpenAIChatToolChoice as h, type AgentBackendContext as i, type RunAgentTaskOptions as j, type AgentTaskRunResult as k, type RunAgentTaskStreamOptions as l, type AgentRuntimeEvent as m, type AgentTaskStatus as n, type RuntimeSessionStore as o, type RuntimeSession as p, type AgentAdapter as q, type AgentKnowledgeProvider as r, type AgentRuntimeEventSink as s, type AgentTaskContext as t, type AgentTaskSpec as u, type RuntimeDecisionEvidenceRef as v, type RuntimeDecisionKind as w, type RuntimeDecisionPoint as x, type RuntimeHookContext as y, type RuntimeHookErrorContext as z };
@@ -1,98 +1,7 @@
1
- import { ChildProcess } from 'node:child_process';
2
1
  import { DefaultVerdict } from '@tangle-network/agent-eval';
3
2
  import { AgentProfile } from '@tangle-network/agent-interface';
4
3
  import { BackendType } from '@tangle-network/sandbox';
5
- import { L as LoopTokenUsage, b as RuntimeHooks } from './types-JufmXF2a.js';
6
-
7
- /**
8
- * @experimental
9
- *
10
- * Subprocess wrappers for the local coding-harness CLIs installed in the
11
- * sandbox image (claude-code, codex, opencode). Used by the in-process
12
- * delegation executor (`createInProcessExecutor`) so a `delegate_code` call
13
- * spawns a real harness on a real git worktree instead of provisioning a
14
- * sibling sandbox.
15
- *
16
- * All harness invocations:
17
- * - run with `cwd` set to the worktree
18
- * - inherit env from the parent (the MCP server inside the sandbox has
19
- * the harness's auth already)
20
- * - capture stdout/stderr
21
- * - support cancellation via AbortSignal
22
- * - enforce a wall-clock timeout
23
- */
24
-
25
- /** Local coding harness available inside the sandbox. */
26
- type LocalHarness = 'claude' | 'codex' | 'opencode';
27
- /** @experimental */
28
- interface RunLocalHarnessOptions {
29
- harness: LocalHarness;
30
- /** Working directory for the subprocess (typically a worktree path). */
31
- cwd: string;
32
- /** Prompt forwarded as the harness CLI's task argument. */
33
- taskPrompt: string;
34
- /**
35
- * Pre-built command + args (e.g. from `harnessInvocation` so the full authored
36
- * `AgentProfile` — systemPrompt + model — reaches the harness). When set it OVERRIDES the
37
- * default prompt-only `buildArgs(taskPrompt)` path; `command` defaults to the harness's
38
- * default binary when only `args` is supplied. When absent the legacy prompt-only shape
39
- * is used unchanged.
40
- */
41
- invocation?: {
42
- command?: string;
43
- args: ReadonlyArray<string>;
44
- };
45
- /** Wall-clock kill deadline (ms). Default 5 min. Subprocess SIGTERMed on expiry. */
46
- timeoutMs?: number;
47
- /** Caller cancellation. SIGTERM is sent on abort. */
48
- signal?: AbortSignal;
49
- /** Override env (defaults to inheriting from the parent). */
50
- env?: NodeJS.ProcessEnv;
51
- /**
52
- * Test seam — inject a custom spawner so unit tests can mock the
53
- * subprocess without touching the OS. Defaults to node's `child_process.spawn`.
54
- */
55
- spawn?: (command: string, args: ReadonlyArray<string>, opts: {
56
- cwd: string;
57
- env: NodeJS.ProcessEnv;
58
- stdio: 'pipe';
59
- }) => ChildProcess;
60
- }
61
- /** @experimental */
62
- interface LocalHarnessResult {
63
- /** OS exit code. `null` when killed before exit. */
64
- exitCode: number | null;
65
- /** Concatenated stdout. */
66
- stdout: string;
67
- /** Concatenated stderr. */
68
- stderr: string;
69
- /** Set when the process exited via signal (timeout / abort). */
70
- killedBySignal: NodeJS.Signals | null;
71
- /** Wall-clock duration ms (spawn → exit). */
72
- durationMs: number;
73
- /** Set when timeoutMs elapsed before exit. */
74
- timedOut: boolean;
75
- }
76
- /**
77
- * Spawn a local coding harness CLI as a subprocess + collect its output.
78
- *
79
- * NOT responsible for parsing the harness's output or extracting a diff —
80
- * the in-process executor's `streamPrompt` orchestrates `git diff` against
81
- * the worktree after this resolves. This function is intentionally narrow:
82
- * spawn, wait, capture, return.
83
- *
84
- * Fails loud — throws when:
85
- * - `cwd` doesn't exist (subprocess emits ENOENT; surfaced as Error)
86
- * - the harness binary is not on PATH (ENOENT)
87
- *
88
- * Does NOT throw when:
89
- * - the subprocess exits non-zero (`result.exitCode` carries the code)
90
- * - the subprocess is aborted / timed out (`result.killedBySignal` /
91
- * `result.timedOut` carries the reason)
92
- *
93
- * @experimental
94
- */
95
- declare function runLocalHarness(options: RunLocalHarnessOptions): Promise<LocalHarnessResult>;
4
+ import { L as LoopTokenUsage, R as RuntimeHooks } from './types-YimN9PQP.js';
96
5
 
97
6
  /**
98
7
  * @experimental
@@ -699,4 +608,4 @@ declare function captureWorktreeDiff(options: DiffOptions): Promise<DiffResult>;
699
608
  /** @experimental */
700
609
  declare function removeWorktree(options: RemoveWorktreeOptions): Promise<void>;
701
610
 
702
- export { type AgentSpec as A, type Budget as B, type CreateWorktreeOptions as C, type DiffOptions as D, type ExecutorRegistry as E, type GitRunner as G, type LocalHarness as L, type NodeId as N, type RemoveWorktreeOptions as R, type SpawnJournal as S, type TreeView as T, type UsageEvent as U, type WorktreeHandle as W, type DiffResult as a, type LocalHarnessResult as b, type RunLocalHarnessOptions as c, captureWorktreeDiff as d, createWorktree as e, removeWorktree as f, type Agent as g, type ResultBlobStore as h, type RootHandle as i, type SupervisedResult as j, type Settled as k, type Spend as l, type Scope as m, type Executor as n, type DeliverableSpec as o, type ExecutorFactory as p, type SpawnEvent as q, runLocalHarness as r, type Supervisor as s, type ExecutorContext as t, type ExecutorResult as u, type SupervisorOpts as v, type WidenGate as w, gateOnDeliverable as x };
611
+ export { type AgentSpec as A, type Budget as B, type CreateWorktreeOptions as C, type DiffOptions as D, type ExecutorRegistry as E, type GitRunner as G, type NodeId as N, type RemoveWorktreeOptions as R, type SpawnJournal as S, type TreeView as T, type UsageEvent as U, type WorktreeHandle as W, type DiffResult as a, createWorktree as b, captureWorktreeDiff as c, type Agent as d, type ResultBlobStore as e, type RootHandle as f, type SupervisedResult as g, type Settled as h, type Spend as i, type Scope as j, type Executor as k, type DeliverableSpec as l, type ExecutorFactory as m, type SpawnEvent as n, type Supervisor as o, type ExecutorContext as p, type ExecutorResult as q, removeWorktree as r, type SupervisorOpts as s, type WidenGate as t, gateOnDeliverable as u };
@@ -1,8 +1,9 @@
1
1
  import { AgentProfile } from '@tangle-network/agent-interface';
2
2
  import { AnalystFinding, DefaultVerdict } from '@tangle-network/agent-eval';
3
- import { A as AgentSpec, E as ExecutorRegistry, B as Budget, g as Agent, S as SpawnJournal, h as ResultBlobStore, i as RootHandle, j as SupervisedResult, N as NodeId, k as Settled, l as Spend, m as Scope, L as LocalHarness, G as GitRunner, r as runLocalHarness, n as Executor, o as DeliverableSpec } from './worktree-DaxOvw-C.js';
4
- import { b as RuntimeHooks, I as Iteration } from './types-JufmXF2a.js';
3
+ import { A as AgentSpec, E as ExecutorRegistry, B as Budget, d as Agent, S as SpawnJournal, e as ResultBlobStore, f as RootHandle, g as SupervisedResult, N as NodeId, h as Settled, i as Spend, j as Scope, G as GitRunner, k as Executor, l as DeliverableSpec } from './worktree-CtuEQ7bZ.js';
4
+ import { R as RuntimeHooks, I as Iteration } from './types-YimN9PQP.js';
5
5
  import { BackendType } from '@tangle-network/sandbox';
6
+ import { L as LocalHarness, r as runLocalHarness } from './local-harness-BE_h8szs.js';
6
7
 
7
8
  /**
8
9
  * @experimental
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tangle-network/agent-runtime",
3
- "version": "0.73.0",
3
+ "version": "0.74.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": {