@tangle-network/agent-runtime 0.94.13 → 0.95.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 (79) hide show
  1. package/dist/agent.d.ts +2 -25
  2. package/dist/agent.js +9 -12
  3. package/dist/agent.js.map +1 -1
  4. package/dist/{agentic-generator-DDMM45kZ.d.ts → agentic-generator-hCaQRAes.d.ts} +0 -1
  5. package/dist/analyst-loop.d.ts +1 -1
  6. package/dist/candidate-execution/index.d.ts +43 -16
  7. package/dist/candidate-execution/index.js +18 -8
  8. package/dist/{chunk-VYA2YEKA.js → chunk-2KGAN2HM.js} +83 -14
  9. package/dist/chunk-2KGAN2HM.js.map +1 -0
  10. package/dist/{chunk-TVJQAYQM.js → chunk-6YBA64Z2.js} +120 -716
  11. package/dist/chunk-6YBA64Z2.js.map +1 -0
  12. package/dist/{chunk-HGRW27YY.js → chunk-AP7CPGMZ.js} +139 -19
  13. package/dist/chunk-AP7CPGMZ.js.map +1 -0
  14. package/dist/{chunk-XP5KDM3R.js → chunk-BPGXIKK7.js} +3 -3
  15. package/dist/{chunk-D3H7F6L2.js → chunk-DHCHL6OG.js} +2 -3
  16. package/dist/chunk-DHCHL6OG.js.map +1 -0
  17. package/dist/{chunk-PCURO3DL.js → chunk-G55QE4IQ.js} +512 -36
  18. package/dist/chunk-G55QE4IQ.js.map +1 -0
  19. package/dist/{chunk-C3UKLQ54.js → chunk-IADLKE7I.js} +14 -4
  20. package/dist/chunk-IADLKE7I.js.map +1 -0
  21. package/dist/{chunk-WIPGQ4GT.js → chunk-IMSNJSXH.js} +1 -1
  22. package/dist/{chunk-WIPGQ4GT.js.map → chunk-IMSNJSXH.js.map} +1 -1
  23. package/dist/{chunk-VSWBYWFK.js → chunk-M6MD6JBS.js} +20 -27
  24. package/dist/chunk-M6MD6JBS.js.map +1 -0
  25. package/dist/chunk-MKGRLDWB.js +684 -0
  26. package/dist/chunk-MKGRLDWB.js.map +1 -0
  27. package/dist/{chunk-AEG3NGJ2.js → chunk-Q2JSAVQ3.js} +34 -2
  28. package/dist/chunk-Q2JSAVQ3.js.map +1 -0
  29. package/dist/{chunk-CNH7DF7Z.js → chunk-WTZ37EQY.js} +922 -504
  30. package/dist/chunk-WTZ37EQY.js.map +1 -0
  31. package/dist/{chunk-U33YZ7B2.js → chunk-YLUOTX6U.js} +4 -4
  32. package/dist/{chunk-33OG2NN3.js → chunk-Z5I642SY.js} +2 -2
  33. package/dist/{completion-gate-D1gX1-hg.d.ts → completion-gate-C80jiRfN.d.ts} +1 -1
  34. package/dist/conversation.d.ts +12 -1
  35. package/dist/conversation.js +2 -2
  36. package/dist/{coordination-Dr_axlAf.d.ts → coordination-BFE3Den7.d.ts} +10 -11
  37. package/dist/environment-provider.d.ts +2 -2
  38. package/dist/environment-provider.js +1 -1
  39. package/dist/{improve-BN3HyXIO.d.ts → improve-B-UYaEH5.d.ts} +3 -3
  40. package/dist/index.d.ts +22 -25
  41. package/dist/index.js +45 -50
  42. package/dist/index.js.map +1 -1
  43. package/dist/intelligence.d.ts +177 -119
  44. package/dist/intelligence.js +501 -342
  45. package/dist/intelligence.js.map +1 -1
  46. package/dist/knowledge.d.ts +22 -11
  47. package/dist/knowledge.js +9 -4
  48. package/dist/lifecycle.d.ts +2 -2
  49. package/dist/lifecycle.js +1 -1
  50. package/dist/{loop-runner-bin-BRQSQdHa.d.ts → loop-runner-bin-BIQldFS8.d.ts} +2 -2
  51. package/dist/loop-runner-bin.d.ts +5 -5
  52. package/dist/loop-runner-bin.js +6 -6
  53. package/dist/loops.d.ts +12 -12
  54. package/dist/loops.js +5 -5
  55. package/dist/mcp/bin.js +3 -3
  56. package/dist/mcp/index.d.ts +6 -6
  57. package/dist/mcp/index.js +6 -6
  58. package/dist/{mcp-serve-verifier-DQQDbuyz.d.ts → mcp-serve-verifier-Bs_n0xPc.d.ts} +1 -1
  59. package/dist/primeintellect/index.js +1 -1
  60. package/dist/profile-DbfaMTdk.d.ts +233 -0
  61. package/dist/profiles.d.ts +1 -1
  62. package/dist/{supervise-DmYOug5f.d.ts → supervise-BLPI50-w.d.ts} +3 -3
  63. package/dist/{types-ByAYqlVb.d.ts → types-B3vAW0Oq.d.ts} +1 -1
  64. package/dist/{prepare-CtdtsFNG.d.ts → types-CWqfCO8s.d.ts} +67 -298
  65. package/dist/{types-1d5QGK3t.d.ts → types-CmnA2iL3.d.ts} +3 -3
  66. package/dist/{worktree-fanout-CPprU-qI.d.ts → worktree-fanout-DCA3G4bO.d.ts} +3 -3
  67. package/package.json +13 -10
  68. package/dist/chunk-AEG3NGJ2.js.map +0 -1
  69. package/dist/chunk-C3UKLQ54.js.map +0 -1
  70. package/dist/chunk-CNH7DF7Z.js.map +0 -1
  71. package/dist/chunk-D3H7F6L2.js.map +0 -1
  72. package/dist/chunk-HGRW27YY.js.map +0 -1
  73. package/dist/chunk-PCURO3DL.js.map +0 -1
  74. package/dist/chunk-TVJQAYQM.js.map +0 -1
  75. package/dist/chunk-VSWBYWFK.js.map +0 -1
  76. package/dist/chunk-VYA2YEKA.js.map +0 -1
  77. /package/dist/{chunk-XP5KDM3R.js.map → chunk-BPGXIKK7.js.map} +0 -0
  78. /package/dist/{chunk-U33YZ7B2.js.map → chunk-YLUOTX6U.js.map} +0 -0
  79. /package/dist/{chunk-33OG2NN3.js.map → chunk-Z5I642SY.js.map} +0 -0
