@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.
- package/dist/agent-candidate-artifact-schema.d.ts +0 -3
- package/dist/agent-candidate-artifact-schema.js +0 -2
- package/dist/agent-candidate-code-schema.d.ts +0 -10
- package/dist/agent-candidate-code-schema.js +0 -1
- package/dist/agent-candidate-execution-plan-schema.d.ts +173 -382
- package/dist/agent-candidate-execution-plan-schema.js +100 -138
- package/dist/agent-candidate-lineage-schema.d.ts +1 -31
- package/dist/agent-candidate-lineage-schema.js +3 -34
- package/dist/agent-candidate-outcome-schema.d.ts +48 -36
- package/dist/agent-candidate-outcome-schema.js +23 -32
- package/dist/agent-candidate-promotion-schema.d.ts +11021 -2411
- package/dist/agent-candidate-promotion-schema.js +495 -109
- package/dist/agent-candidate-receipt-schema.d.ts +260 -344
- package/dist/agent-candidate-receipt-schema.js +82 -11
- package/dist/agent-candidate-schema-common.d.ts +8 -0
- package/dist/agent-candidate-schema-common.js +35 -1
- package/dist/agent-candidate-schema.d.ts +2 -44
- package/dist/agent-candidate-schema.js +3 -29
- package/dist/agent-candidate-task-schema.d.ts +643 -0
- package/dist/agent-candidate-task-schema.js +191 -0
- package/dist/agent-candidate.d.ts +173 -94
- package/dist/agent-candidate.test-fixture.d.ts +0 -32
- package/dist/agent-candidate.test-fixture.js +0 -32
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/profile-diff.d.ts +0 -1
- package/dist/profile-schema.d.ts +9 -0
- package/dist/profile-schema.js +14 -6
- package/package.json +2 -2
- package/dist/agent-candidate-compat.d.ts +0 -1918
- 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(
|
|
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(
|
|
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
|
-
|
|
272
|
-
|
|
273
|
-
|
|
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
|
-
|
|
282
|
-
|
|
283
|
-
|
|
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.
|
|
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: ["
|
|
311
|
-
message: "
|
|
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(
|
|
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(
|
|
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,
|