@tangle-network/agent-interface 0.27.2 → 0.29.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 (31) hide show
  1. package/dist/agent-candidate-artifact-schema.d.ts +0 -3
  2. package/dist/agent-candidate-artifact-schema.js +0 -2
  3. package/dist/agent-candidate-code-schema.d.ts +0 -10
  4. package/dist/agent-candidate-code-schema.js +0 -1
  5. package/dist/agent-candidate-execution-plan-schema.d.ts +173 -382
  6. package/dist/agent-candidate-execution-plan-schema.js +100 -138
  7. package/dist/agent-candidate-lineage-schema.d.ts +1 -31
  8. package/dist/agent-candidate-lineage-schema.js +3 -34
  9. package/dist/agent-candidate-outcome-schema.d.ts +48 -36
  10. package/dist/agent-candidate-outcome-schema.js +23 -32
  11. package/dist/agent-candidate-promotion-schema.d.ts +11021 -2411
  12. package/dist/agent-candidate-promotion-schema.js +495 -109
  13. package/dist/agent-candidate-receipt-schema.d.ts +260 -344
  14. package/dist/agent-candidate-receipt-schema.js +82 -11
  15. package/dist/agent-candidate-schema-common.d.ts +8 -0
  16. package/dist/agent-candidate-schema-common.js +35 -1
  17. package/dist/agent-candidate-schema.d.ts +2 -44
  18. package/dist/agent-candidate-schema.js +3 -29
  19. package/dist/agent-candidate-task-schema.d.ts +643 -0
  20. package/dist/agent-candidate-task-schema.js +191 -0
  21. package/dist/agent-candidate.d.ts +173 -94
  22. package/dist/agent-candidate.test-fixture.d.ts +0 -32
  23. package/dist/agent-candidate.test-fixture.js +0 -32
  24. package/dist/index.d.ts +0 -1
  25. package/dist/index.js +0 -1
  26. package/dist/profile-diff.d.ts +0 -1
  27. package/dist/profile-schema.d.ts +9 -0
  28. package/dist/profile-schema.js +14 -6
  29. package/package.json +2 -2
  30. package/dist/agent-candidate-compat.d.ts +0 -1918
  31. package/dist/agent-candidate-compat.js +0 -340
@@ -70,10 +70,8 @@ export declare const agentCandidateModelSettlementMaterialSchema: z.ZodObject<{
70
70
  modelCalls: z.ZodNumber;
71
71
  costUsdNanos: z.ZodNumber;
72
72
  }, z.core.$strict>;
73
- schemaVersion: z.ZodLiteral<2>;
74
73
  }, z.core.$strict>;