@@ -1,7 +1,7 @@
1
- import { S as Scope, a as ResultBlobStore, B as Budget, A as Agent, b as SupervisedResult } from './types-1d5QGK3t.js';
2
- import { M as MakeWorkerAgent, A as AnalystRegistry, E as ExecutorConfig } from './coordination-Dr_axlAf.js';
1
+ import { S as Scope, a as ResultBlobStore, B as Budget, A as Agent, b as SupervisedResult } from './types-CmnA2iL3.js';
2
+ import { M as MakeWorkerAgent, A as AnalystRegistry, E as ExecutorConfig } from './coordination-BFE3Den7.js';
3
3
  import { R as RouterConfig, T as ToolLoopChat, a as ToolLoopCompactionOptions } from './sanitize-BTSsdBXw.js';
4
- import { D as DeliverableSpec } from './completion-gate-D1gX1-hg.js';
4
+ import { D as DeliverableSpec } from './completion-gate-C80jiRfN.js';
5
5
 
6
6
  /** The supervisor's profile — the subset of an `AgentProfile` that selects + shapes its brain.
7
7
  * `harness` is the backend-as-data discriminant; `systemPrompt` is the standing instruction. */
@@ -799,4 +799,4 @@ interface ExecCtx {
799
799
  parentSpanId?: string;
800
800
  }
801
801
 
802
- export { type AgentRunSpec as A, type LoopIterationEndedPayload as B, type LoopIterationStartedPayload as C, type Driver as D, type ExecCtx as E, type LoopPlanDescription as F, type LoopPlanPayload as G, type LoopStartedPayload as H, type Iteration as I, type LoopTeardownFailedPayload as J, type MountManifestEntry as K, type LoopTokenUsage as L, type MountRecorder as M, type RunProvenance as N, type OutputAdapter as O, type ValidationCtx as P, type RuntimeHooks as R, type SandboxClient as S, type Validator as V, type LoopTraceEvent as a, type LoopSandboxPlacement as b, type RuntimeDecisionEvidenceRef as c, type RuntimeDecisionKind as d, type RuntimeDecisionPoint as e, type RuntimeHookContext as f, type RuntimeHookErrorContext as g, type RuntimeHookEvent as h, type RuntimeHookPhase as i, type RuntimeHookTarget as j, type RuntimeRunHandle as k, type RuntimeRunPersistenceAdapter as l, type RuntimeRunRow as m, composeRuntimeHooks as n, defineRuntimeHooks as o, notifyRuntimeDecisionPoint as p, notifyRuntimeHookEvent as q, type LoopTraceEmitter as r, startRuntimeRun as s, type LoopWinner as t, type LoopLineageOptions as u, type LoopResult as v, type SelectionReceipt as w, type LoopDecisionPayload as x, type LoopEndedPayload as y, type LoopIterationDispatchPayload as z };
802
+ export { type AgentRunSpec as A, type LoopIterationEndedPayload as B, type LoopIterationStartedPayload as C, type Driver as D, type ExecCtx as E, type LoopPlanDescription as F, type LoopPlanPayload as G, type LoopStartedPayload as H, type Iteration as I, type LoopTeardownFailedPayload as J, type MountManifestEntry as K, type LoopTokenUsage as L, type MountRecorder as M, type RunProvenance as N, type OutputAdapter as O, type ValidationCtx as P, type RuntimeHooks as R, type SandboxClient as S, type Validator as V, type LoopSandboxPlacement as a, type LoopTraceEvent as b, type RuntimeDecisionEvidenceRef as c, type RuntimeDecisionKind as d, type RuntimeDecisionPoint as e, type RuntimeHookContext as f, type RuntimeHookErrorContext as g, type RuntimeHookEvent as h, type RuntimeHookPhase as i, type RuntimeHookTarget as j, type RuntimeRunHandle as k, type RuntimeRunPersistenceAdapter as l, type RuntimeRunRow as m, composeRuntimeHooks as n, defineRuntimeHooks as o, notifyRuntimeDecisionPoint as p, notifyRuntimeHookEvent as q, type LoopTraceEmitter as r, startRuntimeRun as s, type LoopWinner as t, type LoopLineageOptions as u, type LoopResult as v, type SelectionReceipt as w, type LoopDecisionPayload as x, type LoopEndedPayload as y, type LoopIterationDispatchPayload as z };
@@ -1,10 +1,5 @@
1
- import { AgentCandidateBundle, AgentCandidateArtifactRef, AgentCandidateTermination, AgentCandidateTaskOutcomeEvidence, Sha256Digest, AgentCandidateContainer, AgentCandidateOciPlatform, AgentCandidateGitHubRepository, AgentCandidateWorkspaceSnapshotEvidence, AgentCandidateResolvedModel, AgentCandidateAttemptPolicy, AgentCandidateExecutionLimits, AgentCandidateModelAccessNetwork, AgentCandidateCapturedArtifact, AgentCandidateWorkspaceManifestMaterial, AgentCandidateProfilePlanEvidence, AgentCandidateExecutionPlanEvidence, AgentCandidateMaterializationReceipt, AgentCandidateInstructionDelivery, AgentCandidateKnowledgeRef, AgentCandidateEffectiveMemory, AgentCandidateRunReceipt, AgentCandidateSpend, ReasoningEffort } from '@tangle-network/agent-interface';
2
1
  import { BenchmarkEvaluation, TraceStore } from '@tangle-network/agent-eval';
3
-
4
- /** Exact candidate wire shape before the runtime computes its canonical digest. */
5
- type AgentCandidateBundleInput = Omit<AgentCandidateBundle, 'digest'>;
6
- /** Validate and content-address a candidate bundle before it crosses an approval boundary. */
7
- declare function sealAgentCandidateBundle(input: AgentCandidateBundleInput): AgentCandidateBundle;
2
+ import { AgentCandidateArtifactRef, AgentCandidateTermination, AgentCandidateTaskOutcomeMaterial, AgentCandidateTaskOutcomeEvidence, AgentCandidateTaskOutputSpec, Sha256Digest, AgentCandidateContainer, AgentCandidateOciPlatform, AgentCandidateGitHubRepository, AgentCandidateWorkspaceSnapshotEvidence, AgentCandidateBundle, AgentCandidateResolvedModel, AgentCandidateAttemptPolicy, AgentCandidateExecutionLimits, AgentCandidateModelAccessNetwork, AgentCandidateModelSettlementCall, AgentCandidateCapturedArtifact, AgentCandidateWorkspaceManifestMaterial, AgentCandidateBenchmarkSuite, AgentCandidateBenchmarkTask, AgentCandidateProfilePlanEvidence, AgentCandidateProfileActivation, AgentCandidateExecutionPlanEvidence, AgentCandidateMaterializationReceipt, AgentCandidateInstructionDelivery, AgentCandidateKnowledgeRef, AgentCandidateEffectiveMemory, AgentCandidateRunReceipt, AgentCandidateFixedSpend, AgentCandidateRunCell } from '@tangle-network/agent-interface';
8
3
 
