@openpond/evals 0.11.0 → 0.11.2

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 (56) hide show
  1. package/CONTRACT.md +13 -0
  2. package/dist/index.js +2 -0
  3. package/dist/javascript-verifier-contract.js +5 -0
  4. package/dist/javascript-verifier-node.js +3 -1
  5. package/dist/javascript-verifier.js +2 -1
  6. package/dist/learning/reward-authoring.js +2 -1
  7. package/dist/learning/reward-fixture-executor.js +1 -1
  8. package/dist/profile-evaluation-comparisons.js +86 -0
  9. package/dist/profile-evaluations.js +153 -0
  10. package/dist/taskset-run-contract.js +7 -0
  11. package/dist/tasksets.js +3 -0
  12. package/dist/types/builtin-benchmarks/harness-refiner.d.ts +1 -0
  13. package/dist/types/builtin-benchmarks/harness-refiner.d.ts.map +1 -1
  14. package/dist/types/conformance.d.ts +2 -0
  15. package/dist/types/conformance.d.ts.map +1 -1
  16. package/dist/types/execution-contracts.d.ts +8 -0
  17. package/dist/types/execution-contracts.d.ts.map +1 -1
  18. package/dist/types/index.d.ts +2 -0
  19. package/dist/types/index.d.ts.map +1 -1
  20. package/dist/types/javascript-verifier-contract.d.ts +2 -0
  21. package/dist/types/javascript-verifier-contract.d.ts.map +1 -1
  22. package/dist/types/javascript-verifier-node.d.ts.map +1 -1
  23. package/dist/types/javascript-verifier.d.ts +1 -0
  24. package/dist/types/javascript-verifier.d.ts.map +1 -1
  25. package/dist/types/learning/admission.d.ts +4 -0
  26. package/dist/types/learning/admission.d.ts.map +1 -1
  27. package/dist/types/learning/batch-service.d.ts +1 -0
  28. package/dist/types/learning/batch-service.d.ts.map +1 -1
  29. package/dist/types/learning/contracts.d.ts +4 -0
  30. package/dist/types/learning/contracts.d.ts.map +1 -1
  31. package/dist/types/learning/operations.d.ts +16 -0
  32. package/dist/types/learning/operations.d.ts.map +1 -1
  33. package/dist/types/learning/repository.d.ts +8 -0
  34. package/dist/types/learning/repository.d.ts.map +1 -1
  35. package/dist/types/learning/reward-authoring.d.ts.map +1 -1
  36. package/dist/types/learning/reward-calibration.d.ts +1 -0
  37. package/dist/types/learning/reward-calibration.d.ts.map +1 -1
  38. package/dist/types/learning/transport.d.ts +16 -0
  39. package/dist/types/learning/transport.d.ts.map +1 -1
  40. package/dist/types/profile-evaluation-comparisons.d.ts +135 -0
  41. package/dist/types/profile-evaluation-comparisons.d.ts.map +1 -0
  42. package/dist/types/profile-evaluations.d.ts +176 -0
  43. package/dist/types/profile-evaluations.d.ts.map +1 -0
  44. package/dist/types/review-conformance.d.ts +5 -5
  45. package/dist/types/rewards.d.ts +12 -0
  46. package/dist/types/rewards.d.ts.map +1 -1
  47. package/dist/types/taskset-run-contract.d.ts +48 -0
  48. package/dist/types/taskset-run-contract.d.ts.map +1 -1
  49. package/dist/types/tasksets.d.ts +20 -0
  50. package/dist/types/tasksets.d.ts.map +1 -1
  51. package/dist/types/telemetry-bundle.d.ts +2 -2
  52. package/dist/types/telemetry.d.ts +3 -3
  53. package/package.json +2 -2
  54. package/schemas/learning/v1/command-request.schema.json +7 -0
  55. package/schemas/learning/v1/package.schema.json +7 -0
  56. package/schemas/learning/v1/reward.schema.json +7 -0
package/CONTRACT.md CHANGED
@@ -32,6 +32,19 @@ runtime processes.
32
32
 
33
33
  ## Compatibility policy
34
34
 
35
+ Custom verifiers may declare `runtime: "sandbox_process"` when their private
36
+ module needs filesystem or subprocess access. The requirement belongs to the
37
+ immutable Reward implementation and compiled grader, so Model derivation,
38
+ Reward rebinding, reviewed learning batches and training export retain it.
39
+ Omitting `runtime` keeps the original isolated JavaScript behavior and hashes.
40
+
41
+ A runtime declaration grants no execution permission. The host must use a
42
+ quiescent sandbox with network egress blocked, keep the verifier private from
43
+ the policy, enforce its deadline, stop its process group and complete cleanup
44
+ before accepting a result. Isolated JavaScript executors reject a declared
45
+ process runtime; callers must pass the grader's `runtime` to those executors.
46
+ Declaring the runtime does not qualify a source package or its dependencies.
47
+
35
48
  - Schema versions are literal and independent from package semver.
36
49
  - `openpond.harnessRunManifest.v1` and `openpond.taskAttempt.v1` remain accepted
37
50
  host persistence formats during migration, but are not emitted as new public
package/dist/index.js CHANGED
@@ -12,6 +12,8 @@ export * from "./metrics.js";
12
12
  export * from "./taskset-run-contract.js";