75
74
  export declare const agentCandidateModelSettlementEvidenceSchema: z.ZodObject<{
76
- schemaVersion: z.ZodLiteral<2>;
77
75
  kind: z.ZodLiteral<"agent-candidate-model-settlement">;
78
76
  digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
79
77
  material: z.ZodType<{
@@ -111,7 +109,6 @@ export declare const agentCandidateModelSettlementEvidenceSchema: z.ZodObject<{
111
109
  modelCalls: number;
112
110
  costUsdNanos: number;
113
111
  };
114
- schemaVersion: 2;
115
112
  }, unknown, z.core.$ZodTypeInternals<{
116
113
  calls: {
117
114
  callId: string;
@@ -147,7 +144,6 @@ export declare const agentCandidateModelSettlementEvidenceSchema: z.ZodObject<{
147
144
  modelCalls: number;
148
145
  costUsdNanos: number;
149
146
  };
150
- schemaVersion: 2;
151
147
  }, unknown>>;
152
148
  artifact: z.ZodUnion<readonly [z.ZodObject<{
153
149
  locator: z.ZodDiscriminatedUnion<[z.ZodObject<{
@@ -176,7 +172,6 @@ export declare const agentCandidateRepositoryStateSchema: z.ZodObject<{
176
172
  tree: z.ZodString;
177
173
  }, z.core.$strict>;
178
174
  export declare const agentCandidateTaskOutcomeMaterialSchema: z.ZodObject<{
179
- schemaVersion: z.ZodLiteral<2>;
180
175
  kind: z.ZodLiteral<"agent-candidate-task-outcome-material">;
181
176
  executionPlanDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
182
177
  outcome: z.ZodDiscriminatedUnion<[z.ZodObject<{
@@ -194,11 +189,9 @@ export declare const agentCandidateTaskOutcomeMaterialSchema: z.ZodObject<{
194
189
  tree: z.ZodString;
195
190
  }, z.core.$strict>;
196
191
  afterState: z.ZodObject<{
197
- schemaVersion: z.ZodLiteral<2>;
198
192
  kind: z.ZodLiteral<"agent-candidate-workspace-snapshot">;
199
193
  digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
200
194
  material: z.ZodObject<{
201
- schemaVersion: z.ZodLiteral<2>;
202
195
  kind: z.ZodLiteral<"agent-candidate-workspace-manifest">;
203
196
  files: z.ZodArray<z.ZodObject<{
204
197
  path: z.ZodString;
@@ -286,11 +279,9 @@ export declare const agentCandidateTaskOutcomeMaterialSchema: z.ZodObject<{
286
279
  }, z.core.$strict>], "kind">;
287
280
  }, z.core.$strict>;
288
281
  export declare const agentCandidateTaskOutcomeEvidenceSchema: z.ZodObject<{
289
- schemaVersion: z.ZodLiteral<2>;
290
282
  kind: z.ZodLiteral<"agent-candidate-task-outcome">;
291
283
  digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
292
284
  material: z.ZodType<{
293
- schemaVersion: 2;
294
285
  kind: "agent-candidate-task-outcome-material";
295
286
  executionPlanDigest: `sha256:${string}`;
296
287
  outcome: {
@@ -308,11 +299,9 @@ export declare const agentCandidateTaskOutcomeEvidenceSchema: z.ZodObject<{
308
299
  tree: string;
309
300
  };
310
301
  afterState: {
311
- schemaVersion: 2;
312
302
  kind: "agent-candidate-workspace-snapshot";
313
303
  digest: `sha256:${string}`;
314
304
  material: {
315
- schemaVersion: 2;
316
305
  kind: "agent-candidate-workspace-manifest";
317
306
  files: {
318
307
  path: string;
@@ -399,7 +388,6 @@ export declare const agentCandidateTaskOutcomeEvidenceSchema: z.ZodObject<{
399
388
  };
400
389
  };
401
390
  }, unknown, z.core.$ZodTypeInternals<{
402
- schemaVersion: 2;
403
391
  kind: "agent-candidate-task-outcome-material";
404
392
  executionPlanDigest: `sha256:${string}`;
405
393
  outcome: {
@@ -417,11 +405,9 @@ export declare const agentCandidateTaskOutcomeEvidenceSchema: z.ZodObject<{
417
405
  tree: string;
418
406
  };
419
407
  afterState: {
420
- schemaVersion: 2;
421
408
  kind: "agent-candidate-workspace-snapshot";
422
409
  digest: `sha256:${string}`;
423
410
  material: {
424
- schemaVersion: 2;
425
411
  kind: "agent-candidate-workspace-manifest";
426
412
  files: {
427
413
  path: string;
@@ -533,19 +519,13 @@ export declare const agentCandidateBenchmarkDimensionSchema: z.ZodObject<{
533
519
  score: z.ZodNumber;
534
520
  }, z.core.$strict>;
535
521
  export declare const agentCandidateBenchmarkResultMaterialSchema: z.ZodObject<{
536
- schemaVersion: z.ZodLiteral<1>;
537
522
  kind: z.ZodLiteral<"agent-candidate-benchmark-result-material">;
538
523
  executionPlanDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
539
524
  taskOutcomeDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
540
- benchmark: z.ZodObject<{
541
- name: z.ZodString;
542
- version: z.ZodString;
543
- taskId: z.ZodString;
544
- splitDigest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
545
- }, z.core.$strict>;
546
525
  grader: z.ZodObject<{
547
526
  name: z.ZodString;
548
527
  version: z.ZodString;
528
+ format: z.ZodLiteral<"tangle-grader">;
549
529
  artifact: z.ZodObject<{
550
530
  locator: z.ZodDiscriminatedUnion<[z.ZodObject<{
551
531
  kind: z.ZodLiteral<"s3">;
@@ -575,6 +555,21 @@ export declare const agentCandidateBenchmarkResultMaterialSchema: z.ZodObject<{
575
555
  sha256: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
576
556
  byteLength: z.ZodNumber;
577
557
  }, z.core.$strict>;
558
+ grading: z.ZodObject<{
559
+ usage: z.ZodObject<{
560
+ inputTokens: z.ZodNumber;
561
+ outputTokens: z.ZodNumber;
562
+ cachedInputTokens: z.ZodNumber;
563
+ reasoningTokens: z.ZodNumber;
564
+ modelCalls: z.ZodNumber;
565
+ costUsdNanos: z.ZodNumber;
566
+ }, z.core.$strict>;
567
+ timing: z.ZodObject<{
568
+ startedAtMs: z.ZodNumber;
569
+ endedAtMs: z.ZodNumber;
570
+ durationMs: z.ZodNumber;
571
+ }, z.core.$strict>;
572
+ }, z.core.$strict>;
578
573
  score: z.ZodNumber;
579
574
  passed: z.ZodBoolean;
580
575
  dimensions: z.ZodArray<z.ZodObject<{
@@ -583,23 +578,16 @@ export declare const agentCandidateBenchmarkResultMaterialSchema: z.ZodObject<{
583
578
  }, z.core.$strict>>;
584
579
  }, z.core.$strict>;
585
580
  export declare const agentCandidateBenchmarkResultEvidenceSchema: z.ZodObject<{
586
- schemaVersion: z.ZodLiteral<1>;
587
581
  kind: z.ZodLiteral<"agent-candidate-benchmark-result">;
588
582
  digest: z.ZodType<`sha256:${string}`, unknown, z.core.$ZodTypeInternals<`sha256:${string}`, unknown>>;
589
583
  material: z.ZodType<{
590
- schemaVersion: 1;
591
584
  kind: "agent-candidate-benchmark-result-material";
592
585
  executionPlanDigest: `sha256:${string}`;
593
586
  taskOutcomeDigest: `sha256:${string}`;
594
- benchmark: {
595
- name: string;
596
- version: string;
597
- taskId: string;
598
- splitDigest: `sha256:${string}`;
599
- };
600
587
  grader: {
601
588
  name: string;
602
589
  version: string;
590
+ format: "tangle-grader";
603
591
  artifact: {
604
592
  locator: {
605
593
  kind: "s3";
@@ -629,6 +617,21 @@ export declare const agentCandidateBenchmarkResultEvidenceSchema: z.ZodObject<{
629
617
  sha256: `sha256:${string}`;
630
618
  byteLength: number;
631
619
  };
620
+ grading: {
621
+ usage: {
622
+ inputTokens: number;
623
+ outputTokens: number;
624
+ cachedInputTokens: number;
625
+ reasoningTokens: number;
626
+ modelCalls: number;
627
+ costUsdNanos: number;
628
+ };
629
+ timing: {
630
+ startedAtMs: number;
631
+ endedAtMs: number;
632
+ durationMs: number;
633
+ };
634
+ };
632
635
  score: number;
633
636
  passed: boolean;
634
637
  dimensions: {
@@ -636,19 +639,13 @@ export declare const agentCandidateBenchmarkResultEvidenceSchema: z.ZodObject<{
636
639
  score: number;
637
640
  }[];
638
641
  }, unknown, z.core.$ZodTypeInternals<{
639
- schemaVersion: 1;
640
642
  kind: "agent-candidate-benchmark-result-material";
641
643
  executionPlanDigest: `sha256:${string}`;
642
644
  taskOutcomeDigest: `sha256:${string}`;
643
- benchmark: {
644
- name: string;
645
- version: string;
646
- taskId: string;
647
- splitDigest: `sha256:${string}`;
648
- };
649
645
  grader: {
650
646
  name: string;
651
647
  version: string;
648
+ format: "tangle-grader";
652
649
  artifact: {
653
650
  locator: {
654
651
  kind: "s3";
@@ -678,6 +675,21 @@ export declare const agentCandidateBenchmarkResultEvidenceSchema: z.ZodObject<{
678
675
  sha256: `sha256:${string}`;
679
676
  byteLength: number;
680
677
  };
678
+ grading: {
679
+ usage: {
680
+ inputTokens: number;
681
+ outputTokens: number;
682
+ cachedInputTokens: number;
683
+ reasoningTokens: number;
684
+ modelCalls: number;
685
+ costUsdNanos: number;
686
+ };
687
+ timing: {
688
+ startedAtMs: number;
689
+ endedAtMs: number;
690
+ durationMs: number;
691
+ };
692
+ };
681
693
  score: number;
682
694
  passed: boolean;
683
695
  dimensions: {
@@ -1,6 +1,6 @@
1
1
  import { z } from "zod";
2
2
  import { agentCandidateArtifactRefSchema, agentCandidateCapturedArtifactSchema, agentCandidateWorkspaceSnapshotEvidenceSchema, } from "./agent-candidate-artifact-schema.js";
3
- import { agentCandidateResolvedModelSchema } from "./agent-candidate-execution-plan-schema.js";
3
+ import { agentCandidateBenchmarkGraderIdentitySchema, agentCandidateResolvedModelSchema, } from "./agent-candidate-execution-plan-schema.js";
4
4
  import { agentCandidateMediaTypeSchema, gitObjectSchema, isCanonicalJsonValue, sameGitObjectFormat, sha256DigestSchema, } from "./agent-candidate-schema-common.js";
5
5
  const safeCountSchema = z
6
6
  .number()
@@ -66,7 +66,6 @@ const modelSettlementMaterialShape = {
66
66
  };
67
67
  export const agentCandidateModelSettlementMaterialSchema = z
68
68
  .object({
69
- schemaVersion: z.literal(2),
70
69
  ...modelSettlementMaterialShape,
71
70
  calls: z.array(agentCandidateModelSettlementCallSchema),
72
71
  })
@@ -150,7 +149,7 @@ function refineModelSettlementMaterial(material, ctx) {
150
149
  });
151
150
  }
152
151
  }
153
- export const agentCandidateModelSettlementEvidenceSchema = evidenceSchema(2, "agent-candidate-model-settlement", agentCandidateModelSettlementMaterialSchema, "model settlement");
152
+ export const agentCandidateModelSettlementEvidenceSchema = evidenceSchema("agent-candidate-model-settlement", agentCandidateModelSettlementMaterialSchema, "model settlement");
154
153
  export const agentCandidateRepositoryStateSchema = z
155
154
  .object({
156
155
  identity: z.string().min(1),
@@ -170,7 +169,6 @@ export const agentCandidateRepositoryStateSchema = z
170
169
  });
171
170
  export const agentCandidateTaskOutcomeMaterialSchema = z
172
171
  .object({
173
- schemaVersion: z.literal(2),
174
172
  kind: z.literal("agent-candidate-task-outcome-material"),
175
173
  executionPlanDigest: sha256DigestSchema,
176
174
  outcome: z.discriminatedUnion("kind", [
@@ -255,7 +253,7 @@ export const agentCandidateTaskOutcomeMaterialSchema = z
255
253
  });
256
254
  }
257
255
  });
258
- export const agentCandidateTaskOutcomeEvidenceSchema = evidenceSchema(2, "agent-candidate-task-outcome", agentCandidateTaskOutcomeMaterialSchema, "task outcome");
256
+ export const agentCandidateTaskOutcomeEvidenceSchema = evidenceSchema("agent-candidate-task-outcome", agentCandidateTaskOutcomeMaterialSchema, "task outcome");
259
257
  export const agentCandidateBenchmarkDimensionSchema = z
260
258
  .object({
261
259
  name: normalizedDimensionNameSchema,
@@ -264,39 +262,29 @@ export const agentCandidateBenchmarkDimensionSchema = z
264
262
  .strict();
265
263
  export const agentCandidateBenchmarkResultMaterialSchema = z
266
264
  .object({
267
- schemaVersion: z.literal(1),
268
265
  kind: z.literal("agent-candidate-benchmark-result-material"),
269
266
  executionPlanDigest: sha256DigestSchema,
270
267
  taskOutcomeDigest: sha256DigestSchema,
271
- benchmark: z
272
- .object({
273
- name: z.string().min(1),
274
- version: z.string().min(1),
275
- taskId: z.string().min(1),
276
- splitDigest: sha256DigestSchema,
277
- })
278
- .strict(),
279
- grader: z
268
+ grader: agentCandidateBenchmarkGraderIdentitySchema,
269
+ evidence: agentCandidateArtifactRefSchema,
270
+ grading: z
280
271
  .object({
281
- name: z.string().min(1),
282
- version: z.string().min(1),
283
- artifact: agentCandidateArtifactRefSchema,
272
+ usage: agentCandidateFixedSpendSchema,
273
+ timing: z
274
+ .object({
275
+ startedAtMs: safeCountSchema,
276
+ endedAtMs: safeCountSchema,
277
+ durationMs: safeCountSchema,
278
+ })
279
+ .strict(),
284
280
  })
285
281
  .strict(),
286
- evidence: agentCandidateArtifactRefSchema,
287
282
  score: normalizedScoreSchema,
288
283
  passed: z.boolean(),
289
284
  dimensions: z.array(agentCandidateBenchmarkDimensionSchema),
290
285
  })
291
286
  .strict()
292
287
  .superRefine((material, ctx) => {
293
- if (material.grader.artifact.byteLength === 0) {
294
- ctx.addIssue({
295
- code: "custom",
296
- path: ["grader", "artifact", "byteLength"],
297
- message: "pinned grader artifact must contain executable grader bytes",
298
- });
299
- }
300
288
  if (material.evidence.byteLength === 0) {
301
289
  ctx.addIssue({
302
290
  code: "custom",
@@ -304,11 +292,15 @@ export const agentCandidateBenchmarkResultMaterialSchema = z
304
292
  message: "benchmark result must contain non-empty durable grading evidence",
305
293
  });
306
294
  }
307
- if (material.evidence.sha256 === material.grader.artifact.sha256) {
295
+ if (material.grading.timing.endedAtMs <
296
+ material.grading.timing.startedAtMs ||
297
+ material.grading.timing.durationMs !==
298
+ material.grading.timing.endedAtMs -
299
+ material.grading.timing.startedAtMs) {
308
300
  ctx.addIssue({
309
301
  code: "custom",
310
- path: ["evidence", "sha256"],
311
- message: "grading evidence must be distinct from the grader implementation",
302
+ path: ["grading", "timing"],
303
+ message: "grader timing must be ordered and internally consistent",
312
304
  });
313
305
  }
314
306
  for (let index = 1; index < material.dimensions.length; index++) {
@@ -329,7 +321,7 @@ export const agentCandidateBenchmarkResultMaterialSchema = z
329
321
  });
330
322
  }
331
323
  });
332
- export const agentCandidateBenchmarkResultEvidenceSchema = evidenceSchema(1, "agent-candidate-benchmark-result", agentCandidateBenchmarkResultMaterialSchema, "benchmark result");
324
+ export const agentCandidateBenchmarkResultEvidenceSchema = evidenceSchema("agent-candidate-benchmark-result", agentCandidateBenchmarkResultMaterialSchema, "benchmark result");
333
325
  function sameFixedSpend(left, right) {
334
326
  return (left.inputTokens === right.inputTokens &&
335
327
  left.outputTokens === right.outputTokens &&
@@ -338,10 +330,9 @@ function sameFixedSpend(left, right) {
338
330
  left.modelCalls === right.modelCalls &&
339
331
  left.costUsdNanos === right.costUsdNanos);
340
332
  }
341
- function evidenceSchema(schemaVersion, kind, material, label) {
333
+ function evidenceSchema(kind, material, label) {
342
334
  return z
343
335
  .object({
344
- schemaVersion: z.literal(schemaVersion),
345
336
  kind: z.literal(kind),
346
337
  digest: sha256DigestSchema,
347
338
  material,