9
4
  declare const verifiedCandidateBrand: unique symbol;
10
5
  declare const preparedCandidateBrand: unique symbol;
@@ -13,7 +8,7 @@ declare const verifiedTaskOutcomeBrand: unique symbol;
13
8
  interface AgentCandidateArtifactPort {
14
9
  read(ref: AgentCandidateArtifactRef): Promise<Uint8Array>;
15
10
  }
16
- type AgentCandidateOutputPurpose = 'candidate-workspace-manifest' | 'candidate-workspace-archive' | 'task-manifest' | 'task-archive' | 'task-patch' | 'task-outcome' | 'memory-after-manifest' | 'memory-after-archive' | 'grader-evidence' | 'benchmark-result' | 'model-settlement' | 'trace' | 'executor-capture' | 'run-receipt' | 'failure-evidence';
11
+ type AgentCandidateOutputPurpose = 'execution-plan' | 'materialization-receipt' | 'candidate-workspace-manifest' | 'candidate-workspace-archive' | 'task-manifest' | 'task-archive' | 'task-patch' | 'task-output' | 'task-outcome' | 'memory-after-manifest' | 'memory-after-archive' | 'grader-evidence' | 'benchmark-result' | 'model-settlement' | 'trace' | 'executor-native-evidence' | 'executor-capture' | 'run-receipt' | 'knowledge-retrieval-config' | 'knowledge-evaluation' | 'failure-evidence';
17
12
  /** Durable content-addressed evidence store controlled only by the evaluator. */