13
13
  export * from "./model-improvement-qualification.js";
14
14
  export * from "./preferences.js";
15
+ export * from "./profile-evaluations.js";
16
+ export * from "./profile-evaluation-comparisons.js";
15
17
  export * from "./review-conformance.js";
16
18
  export * from "./rollouts.js";
17
19
  export * from "./telemetry.js";
@@ -5,3 +5,8 @@ export const JavaScriptVerifierResultSchema = z.object({
5
5
  feedback: z.string().max(20_000),
6
6
  evidenceRefs: z.array(z.string().max(240)).max(1_000).default([]),
7
7
  }).strict();
8
+ /** A process checker must never silently execute under different semantics. */
9
+ export function assertIsolatedVerifierRuntime(runtime) {
10
+ if (runtime === "sandbox_process")
11
+ throw new Error("verifier_sandbox_process_required");
12
+ }
@@ -1,11 +1,13 @@
1
- import { JavaScriptVerifierResultSchema } from "./javascript-verifier-contract.js";
1
+ import { assertIsolatedVerifierRuntime, JavaScriptVerifierResultSchema } from "./javascript-verifier-contract.js";
2
2
  import { executeJavaScriptIsolateInWorker } from "./javascript-isolate-node.js";
3
3
  import { executeJavaScriptIsolateInProcess } from "./javascript-isolate-process.js";
4
4
  /** Resolves/rejects only after the execution owner has stopped the worker. */
5
5
  export async function executeJavaScriptVerifierInWorker(input) {
6
+ assertIsolatedVerifierRuntime(input.runtime);
6
7
  return JavaScriptVerifierResultSchema.parse(await executeJavaScriptIsolateInWorker({ ...input, exportName: input.exportName ?? "verify", maxResultBytes: 65_536, errorPrefix: "verifier" }));
7
8
  }
8
9
  /** Uses a Node child process and waits for exit on success, failure, or cancellation. */
9
10
  export async function executeJavaScriptVerifierInProcess(input) {
11
+ assertIsolatedVerifierRuntime(input.runtime);
10
12
  return JavaScriptVerifierResultSchema.parse(await executeJavaScriptIsolateInProcess({ ...input, exportName: input.exportName ?? "verify", maxResultBytes: 65_536, errorPrefix: "verifier" }));
11
13
  }
@@ -1,9 +1,10 @@
1
1
  import { executeJavaScriptIsolate } from "./javascript-isolate.js";
2
- import { JavaScriptVerifierResultSchema } from "./javascript-verifier-contract.js";
2
+ import { assertIsolatedVerifierRuntime, JavaScriptVerifierResultSchema } from "./javascript-verifier-contract.js";
3
3
  export { JavaScriptVerifierResultSchema } from "./javascript-verifier-contract.js";
4
4
  /** A fresh interpreter with no filesystem, network, timers or module loader.
5
5
  * Hosts should use the worker entrypoint for cancellation and responsiveness. */
6
6
  export async function executeJavaScriptVerifier(input) {
7
+ assertIsolatedVerifierRuntime(input.runtime);
7
8
  const result = await executeJavaScriptIsolate({ ...input, exportName: input.exportName ?? "verify", maxResultBytes: 65_536, errorPrefix: "verifier" });
8
9
  return JavaScriptVerifierResultSchema.parse(result);
9
10
  }