18
13
  interface AgentCandidateOutputArtifactPort extends AgentCandidateArtifactPort {
19
14
  /** Must be idempotent for identical bytes and return only a durable S3/IPFS locator. */
@@ -105,11 +100,6 @@ interface AgentCandidateModelPort {
105
100
  }
106
101
  /** Limits mechanically enforced by the evaluator-owned model gateway. */
107
102
  type AgentCandidateModelLimits = Pick<AgentCandidateExecutionLimits, 'maxModelCalls' | 'maxInputTokens' | 'maxOutputTokens' | 'maxCostUsd'>;
108
- interface AgentCandidateBenchmarkGraderIdentity {
109
- name: string;
110
- version: string;
111
- artifact: AgentCandidateArtifactRef;
112
- }
113
103
  interface AgentCandidateProtectedModelReservation {
114
104
  preparationId: string;
115
105
  digest: Sha256Digest;
@@ -124,29 +114,11 @@ interface AgentCandidateProtectedModelActivation {
124
114
  /** Injected only into the trusted executor after all pre-launch checks pass. */
125
115
  env: Readonly<Record<string, string>>;
126
116
  }
127
- /** One evaluator-gateway call in the final, revoked model-access ledger. */
128
- interface AgentCandidateProtectedModelCall {
129
- callId: string;
130
- /** Router-generated public response identity. */
131
- generationId: string;
132
- /** Exact protected agent-eval LLM span produced from the router ledger. */
133
- traceSpanId: string;
134
- status: 'succeeded' | 'failed';
135
- model: string;
136
- startedAtMs: number;
137
- endedAtMs: number;
138
- inputTokens: number;
139
- outputTokens: number;
140
- cachedInputTokens: number;
141
- reasoningTokens: number;
142
- /** Integer billionths of one US dollar; avoids floating-point ledger drift. */
143
- costUsdNanos: number;
144
- }
145
117
  interface AgentCandidateProtectedModelSettlement {
146
118
  preparationId: string;
147
119
  grantDigest: Sha256Digest;
148
120
  closed: true;
149
- calls: readonly AgentCandidateProtectedModelCall[];
121
+ calls: readonly AgentCandidateModelSettlementCall[];
150
122
  }
151
123
  interface AgentCandidateMemoryResetResult {
152
124
  preparationId: string;
@@ -204,26 +176,12 @@ interface AgentCandidateExecutionPorts extends AgentCandidateVerificationPorts {
204
176
  models: AgentCandidateModelPort;
205
177
  memory: AgentCandidateMemoryPort;
206
178
  }
179
+ /** Runtime placement for one exact cell from a signed candidate experiment. */
207
180
  interface AgentCandidateTaskExecution {
208
181
  executionId: string;
209
- benchmark: string;
210
- benchmarkVersion: string;
211
- taskId: string;
212
- splitDigest: Sha256Digest;
213
- /** Exact agent-visible task instruction. The runtime rejects malformed Unicode. */
214
- instruction: string;
215
- repository: {
216
- identity: string;
217
- rootIdentity: string;
218
- baseCommit: string;
219
- baseTree: string;
220
- };
221
- attempt: AgentCandidateAttemptPolicy;
222
- model: {
223
- requested: string;
224
- reasoningEffort: ReasoningEffort;
225
- };
226
- grader: AgentCandidateBenchmarkGraderIdentity;
182
+ runCell: AgentCandidateRunCell;
183
+ benchmarkSuite: AgentCandidateBenchmarkSuite;
184
+ task: AgentCandidateBenchmarkTask;
227
185
  /** Absolute paths inside the evaluator-owned execution environment. */
228
186
  executionRoots: {
229
187
  taskRoot: string;
@@ -235,9 +193,6 @@ interface AgentCandidateTaskExecution {
235
193
  candidateRoot?: string;
236
194
  profileRoot: string;
237
195
  };
238
- workspace: AgentCandidateWorkspaceSnapshotEvidence;
239
- evaluatorTaskContainer?: ResolvedAgentCandidateContainer;
240
- limits: AgentCandidateExecutionLimits;
241
196
  }
242
197
  interface VerifiedAgentCandidate {
243
198
  readonly bundle: AgentCandidateBundle;
@@ -277,6 +232,10 @@ interface PreparedAgentCandidateTrace {
277
232
  }
278
233
  interface PreparedAgentCandidateExecution {
279
234
  readonly bundle: AgentCandidateBundle;
235
+ readonly benchmark: {
236
+ readonly suite: AgentCandidateBenchmarkSuite;
237
+ readonly task: AgentCandidateBenchmarkTask;
238
+ };
280
239
  readonly executionId: string;
281
240
  readonly roots: {
282
241
  execution: {
@@ -294,6 +253,7 @@ interface PreparedAgentCandidateExecution {
294
253
  bytes: Uint8Array;
295
254
  written: readonly string[];
296
255
  };
256
+ readonly profileActivation: AgentCandidateProfileActivation;
297
257
  readonly executionPlan: {
298
258
  value: AgentCandidateExecutionPlanEvidence;
299
259
  bytes: Uint8Array;
@@ -307,41 +267,61 @@ interface PreparedAgentCandidateExecution {
307
267
  readonly memory: AgentCandidateEffectiveMemory;
308
268
  readonly [preparedCandidateBrand]: true;
309
269
  }
270
+
310
271
  interface AgentCandidateProtectedRunCapture {
311
272
  executionId: string;
312
273
  termination: AgentCandidateTermination;
313
274
  }
314
275
  /** Raw evaluator capture made only after the candidate process is dead. */
315
- interface AgentCandidateExecutorTaskOutcomeCapture {
276
+ type AgentCandidateExecutorTaskOutcomeCapture = {
277
+ readonly kind: 'workspace';
316
278
  /** Claimed final tree. The runtime recomputes it independently from `gitDiff`. */
317
- resultTree: string;
279
+ readonly resultTree: string;
318
280
  /** Complete evaluator-captured workspace description after candidate execution. */
319
- afterState: AgentCandidateWorkspaceManifestMaterial;
281
+ readonly afterState: AgentCandidateWorkspaceManifestMaterial;
320
282
  /** Reproducible workspace archive corresponding to `afterState`. */
321
- archive: Uint8Array;
283
+ readonly archive: Uint8Array;
322
284
  /** Exact binary patch from the signed task base to `afterState`. */
323
- gitDiff: Uint8Array;
324
- }
285
+ readonly gitDiff: Uint8Array;
286
+ } | {
287
+ readonly kind: 'output';
288
+ /** Exact evaluator-captured final output bytes. */
289
+ readonly bytes: Uint8Array;
290
+ };
325
291
  /** Raw isolated-memory capture made only after access has been revoked. */
326
292
  interface AgentCandidateExecutorMemoryCapture {
327
293
  readonly afterState: AgentCandidateWorkspaceManifestMaterial;
328
294
  readonly archive: Uint8Array;
329
295
  }
330
- /** Idempotent executor result after process death and trace drain. */
296
+ /** Replayable evaluator result captured only after process death and trace drain. */
331
297
  interface AgentCandidateExecutorFinalCapture {
332
- readonly stopped: true;
333
298
  readonly taskOutcome?: AgentCandidateExecutorTaskOutcomeCapture;
334
299
  /** Required only when the prepared candidate uses isolated task memory. */
335
300
  readonly memoryAfter?: AgentCandidateExecutorMemoryCapture;
301
+ /** Executor-native bytes preserved when a fresh worker cannot reconstruct a verified outcome. */
302
+ readonly evidence?: Uint8Array;
336
303
  }
337
- /** Branded task outcome that has survived independent patch and tree verification. */
338
- interface VerifiedAgentCandidateTaskOutcome {
339
- readonly evidence: AgentCandidateTaskOutcomeEvidence & {
340
- readonly artifact: AgentCandidateArtifactRef;
304
+ type PersistedTaskOutcomeEvidence<Kind extends AgentCandidateTaskOutcomeMaterial['outcome']['kind']> = Omit<AgentCandidateTaskOutcomeEvidence, 'material'> & {
305
+ readonly artifact: AgentCandidateArtifactRef;
306
+ readonly material: Omit<AgentCandidateTaskOutcomeMaterial, 'outcome'> & {
307
+ readonly outcome: Extract<AgentCandidateTaskOutcomeMaterial['outcome'], {
308
+ kind: Kind;
309
+ }>;
341
310
  };
311
+ };
312
+ /** Branded task outcome that has survived independent evaluator verification. */
313
+ type VerifiedAgentCandidateTaskOutcome = {
314
+ readonly kind: 'workspace';
315
+ readonly evidence: PersistedTaskOutcomeEvidence<'workspace'>;
342
316
  readonly patch: Uint8Array;
343
317
  readonly [verifiedTaskOutcomeBrand]: true;
344
- }
318
+ } | {
319
+ readonly kind: 'output';
320
+ readonly evidence: PersistedTaskOutcomeEvidence<'output'>;
321
+ readonly spec: AgentCandidateTaskOutputSpec;
322
+ readonly bytes: Uint8Array;
323
+ readonly [verifiedTaskOutcomeBrand]: true;
324
+ };
345
325
  /**
346
326
  * Evaluator-owned executable grader, pinned by immutable implementation bytes.
347
327
  *
@@ -384,6 +364,7 @@ interface AgentCandidateBenchmarkGraderPort {
384
364
  /** One detached request passed to the trusted environment-specific executor. */
385
365
  interface AgentCandidateExecutorRequest {
386
366
  readonly executionId: string;
367
+ readonly benchmark: PreparedAgentCandidateExecution['benchmark'];
387
368
  /** Immutable bytes from which the executor creates fresh isolated workspaces. */
388
369
  readonly inputs: {
389
370
  readonly task: AgentCandidateExecutorWorkspaceInput;
@@ -394,6 +375,7 @@ interface AgentCandidateExecutorRequest {
394
375
  };
395
376
  readonly roots: PreparedAgentCandidateExecution['roots']['execution'];
396
377
  readonly profilePlan: PreparedAgentCandidateExecution['profilePlan'];
378
+ readonly profileActivation: AgentCandidateProfileActivation;
397
379
  readonly executionPlan: PreparedAgentCandidateExecution['executionPlan'];
398
380
  readonly materializationReceipt: CanonicalCandidateDocument<AgentCandidateMaterializationReceipt>;
399
381
  readonly launch: PreparedAgentCandidateLaunch;
@@ -403,7 +385,7 @@ interface AgentCandidateExecutorRequest {
403
385
  readonly hardLimits: Pick<AgentCandidateExecutionLimits, 'timeoutMs'>;
404
386
  /** Validity bound checked against protected traces; generic black-box executors cannot preempt it. */
405
387
  readonly observedLimits: Pick<AgentCandidateExecutionLimits, 'maxSteps'>;
406
- readonly knowledge?: PreparedAgentCandidateExecution['knowledge'];
388
+ readonly knowledge?: PreparedAgentCandidateKnowledge;
407
389
  readonly trace: PreparedAgentCandidateTrace;
408
390
  readonly memory: AgentCandidateEffectiveMemory;
409
391
  }
@@ -423,21 +405,29 @@ interface AgentCandidateExecutorPort {
423
405
  /** Absolute epoch-millisecond deadline owned by the runtime. */
424
406
  deadlineAtMs: number;
425
407
  }): Promise<AgentCandidateProtectedRunCapture>;
426
- /**
427
- * Kill any process/container still associated with the request, drain trace
428
- * writes, and capture the final task workspace before teardown.
429
- * The runtime calls this on success, failure, and timeout before model settlement.
430
- * Implementations must be idempotent and concurrency-safe for this exact
431
- * execution/plan pair because a fresh worker may repeat crash recovery.
432
- */
433
- stopAndCapture(request: AgentCandidateExecutorStopRequest, context: {
408
+ /** Kill the exact process/container and drain trace writes. Must be idempotent. */
409
+ stop(request: AgentCandidateExecutorStopRequest, context: {
434
410
  traceStore: TraceStore;
435
411
  reason: 'completed' | 'failed' | 'timeout';
436
412
  /** Aborted at the frozen execution deadline or evaluator cleanup deadline. */
437
413
  signal: AbortSignal;
438
414
  /** Absolute execution deadline; a later stop acknowledgement cannot produce success. */
439
415
  deadlineAtMs: number;
416
+ }): Promise<{
417
+ readonly stopped: true;
418
+ }>;
419
+ /** Capture immutable final evidence after stop. Must be replayable by a fresh worker. */
420
+ capture(request: AgentCandidateExecutorStopRequest, context: {
421
+ traceStore: TraceStore;
422
+ /** Aborted at the frozen execution deadline or evaluator cleanup deadline. */
423
+ signal: AbortSignal;
440
424
  }): Promise<AgentCandidateExecutorFinalCapture>;
425
+ /** Remove evaluator-owned execution resources after final capture. Must be idempotent. */
426
+ dispose?(request: AgentCandidateExecutorStopRequest, context: {
427
+ signal: AbortSignal;
428
+ }): Promise<{
429
+ readonly disposed: true;
430
+ }>;
441
431
  }
442
432
  /** Opaque process identity used for termination without re-exposing launch credentials. */
443
433
  interface AgentCandidateExecutorStopRequest {
@@ -453,6 +443,7 @@ interface AgentCandidateExecutorWorkspaceFile {
453
443
  readonly mode: number;
454
444
  readonly bytes: Uint8Array;
455
445
  }
446
+ /** One exact profile file supplied to an evaluator-owned executor. */
456
447
  interface AgentCandidateExecutorProfileFile {
457
448
  readonly path: string;
458
449
  readonly mode: number;
@@ -479,7 +470,7 @@ type AgentCandidateRunFinalization = {
479
470
  termination?: AgentCandidateTermination;
480
471
  };
481
472
  /** Independent evaluator-gateway usage, even when execution or trace capture failed. */
482
- usage: AgentCandidateSpend | null;
473
+ usage: AgentCandidateFixedSpend | null;
483
474
  };
484
475
  /** Protected trace tags that bind a run to one prepared candidate execution. */
485
476
  declare const CANDIDATE_TRACE_TAGS: {
@@ -497,226 +488,4 @@ declare const CANDIDATE_TRACE_ENV: {
497
488
  readonly traceRunId: "TANGLE_TRACE_RUN_ID";
498
489
  };
499
490
 
500
- /** Durable one-shot lifecycle for candidate execution attempts. */
501
-
502
- /** Non-secret identities a trusted recovery worker needs to close an abandoned attempt. */
503
- interface AgentCandidateExecutionCleanupHandles {
504
- readonly preparationId: string;
505
- readonly modelGrantDigest: Sha256Digest;
506
- readonly resolvedModel: AgentCandidateResolvedModel;
507
- readonly traceRunId: string;
508
- readonly cleanupTimeoutMs: number;
509
- readonly memory?: {
510
- readonly accessDigest: Sha256Digest;
511
- readonly effectiveNamespace: string;
512
- };
513
- }
514
- /** Immutable signed identity stored for one execution attempt. */
515
- interface AgentCandidateExecutionClaim {
516
- readonly executionId: string;
517
- readonly attempt: number;
518
- readonly maxAttempts: number;
519
- readonly retryPolicy: AgentCandidateAttemptPolicy['retryPolicy'];
520
- readonly bundleDigest: Sha256Digest;
521
- readonly executionPlanDigest: Sha256Digest;
522
- /** Frozen plan identity with only attempt number and per-attempt grant identity normalized. */
523
- readonly retryLineageDigest: Sha256Digest;
524
- /** The winning lease stops authorizing a new terminal write at this instant. */
525
- readonly leaseExpiresAtMs: number;
526
- /** Frozen budget for task verification, executable grading, and receipt construction. */
527
- readonly resultTimeoutMs: number;
528
- /** Non-secret handles retained so an expired attempt can be closed and reconciled. */
529
- readonly cleanup: AgentCandidateExecutionCleanupHandles;
530
- }
531
- /** Secret capability required to finish the acquired attempt. */
532
- interface AgentCandidateExecutionLease {
533
- readonly executionId: string;
534
- readonly attempt: number;
535
- readonly token: string;
536
- readonly expiresAtMs: number;
537
- }
538
- /** Only the first class is retryable, and only when the closed model ledger has zero calls. */
539
- type AgentCandidateExecutionFailureClass = 'pre-model-infrastructure' | 'execution' | 'post-model-infrastructure' | 'unknown';
540
- /** Exact fixed-point usage proven by the closed evaluator model ledger. */
541
- interface AgentCandidateExecutionUsage {
542
- readonly costUsdNanos: number;
543
- readonly inputTokens: number;
544
- readonly outputTokens: number;
545
- readonly cachedInputTokens: number;
546
- readonly reasoningTokens: number;
547
- readonly modelCalls: number;
548
- }
549
- /** Evaluator-owned terminal facts staged durably before the terminal CAS. */
550
- type AgentCandidateExecutionTerminalResult = {
551
- readonly schemaVersion: 1;
552
- readonly status: 'succeeded';
553
- readonly usage: AgentCandidateExecutionUsage;
554
- readonly modelSettlement: AgentCandidateArtifactRef;
555
- readonly taskOutcome: AgentCandidateArtifactRef;
556
- readonly benchmarkResult: AgentCandidateArtifactRef;
557
- readonly runReceipt: AgentCandidateArtifactRef;
558
- } | {
559
- readonly schemaVersion: 1;
560
- readonly status: 'failed';
561
- readonly failureClass: AgentCandidateExecutionFailureClass;
562
- readonly usage: AgentCandidateExecutionUsage;
563
- readonly modelSettlement: AgentCandidateArtifactRef;
564
- readonly failureEvidence?: AgentCandidateArtifactRef;
565
- };
566
- /** Durable terminal record for one acquired execution attempt. */
567
- type AgentCandidateExecutionTerminalRecord = AgentCandidateExecutionTerminalResult & {
568
- readonly executionId: string;
569
- readonly attempt: number;
570
- readonly bundleDigest: Sha256Digest;
571
- readonly executionPlanDigest: Sha256Digest;
572
- /** RFC 8785 SHA-256 of this record with `terminalDigest` omitted. */
573
- readonly terminalDigest: Sha256Digest;
574
- };
575
- /** Monotonic durable phase: the second value means candidate code could have started. */
576
- type AgentCandidateExecutionPhase = 'claimed' | 'candidate-may-run';
577
- /** Trusted, independently observed closure facts for one expired winning lease. */
578
- interface AgentCandidateExecutionRecoveryEvidence {
579
- readonly failureClass: AgentCandidateExecutionFailureClass;
580
- readonly usage: AgentCandidateExecutionUsage;
581
- readonly modelSettlement: AgentCandidateArtifactRef;
582
- readonly failureEvidence?: AgentCandidateArtifactRef;
583
- readonly process: {
584
- readonly stopped: true;
585
- readonly executionPlanDigest: Sha256Digest;
586
- };
587
- readonly model: {
588
- readonly closed: true;
589
- readonly preparationId: string;
590
- readonly grantDigest: Sha256Digest;
591
- };
592
- readonly memory?: {
593
- readonly closed: true;
594
- readonly preparationId: string;
595
- readonly accessDigest: Sha256Digest;
596
- readonly effectiveNamespace: string;
597
- };
598
- }
599
- interface AgentCandidateExecutionAttemptRef {
600
- readonly executionId: string;
601
- readonly attempt: number;
602
- }
603
- /** Persisted state available to a fresh trusted recovery worker after a crash. */
604
- interface AgentCandidateExecutionAttemptRecord {
605
- readonly claim: AgentCandidateExecutionClaim;
606
- readonly phase: AgentCandidateExecutionPhase;
607
- /** Durable outbox content written before the terminal compare-and-set. */
608
- readonly staged?: AgentCandidateExecutionTerminalRecord;
609
- readonly terminal?: AgentCandidateExecutionTerminalRecord;
610
- }
611
- /** Result of atomically claiming one execution attempt. */
612
- type AgentCandidateExecutionClaimResult = {
613
- readonly acquired: true;
614
- readonly claim: AgentCandidateExecutionClaim;
615
- readonly lease: AgentCandidateExecutionLease;
616
- } | {
617
- readonly acquired: false;
618
- readonly reason: 'already-claimed';
619
- /** The durable winner already occupying this execution-attempt slot. */
620
- readonly claim: AgentCandidateExecutionClaim;
621
- /** True only when every signed claim field matches the durable winner. */
622
- readonly exactReplay: boolean;
623
- } | {
624
- readonly acquired: false;
625
- readonly reason: 'retry-not-eligible';
626
- readonly claim: AgentCandidateExecutionClaim;
627
- readonly detail: AgentCandidateRetryRejection;
628
- };
629
- /** Result of atomically recording an attempt's terminal facts. */
630
- type AgentCandidateExecutionFinishResult = {
631
- readonly finished: true;
632
- readonly terminal: AgentCandidateExecutionTerminalRecord;
633
- } | {
634
- readonly finished: false;
635
- readonly terminal: AgentCandidateExecutionTerminalRecord;
636
- /** True when a repeated finish supplied the same terminal digest. */
637
- readonly exactReplay: boolean;
638
- };
639
- /** Result of durably staging the one immutable terminal outbox entry. */
640
- type AgentCandidateExecutionStageResult = {
641
- readonly staged: true;
642
- readonly terminal: AgentCandidateExecutionTerminalRecord;
643
- } | {
644
- readonly staged: false;
645
- readonly terminal: AgentCandidateExecutionTerminalRecord;
646
- readonly exactReplay: boolean;
647
- };
648
- /** Result of crossing the irreversible candidate-may-run boundary. */
649
- type AgentCandidateExecutionPhaseResult = {
650
- readonly marked: true;
651
- readonly phase: 'candidate-may-run';
652
- } | {
653
- readonly marked: false;
654
- readonly phase: 'candidate-may-run';
655
- };
656
- type AgentCandidateRetryRejection = 'prior-attempt-missing' | 'prior-attempt-running' | 'prior-attempt-succeeded' | 'prior-attempt-spent-model-calls' | 'prior-attempt-not-pre-model-infrastructure' | 'retry-lineage-mismatch';
657
- /**
658
- * Atomic one-shot store for candidate execution attempts.
659
- *
660
- * Implementations must linearize both methods across every process sharing the
661
- * store. Terminal publication is deliberately two-step: `stageTerminal`
662
- * fsyncs the complete immutable outbox record, then `finish` publishes exactly
663
- * those staged bytes by digest. A crash between the two leaves recoverable
664
- * evidence rather than an ambiguous completed run.
665
- */
666
- interface AgentCandidateExecutionClaimStore {
667
- tryClaim(claim: AgentCandidateExecutionClaim): Promise<AgentCandidateExecutionClaimResult>;
668
- getAttempt(attempt: AgentCandidateExecutionAttemptRef): Promise<AgentCandidateExecutionAttemptRecord | undefined>;
669
- /** Persist the point after which candidate code may have run. */
670
- markCandidateMayRun(lease: AgentCandidateExecutionLease): Promise<AgentCandidateExecutionPhaseResult>;
671
- /** Fsync the complete terminal record into the durable outbox. */
672
- stageTerminal(lease: AgentCandidateExecutionLease, result: AgentCandidateExecutionTerminalResult): Promise<AgentCandidateExecutionStageResult>;
673
- /** Publish exactly the staged terminal identified by `terminalDigest`. */
674
- finish(lease: AgentCandidateExecutionLease, terminalDigest: Sha256Digest): Promise<AgentCandidateExecutionFinishResult>;
675
- /**
676
- * Write a failed terminal only after the lease expired and a trusted worker
677
- * independently proved process death plus model and memory closure.
678
- */
679
- recoverExpired(attempt: AgentCandidateExecutionAttemptRef, evidence: AgentCandidateExecutionRecoveryEvidence): Promise<AgentCandidateExecutionFinishResult>;
680
- }
681
- interface InMemoryAgentCandidateExecutionClaimStoreOptions {
682
- /** Testable evaluator clock; defaults to `Date.now`. */
683
- now?: () => number;
684
- }
685
- /** Single-process lifecycle implementation. */
686
- declare class InMemoryAgentCandidateExecutionClaimStore implements AgentCandidateExecutionClaimStore {
687
- private readonly claims;
688
- private readonly now;
689
- constructor(options?: InMemoryAgentCandidateExecutionClaimStoreOptions);
690
- tryClaim(requested: AgentCandidateExecutionClaim): Promise<AgentCandidateExecutionClaimResult>;
691
- getAttempt(requestedAttempt: AgentCandidateExecutionAttemptRef): Promise<AgentCandidateExecutionAttemptRecord | undefined>;
692
- markCandidateMayRun(requestedLease: AgentCandidateExecutionLease): Promise<AgentCandidateExecutionPhaseResult>;
693
- stageTerminal(requestedLease: AgentCandidateExecutionLease, result: AgentCandidateExecutionTerminalResult): Promise<AgentCandidateExecutionStageResult>;
694
- finish(requestedLease: AgentCandidateExecutionLease, requestedTerminalDigest: Sha256Digest): Promise<AgentCandidateExecutionFinishResult>;
695
- recoverExpired(requestedAttempt: AgentCandidateExecutionAttemptRef, evidence: AgentCandidateExecutionRecoveryEvidence): Promise<AgentCandidateExecutionFinishResult>;
696
- private requireClaim;
697
- }
698
-
699
- interface ExecutePreparedAgentCandidateOptions {
700
- executor: AgentCandidateExecutorPort;
701
- grader: AgentCandidateBenchmarkGraderPort;
702
- outputArtifacts: AgentCandidateOutputArtifactPort;
703
- traceStore: TraceStore;
704
- /** Long-lived evaluator-owned store shared by every process that can run this benchmark. */
705
- claimStore: AgentCandidateExecutionClaimStore;
706
- /** Maximum time to prove process death and revoke protected access after a run ends. */
707
- cleanupTimeoutMs?: number;
708
- /** Maximum time for task verification, executable grading, and receipt construction. */
709
- resultTimeoutMs?: number;
710
- }
711
- /** Executes and finalizes one durably claimed candidate without exposing an unproven result. */
712
- declare function executePreparedAgentCandidate(prepared: PreparedAgentCandidateExecution, options: ExecutePreparedAgentCandidateOptions): Promise<AgentCandidateRunFinalization>;
713
-
714
- interface PrepareAgentCandidateExecutionOptions {
715
- cleanupTimeoutMs?: number;
716
- /** Maximum time for task verification, executable grading, and receipt construction. */
717
- resultTimeoutMs?: number;
718
- }
719
- /** Materializes a verified candidate into one immutable evaluator-owned execution plan. */
720
- declare function prepareAgentCandidateExecution(candidate: VerifiedAgentCandidate, task: AgentCandidateTaskExecution, ports: AgentCandidateExecutionPorts, options?: PrepareAgentCandidateExecutionOptions): Promise<PreparedAgentCandidateExecution>;
721
-
722
- export { InMemoryAgentCandidateExecutionClaimStore as $, type AgentCandidateBundleInput as A, type AgentCandidateExecutorProfileFile as B, type AgentCandidateExecutorRequest as C, type AgentCandidateExecutorStopRequest as D, type ExecutePreparedAgentCandidateOptions as E, type AgentCandidateExecutorTaskOutcomeCapture as F, type AgentCandidateExecutorWorkspaceFile as G, type AgentCandidateExecutorWorkspaceInput as H, type AgentCandidateMemoryPort as I, type AgentCandidateMemoryResetResult as J, type AgentCandidateModelLimits as K, type AgentCandidateModelPort as L, type AgentCandidateOutputArtifactPort as M, type AgentCandidateOutputPurpose as N, type AgentCandidateProtectedModelActivation as O, type PrepareAgentCandidateExecutionOptions as P, type AgentCandidateProtectedModelCall as Q, type AgentCandidateProtectedModelReservation as R, type AgentCandidateProtectedModelSettlement as S, type AgentCandidateProtectedRunCapture as T, type AgentCandidateRepositoryPort as U, type AgentCandidateRetryRejection as V, type AgentCandidateVerificationPorts as W, type AgentCandidateWorkspacePort as X, CANDIDATE_TRACE_ENV as Y, CANDIDATE_TRACE_TAGS as Z, type CanonicalCandidateDocument as _, type AgentCandidateTaskExecution as a, type PreparedAgentCandidateExecution as a0, type PreparedAgentCandidateInstruction as a1, type PreparedAgentCandidateKnowledge as a2, type PreparedAgentCandidateLaunch as a3, type PreparedAgentCandidateTrace as a4, type ResolvedAgentCandidateContainer as a5, type VerifiedAgentCandidate as a6, type VerifiedAgentCandidateTaskOutcome as a7, executePreparedAgentCandidate as a8, prepareAgentCandidateExecution as a9, sealAgentCandidateBundle as aa, type AgentCandidateExecutionPorts as b, type AgentCandidateRunFinalization as c, type AgentCandidateArtifactPort as d, type AgentCandidateBenchmarkGraderIdentity as e, type AgentCandidateBenchmarkGraderPort as f, type AgentCandidateContainerPort as g, type AgentCandidateExecutionAttemptRecord as h, type AgentCandidateExecutionAttemptRef as i, type AgentCandidateExecutionClaim as j, type AgentCandidateExecutionClaimResult as k, type AgentCandidateExecutionClaimStore as l, type AgentCandidateExecutionCleanupHandles as m, type AgentCandidateExecutionFailureClass as n, type AgentCandidateExecutionFinishResult as o, type AgentCandidateExecutionLease as p, type AgentCandidateExecutionPhase as q, type AgentCandidateExecutionPhaseResult as r, type AgentCandidateExecutionRecoveryEvidence as s, type AgentCandidateExecutionStageResult as t, type AgentCandidateExecutionTerminalRecord as u, type AgentCandidateExecutionTerminalResult as v, type AgentCandidateExecutionUsage as w, type AgentCandidateExecutorFinalCapture as x, type AgentCandidateExecutorMemoryCapture as y, type AgentCandidateExecutorPort as z };
491
+ export { type AgentCandidateExecutorPort as A, type AgentCandidateWorkspacePort as B, CANDIDATE_TRACE_ENV as C, CANDIDATE_TRACE_TAGS as D, type CanonicalCandidateDocument as E, type PreparedAgentCandidateInstruction as F, type PreparedAgentCandidateKnowledge as G, type PreparedAgentCandidateLaunch as H, type PreparedAgentCandidateTrace as I, type VerifiedAgentCandidateTaskOutcome as J, type PreparedAgentCandidateExecution as P, type ResolvedAgentCandidateContainer as R, type VerifiedAgentCandidate as V, type AgentCandidateBenchmarkGraderPort as a, type AgentCandidateOutputArtifactPort as b, type AgentCandidateRunFinalization as c, type AgentCandidateTaskExecution as d, type AgentCandidateExecutionPorts as e, type AgentCandidateArtifactPort as f, type AgentCandidateContainerPort as g, type AgentCandidateExecutorFinalCapture as h, type AgentCandidateExecutorMemoryCapture as i, type AgentCandidateExecutorProfileFile as j, type AgentCandidateExecutorRequest as k, type AgentCandidateExecutorStopRequest as l, type AgentCandidateExecutorTaskOutcomeCapture as m, type AgentCandidateExecutorWorkspaceFile as n, type AgentCandidateExecutorWorkspaceInput as o, type AgentCandidateMemoryPort as p, type AgentCandidateMemoryResetResult as q, type AgentCandidateModelLimits as r, type AgentCandidateModelPort as s, type AgentCandidateOutputPurpose as t, type AgentCandidateProtectedModelActivation as u, type AgentCandidateProtectedModelReservation as v, type AgentCandidateProtectedModelSettlement as w, type AgentCandidateProtectedRunCapture as x, type AgentCandidateRepositoryPort as y, type AgentCandidateVerificationPorts as z };
@@ -1,7 +1,7 @@
1
1
  import { DefaultVerdict } from '@tangle-network/agent-eval';
2
2
  import { AgentProfile } from '@tangle-network/agent-interface';
3
3
  import { BackendType } from '@tangle-network/sandbox';
4
- import { L as LoopTokenUsage, R as RuntimeHooks } from './types-ByAYqlVb.js';
4
+ import { L as LoopTokenUsage, R as RuntimeHooks } from './types-B3vAW0Oq.js';
5
5
 
6
6
  /**
7
7
  *
@@ -385,8 +385,8 @@ type SpawnEvent = {
385
385
  };
386
386
  /**
387
387
  * The spawn-tree event source (mirrors `ConversationJournal`'s begin/append/load shape).
388
- * `loadTree` replays the full ordered event list for resume/replay; `appendEvent` is
389
- * called only AFTER the event is observed-committed (never speculative).
388
+ * `loadTree` returns events for inspection and completed-settlement replay, not live process
389
+ * recovery; `appendEvent` runs only AFTER the event is observed-committed (never speculative).
390
390
  */
391
391
  interface SpawnJournal {
392
392
  loadTree(root: NodeId): Promise<SpawnEvent[] | undefined>;
@@ -1,9 +1,9 @@
1
1
  import { AgentProfile } from '@tangle-network/agent-interface';
2
2
  import { AnalystFinding, DefaultVerdict } from '@tangle-network/agent-eval';
3
- import { d as AgentSpec, e as ExecutorRegistry, B as Budget, A as Agent, f as SpawnJournal, a as ResultBlobStore, g as RootHandle, b as SupervisedResult, N as NodeId, h as Settled, i as Spend, S as Scope, c as Executor } from './types-1d5QGK3t.js';
4
- import { R as RuntimeHooks, I as Iteration } from './types-ByAYqlVb.js';
3
+ import { d as AgentSpec, e as ExecutorRegistry, B as Budget, A as Agent, f as SpawnJournal, a as ResultBlobStore, g as RootHandle, b as SupervisedResult, N as NodeId, h as Settled, i as Spend, S as Scope, c as Executor } from './types-CmnA2iL3.js';
4
+ import { R as RuntimeHooks, I as Iteration } from './types-B3vAW0Oq.js';
5
5
  import { BackendType } from '@tangle-network/sandbox';
6
- import { W as WorktreeHarnessResult, G as GitRunner, a as WorktreeCheckRunner, D as DeliverableSpec } from './completion-gate-D1gX1-hg.js';
6
+ import { W as WorktreeHarnessResult, G as GitRunner, a as WorktreeCheckRunner, D as DeliverableSpec } from './completion-gate-C80jiRfN.js';
7
7
  import { L as LocalHarness, r as runLocalHarness } from './local-harness-ZqCx51u7.js';
8
8
 
9
9
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tangle-network/agent-runtime",
3
- "version": "0.94.13",
3
+ "version": "0.95.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": {
@@ -100,13 +100,15 @@
100
100
  "scripts": {
101
101
  "build": "tsup",
102
102
  "dev": "tsup --watch",
103
- "prepare": "(git rev-parse --git-dir > /dev/null 2>&1 && git config core.hooksPath .githooks) || true; tsup",
103
+ "prepublishOnly": "pnpm run build",
104
104
  "test": "vitest run",
105
105
  "test:watch": "vitest",
106
106
  "lint": "biome check src tests examples",
107
107
  "lint:fix": "biome check --write src tests examples",
108
108
  "typecheck": "tsc --noEmit && pnpm run typecheck:examples",
109
109
  "typecheck:examples": "tsc --noEmit -p tsconfig.examples.json",
110
+ "verify:bench": "pnpm --filter @tangle-network/agent-bench run typecheck:public && pnpm --filter @tangle-network/agent-bench test && pnpm --filter @tangle-network/agent-bench run verify:package:local-runtime",
111
+ "verify:bench:published": "pnpm --filter @tangle-network/agent-bench run typecheck:public && pnpm --filter @tangle-network/agent-bench test && pnpm --filter @tangle-network/agent-bench run verify:package",
110
112
  "verify:package": "node scripts/verify-package-exports.mjs",
111
113
  "verify:primeintellect": "pnpm build && node scripts/verify-primeintellect-v1.mjs",
112
114
  "verify:primeintellect:live": "pnpm build && node scripts/verify-primeintellect-live.mjs",
@@ -116,9 +118,9 @@
116
118
  },
117
119
  "devDependencies": {
118
120
  "@biomejs/biome": "^2.4.15",
119
- "@tangle-network/agent-eval": "0.120.1",
120
- "@tangle-network/agent-interface": "0.26.1",
121
- "@tangle-network/sandbox": "^0.9.7",
121
+ "@tangle-network/agent-eval": "0.122.1",
122
+ "@tangle-network/agent-interface": "0.30.0",
123
+ "@tangle-network/sandbox": "^0.11.1",
122
124
  "@types/node": "^25.9.3",
123
125
  "@types/tar-stream": "3.1.4",
124
126
  "playwright": "^1.61.0",
@@ -134,6 +136,7 @@
134
136
  "minimumReleaseAgeExclude": [
135
137
  "@tangle-network/agent-eval",
136
138
  "@tangle-network/agent-interface",
139
+ "@tangle-network/agent-knowledge",
137
140
  "@tangle-network/agent-profile-materialize",
138
141
  "@tangle-network/sandbox"
139
142
  ],
@@ -147,9 +150,9 @@
147
150
  "license": "MIT",
148
151
  "packageManager": "pnpm@10.28.0",
149
152
  "peerDependencies": {
150
- "@tangle-network/agent-eval": ">=0.120.1 <0.121.0",
151
- "@tangle-network/agent-interface": ">=0.26.1 <0.27.0",
152
- "@tangle-network/sandbox": ">=0.8.0 <1.0.0",
153
+ "@tangle-network/agent-eval": ">=0.122.1 <0.123.0",
154
+ "@tangle-network/agent-interface": ">=0.30.0 <0.31.0",
155
+ "@tangle-network/sandbox": ">=0.11.1 <1.0.0",
153
156
  "playwright": "^1.40.0"
154
157
  },
155
158
  "peerDependenciesMeta": {
@@ -161,8 +164,8 @@
161
164
  }
162
165
  },
163
166
  "dependencies": {
164
- "@tangle-network/agent-knowledge": "^1.12.1",
165
- "@tangle-network/agent-profile-materialize": "0.3.2",
167
+ "@tangle-network/agent-knowledge": "^3.0.1",
168
+ "@tangle-network/agent-profile-materialize": "0.5.1",
166
169
  "tar-stream": "3.2.0"
167
170
  }
168
171
  }