@@ -24,7 +24,8 @@ export function compileRewardAuthoring(input) {
24
24
  let calibrationCheckRef;
25
25
  if (fields.kind === "custom_verifier") {
26
26
  asset = createLearningTextAsset({ text: fields.code, path: "verifier.mjs", mediaType: "application/javascript", visibility: "verifier" });
27
- implementation = { kind: fields.kind, verifierRef: asset.asset, exportName: fields.exportName, timeoutMs: authoringNumber(fields.timeout, "Time limit"), networkPolicy: "none" };
27
+ implementation = { kind: fields.kind, verifierRef: asset.asset, exportName: fields.exportName, timeoutMs: authoringNumber(fields.timeout, "Time limit"), networkPolicy: "none",
28
+ ...(base?.implementation.kind === "custom_verifier" && base.implementation.runtime !== undefined ? { runtime: base.implementation.runtime } : {}) };
28
29
  }
29
30
  else if (fields.kind === "model_judge" || fields.kind === "human") {
30
31
  if (!fields.rubric.trim())
@@ -14,7 +14,7 @@ export function createIsolatedRewardFixtureExecutor(options) {
14
14
  throw new Error("reward_check_source_missing");
15
15
  const source = verifyLearningTextAsset(asset, grader.verifierRef);
16
16
  const result = await options.executeJavaScript({
17
- source, exportName: grader.exportName, signal: input.signal,
17
+ source, exportName: grader.exportName, runtime: grader.runtime, signal: input.signal,
18
18
  timeoutMs: Math.min(grader.timeoutMs, input.run.timeoutMs),
19
19
  value: { task, attempt: evidence, input: task.input, output: evidence.output, expectedOutput: task.expectedOutput,
20
20
  evaluatorContext: input.fixture.evaluatorContext, infrastructureError: evidence.infrastructureError ?? null },
@@ -0,0 +1,86 @@
1
+ import { z } from "zod";
2
+ import { ImmutableReleaseRefSchema, ReleaseHashSchema, ReleaseIdSchema, ReleaseTimestampSchema, assertContentHash, contentHash, } from "@openpond/harness";
3
+ import { assertTasksetMetricResult } from "./metric-policy.js";
4
+ import { ProfileEvaluationRunSourceSchema } from "./profile-evaluations.js";
5
+ import { TasksetRunManifestSchema } from "./taskset-run-contract.js";
6
+ export const ProfileEvaluationComparisonContentSchema = z.object({
7
+ schemaVersion: z.literal("openpond.profileEvaluationComparison.v1"),
8
+ id: ReleaseIdSchema,
9
+ tasksetRelease: ImmutableReleaseRefSchema,
10
+ populationHash: ReleaseHashSchema,
11
+ environmentHash: ReleaseHashSchema,
12
+ metricPolicyHash: ReleaseHashSchema,
13
+ limitsHash: ReleaseHashSchema,
14
+ members: z.array(z.object({
15
+ runManifest: ImmutableReleaseRefSchema,
16
+ metricResultHash: ReleaseHashSchema,
17
+ source: ProfileEvaluationRunSourceSchema,
18
+ policy: TasksetRunManifestSchema.shape.policy,
19
+ score: z.number().min(0).max(1).nullable(),
20
+ }).strict()).min(2).max(100),
21
+ createdAt: ReleaseTimestampSchema,
22
+ }).strict();
23
+ export const ProfileEvaluationComparisonSchema = ProfileEvaluationComparisonContentSchema.extend({
24
+ contentHash: ReleaseHashSchema,
25
+ }).strict();
26
+ /** Comparison membership is immutable and refers to existing run evidence.
27
+ * The same Taskset, population, environment, metric and limits are required;
28
+ * model and released Profile source may vary independently. */
29
+ export function createProfileEvaluationComparison(input) {
30
+ if (input.members.length < 2)
31
+ throw new Error("A comparison requires at least two runs.");
32
+ const parsed = input.members.map(({ manifest, result }) => {
33
+ TasksetRunManifestSchema.parse(manifest);
34
+ assertContentHash(manifest, "Taskset run manifest");
35
+ assertTasksetMetricResult(result);
36
+ if (!manifest.profileEvaluation || manifest.execution.kind !== "harness") {
37
+ throw new Error("Profile comparison requires released Profile evaluation runs.");
38
+ }
39
+ if (result.runManifest.id !== manifest.id || result.runManifest.contentHash !== manifest.contentHash
40
+ || result.tasksetRelease.id !== manifest.tasksetRelease.id
41
+ || result.tasksetRelease.contentHash !== manifest.tasksetRelease.contentHash
42
+ || result.policyHash !== contentHash(manifest.metricPolicy)) {
43
+ throw new Error("Profile comparison metric differs from its run manifest.");
44
+ }
45
+ return { manifest, result, source: manifest.profileEvaluation };
46
+ });
47
+ const baseline = parsed[0];
48
+ const populationHash = contentHash(baseline.manifest.population.map(({ taskId, seed, fixtureId }) => ({ taskId, seed, fixtureId })));
49
+ const metricPolicyHash = contentHash(baseline.manifest.metricPolicy);
50
+ const limitsHash = contentHash(baseline.manifest.limits);
51
+ const ids = new Set();
52
+ for (const member of parsed) {
53
+ if (ids.has(member.manifest.id))
54
+ throw new Error("Profile comparison repeats a run.");
55
+ ids.add(member.manifest.id);
56
+ if (member.manifest.tasksetRelease.id !== baseline.manifest.tasksetRelease.id
57
+ || member.manifest.tasksetRelease.contentHash !== baseline.manifest.tasksetRelease.contentHash
58
+ || contentHash(member.manifest.population.map(({ taskId, seed, fixtureId }) => ({ taskId, seed, fixtureId }))) !== populationHash
59
+ || member.source.environmentHash !== baseline.source.environmentHash
60
+ || contentHash(member.manifest.metricPolicy) !== metricPolicyHash
61
+ || contentHash(member.manifest.limits) !== limitsHash
62
+ || member.manifest.runtimeTarget.adapterId !== baseline.manifest.runtimeTarget.adapterId
63
+ || member.manifest.runtimeTarget.placement !== baseline.manifest.runtimeTarget.placement
64
+ || member.manifest.runtimeTarget.runtimeVersion !== baseline.manifest.runtimeTarget.runtimeVersion) {
65
+ throw new Error("Profile comparison runs differ in frozen tasks, environment, grading, limits, or runtime.");
66
+ }
67
+ }
68
+ const content = ProfileEvaluationComparisonContentSchema.parse({
69
+ schemaVersion: "openpond.profileEvaluationComparison.v1",
70
+ id: input.id,
71
+ tasksetRelease: baseline.manifest.tasksetRelease,
72
+ populationHash,
73
+ environmentHash: baseline.source.environmentHash,
74
+ metricPolicyHash,
75
+ limitsHash,
76
+ members: parsed.map(({ manifest, result, source }) => ({
77
+ runManifest: { id: manifest.id, contentHash: manifest.contentHash },
78
+ metricResultHash: result.contentHash,
79
+ source,
80
+ policy: manifest.policy,
81
+ score: result.value,
82
+ })),
83
+ createdAt: input.createdAt,
84
+ });
85
+ return ProfileEvaluationComparisonSchema.parse({ ...content, contentHash: contentHash(content) });
86
+ }
@@ -0,0 +1,153 @@
1
+ import { z } from "zod";
2
+ import { ImmutableReleaseRefSchema, ReleaseHashSchema, ReleaseIdSchema, contentHash, harnessSourcePackageFiles, loadReleasedProfileWorkflowCatalogAssets, sha256, validateHarnessSourcePackage, } from "@openpond/harness";
3
+ import { TaskSplitSchema } from "./tasksets.js";
4
+ const RelativePathSchema = z.string().min(1).max(2_000).refine((value) => !value.includes("\\") && !value.includes(":") && !value.startsWith("/")
5
+ && value.split("/").every((part) => part !== "" && part !== "." && part !== ".."), "evaluation paths must be portable and relative");
6
+ /** Portable selection only. Taskset releases own task data and graders; run
7
+ * manifests and evidence stay in the installation's evaluation store. */
8
+ export const ProfileEvaluationTargetSchema = z.discriminatedUnion("kind", [
9
+ z.object({ kind: z.literal("profile") }).strict(),
10
+ z.object({ kind: z.literal("workflow"), workflowId: ReleaseIdSchema }).strict(),
11
+ z.object({ kind: z.literal("skill"), skillPath: RelativePathSchema }).strict(),
12
+ z.object({ kind: z.literal("agent_action"), actionId: ReleaseIdSchema }).strict(),
13
+ ]);
14
+ export const ProfileEvaluationDefinitionSchema = z.object({
15
+ id: ReleaseIdSchema,
16
+ label: z.string().trim().min(1).max(240),
17
+ description: z.string().max(4_000),
18
+ target: ProfileEvaluationTargetSchema,
19
+ tasksetRelease: ImmutableReleaseRefSchema,
20
+ split: TaskSplitSchema,
21
+ taskIds: z.array(ReleaseIdSchema).min(1).max(100_000),
22
+ seeds: z.array(z.string().trim().min(1).max(500)).min(1).max(100),
23
+ criterion: z.object({
24
+ minimumPassRate: z.number().min(0).max(1),
25
+ requireComplete: z.boolean(),
26
+ }).strict(),
27
+ }).strict().superRefine((definition, context) => {
28
+ if (new Set(definition.taskIds).size !== definition.taskIds.length) {
29
+ context.addIssue({ code: "custom", path: ["taskIds"], message: "Evaluation task identities must be unique." });
30
+ }
31
+ if (new Set(definition.seeds).size !== definition.seeds.length) {
32
+ context.addIssue({ code: "custom", path: ["seeds"], message: "Evaluation seeds must be unique." });
33
+ }
34
+ });
35
+ export const ProfileEvaluationSuiteSchema = z.object({
36
+ id: ReleaseIdSchema,
37
+ label: z.string().trim().min(1).max(240),
38
+ scope: z.enum(["component", "profile"]),
39
+ definitionIds: z.array(ReleaseIdSchema).min(1).max(1_000),
40
+ }).strict();
41
+ export const ProfileEvaluationCatalogSchema = z.object({
42
+ schemaVersion: z.literal("openpond.profileEvaluations.v1"),
43
+ definitions: z.array(ProfileEvaluationDefinitionSchema).max(1_000),
44
+ suites: z.array(ProfileEvaluationSuiteSchema).max(100),
45
+ }).strict();
46
+ /** Added to a Taskset run manifest only when a Profile component supplies the
47
+ * candidate behavior. It does not change the Taskset's frozen cases/graders. */
48
+ export const ProfileEvaluationRunSourceSchema = z.object({
49
+ profileId: ReleaseIdSchema,
50
+ sourceRevision: z.string().trim().min(1).max(240),
51
+ harnessRelease: ImmutableReleaseRefSchema,
52
+ catalogHash: ReleaseHashSchema,
53
+ definitionId: ReleaseIdSchema,
54
+ definitionHash: ReleaseHashSchema,
55
+ target: ProfileEvaluationTargetSchema,
56
+ environmentHash: ReleaseHashSchema,
57
+ }).strict();
58
+ /** Validate component and suite references against the same Profile release. */
59
+ export function validateProfileEvaluationCatalog(input) {
60
+ const catalog = ProfileEvaluationCatalogSchema.parse(input.catalog);
61
+ const ids = new Set();
62
+ for (const definition of catalog.definitions) {
63
+ if (ids.has(definition.id))
64
+ throw new Error(`Duplicate Profile evaluation ${definition.id}.`);
65
+ ids.add(definition.id);
66
+ switch (definition.target.kind) {
67
+ case "workflow":
68
+ if (!input.workflowIds.has(definition.target.workflowId))
69
+ throw new Error(`Profile evaluation ${definition.id} references a missing workflow.`);
70
+ break;
71
+ case "skill":
72
+ if (!input.skillPaths.has(definition.target.skillPath))
73
+ throw new Error(`Profile evaluation ${definition.id} references a missing Skill.`);
74
+ break;
75
+ case "agent_action":
76
+ if (!input.actionIds.has(definition.target.actionId))
77
+ throw new Error(`Profile evaluation ${definition.id} references a missing Agent action.`);
78
+ break;
79
+ }
80
+ }
81
+ const suiteIds = new Set();
82
+ for (const suite of catalog.suites) {
83
+ if (suiteIds.has(suite.id))
84
+ throw new Error(`Duplicate Profile evaluation suite ${suite.id}.`);
85
+ suiteIds.add(suite.id);
86
+ if (new Set(suite.definitionIds).size !== suite.definitionIds.length)
87
+ throw new Error(`Profile evaluation suite ${suite.id} repeats a definition.`);
88
+ for (const definitionId of suite.definitionIds) {
89
+ if (!ids.has(definitionId))
90
+ throw new Error(`Profile evaluation suite ${suite.id} references missing definition ${definitionId}.`);
91
+ }
92
+ if (suite.scope === "profile" && suite.definitionIds.every((id) => catalog.definitions.find((definition) => definition.id === id)?.target.kind !== "profile")) {
93
+ throw new Error(`Profile evaluation suite ${suite.id} needs an end-to-end Profile definition.`);
94
+ }
95
+ }
96
+ return { catalog, contentHash: contentHash(catalog) };
97
+ }
98
+ export function resolveProfileEvaluationRunSource(input) {
99
+ const catalog = ProfileEvaluationCatalogSchema.parse(input.catalog);
100
+ const definition = catalog.definitions.find((candidate) => candidate.id === input.definitionId);
101
+ if (!definition)
102
+ throw new Error(`Profile evaluation ${input.definitionId} is absent from its catalog.`);
103
+ return ProfileEvaluationRunSourceSchema.parse({
104
+ profileId: input.profileId,
105
+ sourceRevision: input.sourceRevision,
106
+ harnessRelease: input.harnessRelease,
107
+ catalogHash: contentHash(catalog),
108
+ definitionId: definition.id,
109
+ definitionHash: contentHash(definition),
110
+ target: definition.target,
111
+ environmentHash: input.environmentHash,
112
+ });
113
+ }
114
+ /** Evaluation definitions are read from the verifier-only bytes of an exact
115
+ * released source package. The caller must never forward this asset to the
116
+ * model-visible policy surface. */
117
+ export function loadReleasedProfileEvaluationCatalog(value) {
118
+ const source = validateHarnessSourcePackage(value);
119
+ const files = harnessSourcePackageFiles(source);
120
+ const result = loadReleasedProfileEvaluationCatalogAssets({
121
+ agentSnapshot: source.agentSnapshot,
122
+ harnessRelease: source.harnessRelease,
123
+ catalogBytes: files.get("evals/catalog.json"),
124
+ workflowBytes: files.get("workflows/catalog.json"),
125
+ actionBytes: files.get("workflows/actions.json"),
126
+ });
127
+ return { ...result, harnessRelease: {
128
+ id: source.harnessRelease.id, contentHash: source.harnessRelease.contentHash,
129
+ } };
130
+ }
131
+ /** For a local release whose caller already verified its full file inventory. */
132
+ export function loadReleasedProfileEvaluationCatalogAssets(input) {
133
+ const asset = input.harnessRelease.files.find((file) => file.path === "evals/catalog.json");
134
+ const bytes = input.catalogBytes;
135
+ if (!asset || asset.visibility !== "verifier" || !bytes || sha256(bytes) !== asset.contentHash) {
136
+ throw new Error("Released Profile evaluation catalog is unavailable or not verifier-private.");
137
+ }
138
+ const workflows = input.workflowBytes || input.actionBytes
139
+ ? loadReleasedProfileWorkflowCatalogAssets({
140
+ agentSnapshot: input.agentSnapshot,
141
+ harnessRelease: input.harnessRelease,
142
+ catalogBytes: input.workflowBytes,
143
+ actionBytes: input.actionBytes,
144
+ })
145
+ : null;
146
+ const { catalog, contentHash: catalogHash } = validateProfileEvaluationCatalog({
147
+ catalog: JSON.parse(new TextDecoder("utf-8", { fatal: true }).decode(bytes)),
148
+ workflowIds: new Set(workflows?.catalog.workflows.map((workflow) => workflow.id) ?? []),
149
+ skillPaths: new Set(input.agentSnapshot.skills.map((skill) => skill.path)),
150
+ actionIds: new Set(workflows?.actions.map((action) => action.id) ?? []),
151
+ });
152
+ return { catalog, catalogHash };
153
+ }
@@ -2,6 +2,7 @@ import { z } from "zod";
2
2
  import { assertContentHash, contentHash, ImmutableReleaseRefSchema, MetadataSchema, ModelRefSchema, ReleaseHashSchema, ReleaseIdSchema, ReleaseTimestampSchema } from "@openpond/harness";
3
3
  import { RunLimitsSchema, RuntimeTargetBindingSchema, verifyAttemptReceipt } from "./runs.js";
4
4
  import { TasksetMetricPolicySchema } from "./metric-policy.js";
5
+ import { ProfileEvaluationRunSourceSchema } from "./profile-evaluations.js";
5
6
  import { assertTasksetRelease } from "./tasksets.js";
6
7
  /** A fixture check owns no model identity and cannot become a model evaluation. */
7
8
  export const TasksetRunPolicySchema = z.discriminatedUnion("kind", [
@@ -24,6 +25,7 @@ export const TasksetRunManifestContentSchema = z.object({
24
25
  tasksetRelease: ImmutableReleaseRefSchema,
25
26
  packageHash: ReleaseHashSchema,
26
27
  execution: TasksetRunExecutionSchema,
28
+ profileEvaluation: ProfileEvaluationRunSourceSchema.optional(),
27
29
  policy: TasksetRunPolicySchema,
28
30
  gradingRole: z.literal("evaluation"),
29
31
  metricPolicy: TasksetMetricPolicySchema,
@@ -37,6 +39,11 @@ export const TasksetRunManifestContentSchema = z.object({
37
39
  context.addIssue({ code: "custom", path: ["population"], message: "Run receipt identities must be unique." });
38
40
  if (value.population.some(member => (member.fixtureId !== null) !== (value.policy.kind === "fixture")))
39
41
  context.addIssue({ code: "custom", path: ["population"], message: "Only fixture runs require a fixture identity for every member." });
42
+ if (value.profileEvaluation && (value.execution.kind !== "harness"
43
+ || value.execution.harnessRelease.id !== value.profileEvaluation.harnessRelease.id
44
+ || value.execution.harnessRelease.contentHash !== value.profileEvaluation.harnessRelease.contentHash)) {
45
+ context.addIssue({ code: "custom", path: ["profileEvaluation"], message: "Profile evaluation must execute its exact bound Harness release." });
46
+ }
40
47
  });
41
48
  export const TasksetRunManifestSchema = TasksetRunManifestContentSchema.safeExtend({ contentHash: ReleaseHashSchema });
42
49
  export function createTasksetRunManifest(input) {
package/dist/tasksets.js CHANGED
@@ -44,8 +44,11 @@ export const ModelJudgeGraderSpecSchema = GraderBaseSchema.extend({
44
44
  model: z.object({ providerId: ReleaseIdSchema, modelId: ReleaseIdSchema, revision: z.string().trim().min(1).max(500).nullable() }).strict().optional(),
45
45
  temperature: z.number().min(0).max(2).optional(),
46
46
  }).strict();
47
+ export const CustomVerifierRuntimeSchema = z.enum(["isolated_javascript", "sandbox_process"]);
47
48
  export const CustomVerifierGraderSpecSchema = GraderBaseSchema.extend({
48
49
  kind: z.literal("custom_verifier"),
50
+ // Omission retains the original isolated-JavaScript contract and hash.
51
+ runtime: CustomVerifierRuntimeSchema.optional(),
49
52
  verifierRef: ImmutableAssetRefSchema,
50
53
  exportName: z.string().trim().min(1).max(240).optional(),
51
54
  timeoutMs: z.number().int().positive().max(300_000),
@@ -114,6 +114,7 @@ export declare const harnessRefinerBenchmarkRelease: {
114
114
  };
115
115
  timeoutMs: number;
116
116
  networkPolicy: "none";
117
+ runtime?: "isolated_javascript" | "sandbox_process" | undefined;
117
118
  exportName?: string | undefined;
118
119
  } | {
119
120
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"harness-refiner.d.ts","sourceRoot":"","sources":["../../../../../src/builtin-benchmarks/harness-refiner.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqqD1C,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CASzE,CAAC"}
1
+ {"version":3,"file":"harness-refiner.d.ts","sourceRoot":"","sources":["../../../../../src/builtin-benchmarks/harness-refiner.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqqD1C,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CASzE,CAAC"}
@@ -224,6 +224,7 @@ export declare const genericToolConformance: {
224
224
  };
225
225
  timeoutMs: number;
226
226
  networkPolicy: "none";
227
+ runtime?: "isolated_javascript" | "sandbox_process" | undefined;
227
228
  exportName?: string | undefined;
228
229
  } | {
229
230
  id: string;
@@ -534,6 +535,7 @@ export declare const marketingPortfolioConformance: {
534
535
  };
535
536
  timeoutMs: number;
536
537
  networkPolicy: "none";
538
+ runtime?: "isolated_javascript" | "sandbox_process" | undefined;
537
539
  exportName?: string | undefined;
538
540
  } | {
539
541
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"conformance.d.ts","sourceRoot":"","sources":["../../../../src/conformance.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAEjC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGxC,CAAC"}
1
+ {"version":3,"file":"conformance.d.ts","sourceRoot":"","sources":["../../../../src/conformance.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAEjC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGxC,CAAC"}
@@ -399,6 +399,10 @@ export declare const VerifierSetReleaseContentSchema: z.ZodObject<{
399
399
  rewardEligible: z.ZodDefault<z.ZodBoolean>;
400
400
  privileged: z.ZodDefault<z.ZodBoolean>;
401
401
  kind: z.ZodLiteral<"custom_verifier">;
402
+ runtime: z.ZodOptional<z.ZodEnum<{
403
+ isolated_javascript: "isolated_javascript";
404
+ sandbox_process: "sandbox_process";
405
+ }>>;
402
406
  verifierRef: z.ZodObject<{
403
407
  id: z.ZodString;
404
408
  path: z.ZodString;
@@ -509,6 +513,10 @@ export declare const VerifierSetReleaseSchema: z.ZodObject<{
509
513
  rewardEligible: z.ZodDefault<z.ZodBoolean>;
510
514
  privileged: z.ZodDefault<z.ZodBoolean>;
511
515
  kind: z.ZodLiteral<"custom_verifier">;
516
+ runtime: z.ZodOptional<z.ZodEnum<{
517
+ isolated_javascript: "isolated_javascript";
518
+ sandbox_process: "sandbox_process";
519
+ }>>;
512
520
  verifierRef: z.ZodObject<{
513
521
  id: z.ZodString;
514
522
  path: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"execution-contracts.d.ts","sourceRoot":"","sources":["../../../../src/execution-contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB,eAAO,MAAM,mBAAmB;;;EAAmC,CAAC;AACpE,eAAO,MAAM,kBAAkB;;;;;;;;;EAS7B,CAAC;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;EAYpC,CAAC;AAEH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAcjC,CAAC;AACZ,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE1B,CAAC;AAEZ,eAAO,MAAM,8BAA8B;;;;;EAKzC,CAAC;AACH,eAAO,MAAM,8BAA8B;;;;EAIzC,CAAC;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAa7B,CAAC;AACZ,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAO/B,CAAC;AACZ,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAExB,CAAC;AAEZ,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAYjC,CAAC;AACZ,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE1B,CAAC;AAEZ,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAuBvC,CAAC;AAkCH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAA6D,CAAC;AACrG,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAGK,CAAC;AAEtC,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
1
+ {"version":3,"file":"execution-contracts.d.ts","sourceRoot":"","sources":["../../../../src/execution-contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB,eAAO,MAAM,mBAAmB;;;EAAmC,CAAC;AACpE,eAAO,MAAM,kBAAkB;;;;;;;;;EAS7B,CAAC;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;EAYpC,CAAC;AAEH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAcjC,CAAC;AACZ,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE1B,CAAC;AAEZ,eAAO,MAAM,8BAA8B;;;;;EAKzC,CAAC;AACH,eAAO,MAAM,8BAA8B;;;;EAIzC,CAAC;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAa7B,CAAC;AACZ,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAO/B,CAAC;AACZ,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAExB,CAAC;AAEZ,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAYjC,CAAC;AACZ,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAE1B,CAAC;AAEZ,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAuBvC,CAAC;AAkCH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAA6D,CAAC;AACrG,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAGK,CAAC;AAEtC,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
@@ -12,6 +12,8 @@ export * from "./metrics.js";
12
12
  export * from "./taskset-run-contract.js";
13
13
  export * from "./model-improvement-qualification.js";
14
14
  export * from "./preferences.js";
15
+ export * from "./profile-evaluations.js";
16
+ export * from "./profile-evaluation-comparisons.js";
15
17
  export * from "./review-conformance.js";
16
18
  export * from "./rollouts.js";
17
19
  export * from "./telemetry.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC;AACxC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sCAAsC,CAAC;AACrD,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC;AACxC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sCAAsC,CAAC;AACrD,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qCAAqC,CAAC;AACpD,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC"}
@@ -6,4 +6,6 @@ export declare const JavaScriptVerifierResultSchema: z.ZodObject<{
6
6
  evidenceRefs: z.ZodDefault<z.ZodArray<z.ZodString>>;
7
7
  }, z.core.$strict>;
8
8
  export type JavaScriptVerifierResult = z.infer<typeof JavaScriptVerifierResultSchema>;
9
+ /** A process checker must never silently execute under different semantics. */
10
+ export declare function assertIsolatedVerifierRuntime(runtime?: "isolated_javascript" | "sandbox_process"): void;
9
11
  //# sourceMappingURL=javascript-verifier-contract.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"javascript-verifier-contract.d.ts","sourceRoot":"","sources":["../../../../src/javascript-verifier-contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,8BAA8B;;;;;kBAKhC,CAAC;AACZ,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC"}
1
+ {"version":3,"file":"javascript-verifier-contract.d.ts","sourceRoot":"","sources":["../../../../src/javascript-verifier-contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,8BAA8B;;;;;kBAKhC,CAAC;AACZ,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AACtF,+EAA+E;AAC/E,wBAAgB,6BAA6B,CAAC,OAAO,CAAC,EAAE,qBAAqB,GAAG,iBAAiB,GAAG,IAAI,CAEvG"}
@@ -1 +1 @@
1
- {"version":3,"file":"javascript-verifier-node.d.ts","sourceRoot":"","sources":["../../../../src/javascript-verifier-node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAkC,KAAK,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAIlH,8EAA8E;AAC9E,wBAAsB,iCAAiC,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAEjJ;AAED,yFAAyF;AACzF,wBAAsB,kCAAkC,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAElJ"}
1
+ {"version":3,"file":"javascript-verifier-node.d.ts","sourceRoot":"","sources":["../../../../src/javascript-verifier-node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAiE,KAAK,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAIjJ,8EAA8E;AAC9E,wBAAsB,iCAAiC,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAGjJ;AAED,yFAAyF;AACzF,wBAAsB,kCAAkC,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAGlJ"}
@@ -8,5 +8,6 @@ export declare function executeJavaScriptVerifier(input: {
8
8
  value: unknown;
9
9
  timeoutMs: number;
10
10
  signal?: AbortSignal;
11
+ runtime?: "isolated_javascript" | "sandbox_process";
11
12
  }): Promise<JavaScriptVerifierResult>;
12
13
  //# sourceMappingURL=javascript-verifier.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"javascript-verifier.d.ts","sourceRoot":"","sources":["../../../../src/javascript-verifier.ts"],"names":[],"mappings":"AACA,OAAO,EAAkC,KAAK,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAClH,OAAO,EAAE,8BAA8B,EAAE,KAAK,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAElH;iFACiF;AACjF,wBAAsB,yBAAyB,CAAC,KAAK,EAAE;IACrD,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAGpC"}
1
+ {"version":3,"file":"javascript-verifier.d.ts","sourceRoot":"","sources":["../../../../src/javascript-verifier.ts"],"names":[],"mappings":"AACA,OAAO,EAAiE,KAAK,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AACjJ,OAAO,EAAE,8BAA8B,EAAE,KAAK,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAElH;iFACiF;AACjF,wBAAsB,yBAAyB,CAAC,KAAK,EAAE;IACrD,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,qBAAqB,GAAG,iBAAiB,CAAC;CACrD,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAIpC"}
@@ -263,6 +263,10 @@ export declare const TaskBatchPackageMetadataSchema: z.ZodObject<{
263
263
  timeoutMs: z.ZodNumber;
264
264
  networkPolicy: z.ZodLiteral<"none">;
265
265
  kind: z.ZodLiteral<"custom_verifier">;
266
+ runtime: z.ZodOptional<z.ZodEnum<{
267
+ isolated_javascript: "isolated_javascript";
268
+ sandbox_process: "sandbox_process";
269
+ }>>;
266
270
  verifierRef: z.ZodObject<{
267
271
  id: z.ZodString;
268
272
  path: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"admission.d.ts","sourceRoot":"","sources":["../../../../../src/learning/admission.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"admission.d.ts","sourceRoot":"","sources":["../../../../../src/learning/admission.ts"],"names":[],"mappings":"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"}
@@ -158,6 +158,7 @@ export declare function prepareLearningBatch(transaction: LearningTransaction, i
158
158
  };
159
159
  timeoutMs: number;
160
160
  networkPolicy: "none";
161
+ runtime?: "isolated_javascript" | "sandbox_process" | undefined;
161
162
  exportName?: string | undefined;
162
163
  } | {
163
164
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"batch-service.d.ts","sourceRoot":"","sources":["../../../../../src/learning/batch-service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgC,KAAK,mBAAmB,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE3G,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAA8E,KAAK,uBAAuB,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAErK,wBAAsB,iBAAiB,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,CAAC,eAAe,EAAE;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAQ3M;AAED,kGAAkG;AAClG,wBAAsB,oBAAoB,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,CAAC,eAAe,EAAE;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsBzK;AAED,wBAAsB,8BAA8B,CAAC,WAAW,EAAE,mBAAmB,EAAE,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC,CAKtI"}
1
+ {"version":3,"file":"batch-service.d.ts","sourceRoot":"","sources":["../../../../../src/learning/batch-service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgC,KAAK,mBAAmB,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE3G,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAA8E,KAAK,uBAAuB,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAErK,wBAAsB,iBAAiB,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,CAAC,eAAe,EAAE;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAQ3M;AAED,kGAAkG;AAClG,wBAAsB,oBAAoB,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,CAAC,eAAe,EAAE;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsBzK;AAED,wBAAsB,8BAA8B,CAAC,WAAW,EAAE,mBAAmB,EAAE,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC,CAKtI"}
@@ -1780,6 +1780,10 @@ export declare const LearningResourceSchema: z.ZodUnion<readonly [z.ZodObject<{
1780
1780
  timeoutMs: z.ZodNumber;
1781
1781
  networkPolicy: z.ZodLiteral<"none">;
1782
1782
  kind: z.ZodLiteral<"custom_verifier">;
1783
+ runtime: z.ZodOptional<z.ZodEnum<{
1784
+ isolated_javascript: "isolated_javascript";
1785
+ sandbox_process: "sandbox_process";
1786
+ }>>;
1783
1787
  verifierRef: z.ZodObject<{
1784
1788
  id: z.ZodString;
1785
1789
  path: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../../../src/learning/contracts.ts"],"names":[],"mappings":"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C;AAEZ,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAoBpB,CAAC;AAEZ,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAA2P,CAAC;AAE/R,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,wBAAgB,WAAW,CAAC,QAAQ,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,mBAAmB,CAEhH;AACD,wBAAgB,eAAe,CAAC,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAE9F;AACD,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAG9G;AACD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAIjF"}
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../../../src/learning/contracts.ts"],"names":[],"mappings":"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C;AAEZ,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAoBpB,CAAC;AAEZ,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAA2P,CAAC;AAE/R,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAChF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,wBAAgB,WAAW,CAAC,QAAQ,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,mBAAmB,CAEhH;AACD,wBAAgB,eAAe,CAAC,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAE9F;AACD,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAG9G;AACD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAIjF"}