openpond-sdk 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 (144) hide show
  1. package/dist/advanced-refiner-evaluations.js +2 -2
  2. package/dist/candidate-evaluations.js +1 -1
  3. package/dist/{chunk-I2MBVOVX.js → chunk-4NZW4LFB.js} +4 -1
  4. package/dist/chunk-4NZW4LFB.js.map +7 -0
  5. package/dist/{chunk-DSGGM2ME.js → chunk-4SZKRRTO.js} +2 -2
  6. package/dist/{chunk-5RZAPZWI.js → chunk-6FQKRY5K.js} +2 -2
  7. package/dist/chunk-CPEOFPPF.js +632 -0
  8. package/dist/chunk-CPEOFPPF.js.map +7 -0
  9. package/dist/{chunk-ZVJU5CJ5.js → chunk-G3FWDZMZ.js} +2 -2
  10. package/dist/{chunk-A64VYVXN.js → chunk-HKAR3VPB.js} +3 -2
  11. package/dist/{chunk-A64VYVXN.js.map → chunk-HKAR3VPB.js.map} +2 -2
  12. package/dist/{chunk-R3M6BIOK.js → chunk-JEUHIQWF.js} +10 -7
  13. package/dist/chunk-JEUHIQWF.js.map +7 -0
  14. package/dist/chunk-LFH4EKWH.js +1408 -0
  15. package/dist/chunk-LFH4EKWH.js.map +7 -0
  16. package/dist/{chunk-CSWVE3E6.js → chunk-MW2N3BX5.js} +4 -3
  17. package/dist/{chunk-CSWVE3E6.js.map → chunk-MW2N3BX5.js.map} +2 -2
  18. package/dist/{chunk-IXBSFJCX.js → chunk-QVCMFQKA.js} +6 -6
  19. package/dist/{chunk-IXBSFJCX.js.map → chunk-QVCMFQKA.js.map} +1 -1
  20. package/dist/{chunk-NHCGOFQW.js → chunk-RIX56CJL.js} +9 -6
  21. package/dist/chunk-RIX56CJL.js.map +7 -0
  22. package/dist/{chunk-PJ2VLNJF.js → chunk-SGRYMU4C.js} +2 -2
  23. package/dist/{chunk-JMQ4HBWP.js → chunk-SXTC2GT6.js} +2 -2
  24. package/dist/{chunk-HOAYWW33.js → chunk-UNMOEI2K.js} +9 -9
  25. package/dist/{chunk-5U25KAJM.js → chunk-XCH27NHJ.js} +2 -2
  26. package/dist/{chunk-DJWHN7NU.js → chunk-YTGRET2L.js} +281 -71
  27. package/dist/chunk-YTGRET2L.js.map +7 -0
  28. package/dist/connected-evidence.js +25 -9
  29. package/dist/dataset-commerce.js +773 -0
  30. package/dist/dataset-commerce.js.map +7 -0
  31. package/dist/dataset-workspaces.js +8 -8
  32. package/dist/experiment-evaluation-schedules.js +11 -11
  33. package/dist/experiment-improvements.js +2 -2
  34. package/dist/experiments.js +11 -11
  35. package/dist/human-review.js +1 -1
  36. package/dist/index.js +38 -22
  37. package/dist/index.js.map +1 -1
  38. package/dist/learning.js +1 -1
  39. package/dist/model-starter-attempts.js +1 -1
  40. package/dist/model-starter-catalog.js +4 -4
  41. package/dist/model-starters.js +4 -4
  42. package/dist/model-taskset-runs.js +1 -1
  43. package/dist/post-training.js +1 -1
  44. package/dist/taskset-drafts.js +26 -21
  45. package/dist/taskset-drafts.js.map +2 -2
  46. package/dist/taskset-packages.js +10 -10
  47. package/dist/training-bundle.js +8 -8
  48. package/dist/training-bundle.js.map +2 -2
  49. package/dist/training-projects.js +1 -1
  50. package/dist/training.js +2 -2
  51. package/dist/types/packages/sdk/src/advanced-refiner-evaluations.d.ts +9 -0
  52. package/dist/types/packages/sdk/src/advanced-refiner-evaluations.d.ts.map +1 -1
  53. package/dist/types/packages/sdk/src/connected-collection-status.d.ts +47 -0
  54. package/dist/types/packages/sdk/src/connected-collection-status.d.ts.map +1 -0
  55. package/dist/types/packages/sdk/src/connected-dataset-source.d.ts +4 -0
  56. package/dist/types/packages/sdk/src/connected-dataset-source.d.ts.map +1 -1
  57. package/dist/types/packages/sdk/src/connected-evidence-client.d.ts +53 -11
  58. package/dist/types/packages/sdk/src/connected-evidence-client.d.ts.map +1 -1
  59. package/dist/types/packages/sdk/src/connected-evidence-contracts.d.ts +20 -0
  60. package/dist/types/packages/sdk/src/connected-evidence-contracts.d.ts.map +1 -1
  61. package/dist/types/packages/sdk/src/connected-evidence.d.ts +2 -0
  62. package/dist/types/packages/sdk/src/connected-evidence.d.ts.map +1 -1
  63. package/dist/types/packages/sdk/src/connected-sync.d.ts +282 -0
  64. package/dist/types/packages/sdk/src/connected-sync.d.ts.map +1 -0
  65. package/dist/types/packages/sdk/src/dataset-commerce-contracts.d.ts +230 -0
  66. package/dist/types/packages/sdk/src/dataset-commerce-contracts.d.ts.map +1 -0
  67. package/dist/types/packages/sdk/src/dataset-commerce-files.d.ts +114 -0
  68. package/dist/types/packages/sdk/src/dataset-commerce-files.d.ts.map +1 -0
  69. package/dist/types/packages/sdk/src/dataset-commerce-responses.d.ts +608 -0
  70. package/dist/types/packages/sdk/src/dataset-commerce-responses.d.ts.map +1 -0
  71. package/dist/types/packages/sdk/src/dataset-commerce.d.ts +575 -0
  72. package/dist/types/packages/sdk/src/dataset-commerce.d.ts.map +1 -0
  73. package/dist/types/packages/sdk/src/dataset-workspace-client.d.ts +15 -14
  74. package/dist/types/packages/sdk/src/dataset-workspace-client.d.ts.map +1 -1
  75. package/dist/types/packages/sdk/src/dataset-workspace-contracts.d.ts +15 -0
  76. package/dist/types/packages/sdk/src/dataset-workspace-contracts.d.ts.map +1 -1
  77. package/dist/types/packages/sdk/src/dataset-workspace-operations.d.ts +14 -0
  78. package/dist/types/packages/sdk/src/dataset-workspace-operations.d.ts.map +1 -1
  79. package/dist/types/packages/sdk/src/experiment-grading-contracts.d.ts +16 -0
  80. package/dist/types/packages/sdk/src/experiment-grading-contracts.d.ts.map +1 -1
  81. package/dist/types/packages/sdk/src/model-batch-review-contracts.d.ts +43 -0
  82. package/dist/types/packages/sdk/src/model-batch-review-contracts.d.ts.map +1 -1
  83. package/dist/types/packages/sdk/src/model-batch-review-preparation.d.ts +11 -0
  84. package/dist/types/packages/sdk/src/model-batch-review-preparation.d.ts.map +1 -1
  85. package/dist/types/packages/sdk/src/model-batch-review.d.ts +40 -0
  86. package/dist/types/packages/sdk/src/model-batch-review.d.ts.map +1 -1
  87. package/dist/types/packages/sdk/src/model-learning-policy.d.ts +11 -0
  88. package/dist/types/packages/sdk/src/model-learning-policy.d.ts.map +1 -1
  89. package/dist/types/packages/sdk/src/model-starter-attempts.d.ts +75 -0
  90. package/dist/types/packages/sdk/src/model-starter-attempts.d.ts.map +1 -1
  91. package/dist/types/packages/sdk/src/post-training.d.ts +11 -0
  92. package/dist/types/packages/sdk/src/post-training.d.ts.map +1 -1
  93. package/dist/types/packages/sdk/src/profile-external-dataset-package.d.ts +29 -0
  94. package/dist/types/packages/sdk/src/profile-external-dataset-package.d.ts.map +1 -1
  95. package/dist/types/packages/sdk/src/taskset-authored-contracts.d.ts +15 -2
  96. package/dist/types/packages/sdk/src/taskset-authored-contracts.d.ts.map +1 -1
  97. package/dist/types/packages/sdk/src/taskset-authored-files.d.ts +4 -4
  98. package/dist/types/packages/sdk/src/taskset-authored-validation.d.ts.map +1 -1
  99. package/dist/types/packages/sdk/src/taskset-calibration-fixtures.d.ts +438 -0
  100. package/dist/types/packages/sdk/src/taskset-calibration-fixtures.d.ts.map +1 -0
  101. package/dist/types/packages/sdk/src/taskset-draft-api-contracts.d.ts +14 -0
  102. package/dist/types/packages/sdk/src/taskset-draft-api-contracts.d.ts.map +1 -1
  103. package/dist/types/packages/sdk/src/taskset-draft-authoring.d.ts.map +1 -1
  104. package/dist/types/packages/sdk/src/taskset-draft-client.d.ts +12 -12
  105. package/dist/types/packages/sdk/src/taskset-draft-core.d.ts +10 -0
  106. package/dist/types/packages/sdk/src/taskset-draft-core.d.ts.map +1 -1
  107. package/dist/types/packages/sdk/src/taskset-draft-dataset-artifacts.d.ts +2 -2
  108. package/dist/types/packages/sdk/src/taskset-draft-document.d.ts +7 -0
  109. package/dist/types/packages/sdk/src/taskset-draft-document.d.ts.map +1 -1
  110. package/dist/types/packages/sdk/src/taskset-draft-package-compiler.d.ts +58 -0
  111. package/dist/types/packages/sdk/src/taskset-draft-package-compiler.d.ts.map +1 -1
  112. package/dist/types/packages/sdk/src/taskset-draft-source.d.ts +9 -2
  113. package/dist/types/packages/sdk/src/taskset-draft-source.d.ts.map +1 -1
  114. package/dist/types/packages/sdk/src/taskset-draft-workspace.d.ts +14 -0
  115. package/dist/types/packages/sdk/src/taskset-draft-workspace.d.ts.map +1 -1
  116. package/dist/types/packages/sdk/src/taskset-drafts.d.ts +1 -0
  117. package/dist/types/packages/sdk/src/taskset-drafts.d.ts.map +1 -1
  118. package/dist/types/packages/sdk/src/taskset-package-client.d.ts +172 -0
  119. package/dist/types/packages/sdk/src/taskset-package-client.d.ts.map +1 -1
  120. package/dist/types/packages/sdk/src/taskset-package-contracts.d.ts +86 -0
  121. package/dist/types/packages/sdk/src/taskset-package-contracts.d.ts.map +1 -1
  122. package/dist/types/packages/sdk/src/taskset-package-grader-projection.d.ts +1 -1
  123. package/dist/types/packages/sdk/src/taskset-package-grader-projection.d.ts.map +1 -1
  124. package/dist/types/packages/sdk/src/taskset-package-learning.d.ts +72 -0
  125. package/dist/types/packages/sdk/src/taskset-package-learning.d.ts.map +1 -1
  126. package/dist/types/packages/sdk/src/taskset-package-projection.d.ts +33 -4
  127. package/dist/types/packages/sdk/src/taskset-package-projection.d.ts.map +1 -1
  128. package/dist/types/packages/sdk/src/training-learning-batch.d.ts +8 -8
  129. package/package.json +7 -3
  130. package/dist/chunk-DJWHN7NU.js.map +0 -7
  131. package/dist/chunk-I2MBVOVX.js.map +0 -7
  132. package/dist/chunk-JA3KFK3U.js +0 -580
  133. package/dist/chunk-JA3KFK3U.js.map +0 -7
  134. package/dist/chunk-NHCGOFQW.js.map +0 -7
  135. package/dist/chunk-R3M6BIOK.js.map +0 -7
  136. package/dist/chunk-XJDWHTH5.js +0 -1257
  137. package/dist/chunk-XJDWHTH5.js.map +0 -7
  138. /package/dist/{chunk-DSGGM2ME.js.map → chunk-4SZKRRTO.js.map} +0 -0
  139. /package/dist/{chunk-5RZAPZWI.js.map → chunk-6FQKRY5K.js.map} +0 -0
  140. /package/dist/{chunk-ZVJU5CJ5.js.map → chunk-G3FWDZMZ.js.map} +0 -0
  141. /package/dist/{chunk-PJ2VLNJF.js.map → chunk-SGRYMU4C.js.map} +0 -0
  142. /package/dist/{chunk-JMQ4HBWP.js.map → chunk-SXTC2GT6.js.map} +0 -0
  143. /package/dist/{chunk-HOAYWW33.js.map → chunk-UNMOEI2K.js.map} +0 -0
  144. /package/dist/{chunk-5U25KAJM.js.map → chunk-XCH27NHJ.js.map} +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/connected-dataset-source.ts", "../src/taskset-draft-dataset-artifacts.ts", "../src/taskset-draft-dataset-sources.ts", "../src/taskset-draft-harness-actions.ts", "../src/taskset-draft-core.ts", "../src/model-starter-execution.ts", "../src/model-taskset-resources.ts", "../src/model-taskset-derivation.ts", "../src/taskset-package-learning.ts", "../src/taskset-package-files.ts", "../src/taskset-package-execution.ts", "../src/taskset-calibration-fixtures.ts", "../src/taskset-package-contracts.ts", "../src/model-taskset-authoring-lineage.ts"],
4
+ "sourcesContent": ["import { z } from \"zod\";\nimport { ConnectedSourceKindSchema } from \"@openpond/evals/connected-evidence\";\n\n/** Activity evidence authorizes recorded evaluation only; no training consent. */\nexport const ConnectedDatasetSourceRefSchema = z.object({\n schemaVersion: z.literal(\"openpond.connectedDatasetSource.v1\"), kind: z.literal(\"connected_activity\"),\n id: z.string().min(1).max(240), profileId: z.string().min(1).max(240), title: z.string().min(1).max(500),\n sourceHash: z.string().regex(/^[a-f0-9]{64}$/), occurredAt: z.string().datetime(),\n licensingStatus: z.enum([\"pending\", \"approved\", \"review\", \"blocked\"]), secretScanStatus: z.enum([\"pending\", \"passed\", \"blocked\"]),\n piiScanStatus: z.enum([\"pending\", \"passed\", \"review\", \"blocked\"]),\n origin: ConnectedSourceKindSchema, sourceId: z.string().min(1).max(500), sessionId: z.string().min(1).max(500),\n normalizerVersion: z.string().min(1).max(200), projection: z.enum([\"turn\", \"conversation\"]),\n ownerUserId: z.string().min(1).max(500), purpose: z.literal(\"recorded_evaluation\"),\n metadata: z.record(z.string(), z.unknown()).default({}),\n}).strict();\nexport type ConnectedDatasetSourceRef = z.infer<typeof ConnectedDatasetSourceRefSchema>;\n", "import { z } from \"zod\";\n\nconst IdSchema = z.string().trim().min(1).max(240);\nconst TimestampSchema = z.string().trim().min(1);\nconst HashSchema = z.string().trim().min(8).max(256);\nconst RelativePathSchema = z\n .string()\n .trim()\n .min(1)\n .max(1_000)\n .refine(\n (value) =>\n !value.startsWith(\"/\")\n && !value.startsWith(\"\\\\\")\n && !value.split(/[\\\\/]/).includes(\"..\"),\n \"Artifact paths must be relative and stay inside the Dataset.\",\n );\n\nexport const DatasetSplitSchema = z.enum([\n \"train\",\n \"validation\",\n \"test\",\n \"frozen_eval\",\n]);\n\nexport const DatasetSemanticFieldSchema = z.object({\n name: z.string().trim().min(1).max(500),\n semanticRole: z.enum([\n \"row_id\",\n \"cluster_id\",\n \"prompt\",\n \"messages\",\n \"demonstration\",\n \"chosen\",\n \"rejected\",\n \"expected_output\",\n \"privileged_context\",\n \"reward\",\n \"feedback\",\n \"tag\",\n \"metadata\",\n ]),\n logicalType: z.enum([\n \"string\",\n \"integer\",\n \"float\",\n \"boolean\",\n \"json\",\n \"messages\",\n ]),\n nullable: z.boolean(),\n policy: z.enum([\"visible\", \"privileged\", \"metadata\"]),\n});\n\nexport const DatasetSemanticSchemaSchema = z.object({\n schemaVersion: z.literal(\"openpond.datasetSemanticSchema.v1\"),\n fields: z.array(DatasetSemanticFieldSchema).min(1).max(10_000),\n schemaHash: HashSchema,\n});\n\nexport const DatasetShardRefSchema = z.object({\n id: IdSchema,\n split: DatasetSplitSchema,\n path: RelativePathSchema,\n contentHash: HashSchema,\n schemaHash: HashSchema,\n sizeBytes: z.number().int().nonnegative(),\n rowCount: z.number().int().positive(),\n rowGroupCount: z.number().int().positive(),\n});\n\nexport const DatasetArtifactManifestSchema = z.object({\n schemaVersion: z.literal(\"openpond.datasetArtifact.v1\"),\n id: IdSchema,\n tasksetId: IdSchema,\n tasksetRevision: z.number().int().positive(),\n contentHash: HashSchema,\n format: z.literal(\"parquet\"),\n schema: DatasetSemanticSchemaSchema,\n shards: z.array(DatasetShardRefSchema).min(1).max(100_000),\n rowCount: z.number().int().positive(),\n splitCounts: z.record(DatasetSplitSchema, z.number().int().nonnegative()),\n sourceReceiptRefs: z.array(IdSchema).min(1).max(100_000),\n mappingHash: HashSchema,\n qualityReportHash: HashSchema,\n createdAt: TimestampSchema,\n});\n\nexport const DatasetArtifactSummarySchema = z.object({\n schemaVersion: z.literal(\"openpond.datasetArtifactSummary.v1\"),\n artifactId: IdSchema,\n tasksetId: IdSchema,\n tasksetRevision: z.number().int().positive(),\n format: z.literal(\"parquet\"),\n rowCount: z.number().int().positive(),\n splitCounts: z.record(DatasetSplitSchema, z.number().int().nonnegative()),\n sizeBytes: z.number().int().nonnegative(),\n contentHash: HashSchema,\n available: z.boolean(),\n unavailableReason: z.string().trim().min(1).max(2_000).nullable(),\n createdAt: TimestampSchema,\n});\n\nexport const DatasetCatalogItemSchema = z.object({\n schemaVersion: z.literal(\"openpond.datasetCatalogItem.v1\"),\n tasksetId: IdSchema,\n tasksetRevision: z.number().int().positive(),\n artifactId: IdSchema.nullable(),\n name: z.string().trim().min(1).max(500),\n status: z.enum([\n \"draft\",\n \"awaiting_disclosure_approval\",\n \"awaiting_materialization_approval\",\n \"materializing\",\n \"validating\",\n \"needs_review\",\n \"baselining\",\n \"ready\",\n \"blocked\",\n \"failed\",\n \"archived\",\n ]),\n storageKind: z.enum([\"inline\", \"parquet\"]),\n rowCount: z.number().int().nonnegative(),\n splitCounts: z.record(DatasetSplitSchema, z.number().int().nonnegative()),\n sizeBytes: z.number().int().nonnegative().nullable(),\n available: z.boolean(),\n unavailableReason: z.string().trim().min(1).max(2_000).nullable(),\n createdAt: TimestampSchema,\n updatedAt: TimestampSchema,\n});\n\nexport const DatasetCatalogResponseSchema = z.object({\n schemaVersion: z.literal(\"openpond.datasetCatalog.v1\"),\n profileId: IdSchema,\n datasets: z.array(DatasetCatalogItemSchema),\n generatedAt: TimestampSchema,\n});\n\nexport const DatasetArtifactRegistryEntrySchema = z.object({\n schemaVersion: z.literal(\"openpond.datasetArtifactRegistry.v1\"),\n manifest: DatasetArtifactManifestSchema,\n profileId: IdSchema,\n storageRoot: z.string().trim().min(1).max(4_000),\n relativeManifestPath: RelativePathSchema,\n available: z.boolean(),\n unavailableReason: z.string().trim().min(1).max(2_000).nullable(),\n verifiedAt: TimestampSchema.nullable(),\n createdAt: TimestampSchema,\n updatedAt: TimestampSchema,\n});\n\nexport const DatasetRowPageRequestSchema = z.object({\n split: DatasetSplitSchema.nullable().default(null),\n cursor: z.string().trim().min(1).max(2_000).nullable().default(null),\n limit: z.number().int().min(1).max(100).default(25),\n columns: z.array(z.string().trim().min(1).max(500)).max(100).default([]),\n});\n\nexport const DatasetRowPageSchema = z.object({\n schemaVersion: z.literal(\"openpond.datasetRowPage.v1\"),\n tasksetId: IdSchema,\n tasksetRevision: z.number().int().positive(),\n artifactHash: HashSchema,\n split: DatasetSplitSchema.nullable(),\n rows: z.array(z.record(z.string(), z.unknown())).max(100),\n nextCursor: z.string().max(2_000).nullable(),\n totalRows: z.number().int().nonnegative(),\n returnedRows: z.number().int().nonnegative(),\n});\n\nexport const DatasetStorageSettingsSchema = z.object({\n schemaVersion: z.literal(\"openpond.datasetStorageSettings.v1\"),\n datasetStorePath: z.string().trim().min(1).max(4_000),\n updatedAt: TimestampSchema,\n});\n\nexport const DatasetStorageRootSchema = z.object({\n id: IdSchema,\n label: z.string().trim().min(1).max(500),\n path: z.string().trim().min(1).max(4_000),\n datasetStorePath: z.string().trim().min(1).max(4_000),\n kind: z.enum([\"local\", \"network\", \"removable\", \"cache\"]),\n configured: z.boolean(),\n mounted: z.boolean(),\n writable: z.boolean(),\n totalBytes: z.number().int().nonnegative().nullable(),\n freeBytes: z.number().int().nonnegative().nullable(),\n});\n\nexport const DatasetStorageStateSchema = z.object({\n schemaVersion: z.literal(\"openpond.datasetStorageState.v1\"),\n settings: DatasetStorageSettingsSchema,\n storageRoots: z.array(DatasetStorageRootSchema),\n});\n\nexport const UpdateDatasetStorageSettingsRequestSchema = z.object({\n datasetStorePath: z.string().trim().min(1).max(4_000),\n});\n\nexport type DatasetSplit = z.infer<typeof DatasetSplitSchema>;\nexport type DatasetSemanticField = z.infer<typeof DatasetSemanticFieldSchema>;\nexport type DatasetSemanticSchema = z.infer<typeof DatasetSemanticSchemaSchema>;\nexport type DatasetShardRef = z.infer<typeof DatasetShardRefSchema>;\nexport type DatasetArtifactManifest = z.infer<\n typeof DatasetArtifactManifestSchema\n>;\nexport type DatasetArtifactSummary = z.infer<\n typeof DatasetArtifactSummarySchema\n>;\nexport type DatasetCatalogItem = z.infer<typeof DatasetCatalogItemSchema>;\nexport type DatasetCatalogResponse = z.infer<\n typeof DatasetCatalogResponseSchema\n>;\nexport type DatasetArtifactRegistryEntry = z.infer<\n typeof DatasetArtifactRegistryEntrySchema\n>;\nexport type DatasetRowPageRequest = z.infer<\n typeof DatasetRowPageRequestSchema\n>;\nexport type DatasetRowPage = z.infer<typeof DatasetRowPageSchema>;\nexport type DatasetStorageSettings = z.infer<typeof DatasetStorageSettingsSchema>;\nexport type DatasetStorageState = z.infer<typeof DatasetStorageStateSchema>;\nexport type DatasetStorageRoot = z.infer<typeof DatasetStorageRootSchema>;\n", "import { z } from \"zod\";\n\nconst IdSchema = z.string().trim().min(1).max(240);\nconst TimestampSchema = z.string().trim().min(1);\nconst HashSchema = z.string().trim().min(8).max(256);\nconst MetadataSchema = z.record(z.string(), z.unknown()).default({});\nconst RevisionSchema = z.string().trim().min(7).max(256);\n\nexport const DatasetSourceReviewStatusSchema = z.enum([\n \"pending\",\n \"approved\",\n \"review\",\n \"blocked\",\n]);\n\nconst ExternalDatasetSourceBaseSchema = z.object({\n id: IdSchema,\n profileId: IdSchema,\n title: z.string().trim().min(1).max(500),\n sourceHash: HashSchema,\n occurredAt: TimestampSchema,\n licensingStatus: DatasetSourceReviewStatusSchema,\n secretScanStatus: z.enum([\"pending\", \"passed\", \"blocked\"]),\n piiScanStatus: z.enum([\"pending\", \"passed\", \"review\", \"blocked\"]),\n metadata: MetadataSchema,\n});\n\nexport const HuggingFaceDatasetSourceRefSchema =\n ExternalDatasetSourceBaseSchema.extend({\n schemaVersion: z.literal(\"openpond.huggingFaceDatasetSource.v1\"),\n kind: z.literal(\"huggingface\"),\n repositoryId: z.string().trim().regex(/^[^/\\s]+\\/[^/\\s]+$/).max(500),\n repositoryUrl: z.string().url().max(2_000),\n revision: RevisionSchema,\n configuration: z.string().trim().min(1).max(500),\n upstreamSplits: z.array(z.string().trim().min(1).max(500)).min(1).max(1_000),\n gated: z.boolean(),\n private: z.boolean(),\n declaredLicense: z.string().trim().min(1).max(500).nullable(),\n sourceFileHashes: z.array(HashSchema).min(1).max(100_000),\n });\n\nexport const UploadedFileDatasetSourceRefSchema =\n ExternalDatasetSourceBaseSchema.extend({\n schemaVersion: z.literal(\"openpond.uploadedFileDatasetSource.v1\"),\n kind: z.literal(\"uploaded_file\"),\n originalFileNames: z.array(z.string().trim().min(1).max(500)).min(1).max(1_000),\n mediaTypes: z.array(z.string().trim().min(1).max(200)).min(1).max(1_000),\n sourceFileHashes: z.array(HashSchema).min(1).max(1_000),\n totalBytes: z.number().int().nonnegative(),\n parserVersion: z.string().trim().min(1).max(200),\n });\n\nexport const GeneratedDatasetSourceRefSchema =\n ExternalDatasetSourceBaseSchema.extend({\n schemaVersion: z.literal(\"openpond.generatedDatasetSource.v1\"),\n kind: z.literal(\"generated\"),\n generatorId: IdSchema,\n generatorVersion: z.string().trim().min(1).max(200),\n seed: z.number().int(),\n generatorHash: HashSchema,\n });\n\nexport const LearningBatchDatasetSourceRefSchema = ExternalDatasetSourceBaseSchema.extend({\n schemaVersion: z.literal(\"openpond.learningBatchDatasetSource.v1\"),\n kind: z.literal(\"learning_batch\"),\n batch: z.object({ id: IdSchema, revision: z.number().int().positive(), contentHash: HashSchema }).strict(),\n taskDefinition: z.object({ id: IdSchema, revision: z.number().int().positive(), contentHash: HashSchema }).strict(),\n admittedBy: IdSchema,\n});\n\nexport const ExternalDatasetSourceRefSchema = z.discriminatedUnion(\"kind\", [\n HuggingFaceDatasetSourceRefSchema,\n UploadedFileDatasetSourceRefSchema,\n GeneratedDatasetSourceRefSchema,\n LearningBatchDatasetSourceRefSchema,\n]);\n\nexport type DatasetSourceReviewStatus = z.infer<\n typeof DatasetSourceReviewStatusSchema\n>;\nexport type HuggingFaceDatasetSourceRef = z.infer<\n typeof HuggingFaceDatasetSourceRefSchema\n>;\nexport type UploadedFileDatasetSourceRef = z.infer<\n typeof UploadedFileDatasetSourceRefSchema\n>;\nexport type GeneratedDatasetSourceRef = z.infer<\n typeof GeneratedDatasetSourceRefSchema\n>;\nexport type ExternalDatasetSourceRef = z.infer<\n typeof ExternalDatasetSourceRefSchema\n>;\n", "import { z } from \"zod\";\n\nimport {\n ImmutableReleaseRefSchema,\n ReleaseHashSchema,\n ReleaseIdSchema,\n} from \"@openpond/harness\";\n\nexport const HarnessActionBindingSchema = z\n .object({\n schemaVersion: z.literal(\"openpond.harnessActionBinding.v1\"),\n actionId: ReleaseIdSchema,\n modelToolName: z\n .string()\n .trim()\n .min(1)\n .max(64)\n .regex(/^[a-zA-Z][a-zA-Z0-9_-]*$/),\n description: z.string().trim().min(1).max(1_000),\n inputSchema: z.record(z.string(), z.unknown()),\n actionSchemaHash: ReleaseHashSchema,\n agentRelease: ImmutableReleaseRefSchema,\n implementationHash: ReleaseHashSchema,\n runtimeBindingId: ReleaseIdSchema,\n capabilityReceiptHash: ReleaseHashSchema,\n sideEffect: z.enum([\"read\", \"write\"]),\n studentVisible: z.boolean(),\n timeoutMs: z.number().int().positive().max(3_600_000),\n episodeArgumentBindings: z\n .array(\n z\n .object({\n argument: ReleaseIdSchema,\n source: z.literal(\"case_id\"),\n })\n .strict(),\n )\n .max(20)\n .default([]),\n })\n .strict();\n\nexport type HarnessActionBinding = z.infer<typeof HarnessActionBindingSchema>;\n", "import { z } from \"zod\";\nimport { ChatModelRefSchema } from \"@openpond/harness/models\";\nimport { CustomVerifierRuntimeSchema } from \"@openpond/evals/tasksets\";\nimport { HumanFormSchema } from \"@openpond/evals/human-review\";\nimport { DatasetSplitSchema } from \"./taskset-draft-dataset-artifacts.js\";\nimport { ExternalDatasetSourceRefSchema } from \"./taskset-draft-dataset-sources.js\";\nimport { ConnectedDatasetSourceRefSchema } from \"./connected-dataset-source.js\";\nimport { HarnessActionBindingSchema } from \"./taskset-draft-harness-actions.js\";\n\nconst IdSchema = z.string().trim().min(1).max(240);\nconst TimestampSchema = z.string().trim().min(1);\nconst HashSchema = z.string().trim().min(8).max(256);\nconst Sha256Schema = z.string().trim().regex(/^[a-f0-9]{64}$/);\nconst CodeIdentifierSchema = z.string().trim().regex(/^[A-Za-z_$][A-Za-z0-9_$]*$/);\nconst MetadataSchema = z.record(z.string(), z.unknown()).default({});\nconst NullableIdSchema = IdSchema.nullable();\n\nfunction safeRelativeFilePath(value: string): boolean {\n const normalized = value.trim().replaceAll(\"\\\\\", \"/\");\n if (\n !normalized\n || normalized.startsWith(\"/\")\n || normalized === \".\"\n || normalized === \"..\"\n ) {\n return false;\n }\n return !normalized.split(\"/\").some((segment) =>\n !segment || segment === \".\" || segment === \"..\"\n );\n}\n\nfunction safeFileName(value: string): boolean {\n const normalized = value.trim();\n return (\n normalized.length > 0\n && normalized !== \".\"\n && normalized !== \"..\"\n && !normalized.includes(\"/\")\n && !normalized.includes(\"\\\\\")\n && !normalized.includes(\"\\0\")\n );\n}\n\nexport const TasksetSplitSchema = DatasetSplitSchema;\n\nexport const TasksetPurposeSchema = z.enum([\"general\", \"benchmark\"]);\n\nexport const TasksetBenchmarkBindingSchema = z.object({\n schemaVersion: z.literal(\"openpond.tasksetBenchmark.v1\"),\n definitionId: IdSchema,\n releaseId: IdSchema,\n releaseHash: Sha256Schema,\n managedReleasePath: z.string().trim().min(1).max(1_000)\n .refine(safeRelativeFilePath, \"Benchmark release paths must remain relative.\"),\n adaptationSplit: TasksetSplitSchema,\n evaluationSplit: TasksetSplitSchema,\n primaryMetric: z.enum([\n \"foreground_tokens\",\n \"success_rate\",\n \"latency_ms\",\n \"cost_usd\",\n ]),\n qualityGate: z.enum([\"none\", \"non_regression\", \"all_pass\"]),\n source: z.enum([\"builtin\", \"imported\"]),\n metadata: MetadataSchema,\n});\n\nexport const TasksetPreferenceComparisonBindingSchema = z.object({\n schemaVersion: z.literal(\"openpond.tasksetPreferenceComparisonBinding.v1\"),\n releaseId: IdSchema,\n releaseHash: Sha256Schema,\n publishedAt: TimestampSchema,\n metadata: MetadataSchema,\n});\n\nexport const TrainingSourceConsentSchema = z.object({\n status: z.enum([\"pending\", \"granted\", \"denied\", \"revoked\"]),\n scope: z.enum([\"metadata_only\", \"selected_turns\", \"full_session\"]),\n grantedBy: NullableIdSchema,\n grantedAt: TimestampSchema.nullable(),\n purpose: z.literal(\"task_authoring_and_evaluation\"),\n});\n\nexport const TrainingSourceRefSchema = z.object({\n schemaVersion: z.literal(\"openpond.trainingSource.v1\"),\n id: IdSchema,\n profileId: IdSchema,\n sessionId: IdSchema,\n turnIds: z.array(IdSchema).max(1_000).default([]),\n workspaceId: NullableIdSchema,\n sourceHash: HashSchema,\n clusterKey: IdSchema,\n title: z.string().trim().min(1).max(500),\n occurredAt: TimestampSchema,\n consent: TrainingSourceConsentSchema,\n connectedAppIds: z.array(IdSchema).max(100).default([]),\n secretScanStatus: z.enum([\"pending\", \"passed\", \"blocked\"]),\n piiScanStatus: z.enum([\"pending\", \"passed\", \"review\", \"blocked\"]),\n licensingStatus: z.enum([\"pending\", \"approved\", \"review\", \"blocked\"]),\n metadata: MetadataSchema,\n});\n\nexport const TasksetSourceRefSchema = z.union([\n TrainingSourceRefSchema,\n ExternalDatasetSourceRefSchema,\n ConnectedDatasetSourceRefSchema,\n]);\n\nexport const TaskPolicyBoundarySchema = z.object({\n policyVisibleFields: z.array(IdSchema).max(1_000).default([]),\n privilegedFields: z.array(IdSchema).max(1_000).default([]),\n hiddenGraderRefs: z.array(IdSchema).max(100).default([]),\n connectedAppScopes: z.array(IdSchema).max(100).default([]),\n});\n\nexport const TaskAssetRefSchema = z.object({\n id: IdSchema,\n sourceRefId: IdSchema,\n artifactRef: z.string().trim().min(1).max(4_000)\n .refine(safeRelativeFilePath, \"Task asset references must be safe relative paths.\"),\n fileName: z.string().trim().min(1).max(500)\n .refine(safeFileName, \"Task asset file names must not contain path separators.\"),\n mediaType: z.string().trim().min(1).max(200),\n sha256: Sha256Schema,\n sizeBytes: z.number().int().nonnegative().max(250_000_000),\n split: TasksetSplitSchema,\n metadata: MetadataSchema,\n});\n\nexport const TaskRequiredOutputSchema = z.object({\n path: z.string().trim().min(1).max(1_000)\n .refine(safeRelativeFilePath, \"Required output paths must stay inside the Work output directory.\"),\n mediaType: z.string().trim().min(1).max(200),\n schemaRef: IdSchema.nullable().optional(),\n maxBytes: z.number().int().positive().max(10_000_000).optional(),\n metadata: MetadataSchema,\n});\n\nexport const TaskDataRecordSchema = z.object({\n schemaVersion: z.literal(\"openpond.taskData.v1\"),\n id: IdSchema,\n clusterKey: IdSchema,\n split: TasksetSplitSchema,\n input: z.record(z.string(), z.unknown()),\n expectedOutput: z.record(z.string(), z.unknown()).nullable(),\n policyVisibleContext: z.record(z.string(), z.unknown()).default({}),\n privilegedContextRef: NullableIdSchema,\n sourceRefs: z.array(IdSchema).min(1).max(100),\n assets: z.array(TaskAssetRefSchema).max(1_000).optional(),\n resourceRefs: z.array(IdSchema).max(1_000).optional(),\n requiredOutputs: z.array(TaskRequiredOutputSchema).max(100).optional(),\n tags: z.array(IdSchema).max(100).default([]),\n metadata: MetadataSchema,\n});\n\nexport const TasksetEnvironmentResourceSchema = z.object({\n id: IdSchema,\n kind: z.enum([\"file\", \"catalog\", \"configuration\", \"code_module\"]),\n path: z.string().trim().min(1).max(1_000)\n .refine(safeRelativeFilePath, \"Environment resource paths must remain relative.\"),\n mediaType: z.string().trim().min(1).max(200).nullable().optional(),\n visibility: z.enum([\"policy_visible\", \"policy_hidden\", \"privileged\"]),\n required: z.boolean(),\n metadata: MetadataSchema,\n});\n\nconst LearningSignalBaseSchema = z.object({\n id: IdSchema,\n taskId: NullableIdSchema,\n sourceRefs: z.array(IdSchema).min(1).max(100),\n artifactRef: IdSchema,\n approved: z.boolean(),\n confidence: z.number().min(0).max(1),\n metadata: MetadataSchema,\n});\n\nexport const DemonstrationSignalSchema = LearningSignalBaseSchema.extend({\n kind: z.literal(\"demonstration\"),\n prompt: z.string().max(100_000).nullable().default(null),\n response: z.string().max(200_000).nullable().default(null),\n});\n\nexport const PreferenceSignalSchema = LearningSignalBaseSchema.extend({\n kind: z.literal(\"preference\"),\n prompt: z.string().max(100_000),\n chosen: z.string().max(200_000),\n rejected: z.string().max(200_000),\n rationale: z.string().max(100_000).nullable().default(null),\n});\n\nexport const CorrectionSignalSchema = LearningSignalBaseSchema.extend({\n kind: z.literal(\"correction\"),\n original: z.string().max(200_000),\n corrected: z.string().max(200_000),\n rationale: z.string().max(100_000).nullable().default(null),\n});\n\nexport const FeedbackSignalSchema = LearningSignalBaseSchema.extend({\n kind: z.literal(\"feedback\"),\n feedback: z.string().max(100_000),\n polarity: z.enum([\"positive\", \"negative\", \"mixed\", \"neutral\"]),\n});\n\nexport const RewardSignalSchema = LearningSignalBaseSchema.extend({\n kind: z.literal(\"reward\"),\n task: z.string().max(100_000),\n rules: z.array(z.object({\n id: IdSchema,\n points: z.number().finite(),\n condition: z.string().trim().min(1).max(100_000),\n })).min(1).max(1_000),\n otherwisePoints: z.number().finite(),\n executable: z.boolean(),\n});\n\nexport const LabelSignalSchema = LearningSignalBaseSchema.extend({\n kind: z.literal(\"label\"),\n labelKind: z.literal(\"rubric\"),\n task: z.string().max(100_000),\n criteria: z.array(z.object({\n id: IdSchema,\n label: z.string().trim().min(1).max(500),\n description: z.string().trim().min(1).max(100_000),\n })).min(1).max(1_000),\n calibrationExamples: z.object({\n positive: z.string().trim().min(1).max(200_000),\n negative: z.string().trim().min(1).max(200_000),\n boundary: z.string().trim().min(1).max(200_000),\n }),\n});\n\nexport const LearningSignalRefSchema = z.discriminatedUnion(\"kind\", [\n DemonstrationSignalSchema,\n PreferenceSignalSchema,\n CorrectionSignalSchema,\n FeedbackSignalSchema,\n RewardSignalSchema,\n LabelSignalSchema,\n]);\n\nexport const LearningSignalInventorySchema = z.object({\n demonstrations: z.array(DemonstrationSignalSchema).max(100_000).default([]),\n preferences: z.array(PreferenceSignalSchema).max(100_000).default([]),\n corrections: z.array(CorrectionSignalSchema).max(100_000).default([]),\n feedback: z.array(FeedbackSignalSchema).max(100_000).default([]),\n rewards: z.array(RewardSignalSchema).max(100_000).default([]),\n labels: z.array(LabelSignalSchema).max(100_000).default([]),\n});\n\nexport const TasksetEnvironmentContractSchema = z.object({\n protocolVersion: z.literal(\"openpond.taskEnvironment.v1\"),\n kind: z.enum([\"chat\", \"agent\", \"program\", \"stateful_harness\", \"work\"]),\n entrypoint: z.string().trim().min(1).max(1_000),\n stateful: z.boolean(),\n deterministicSeeds: z.boolean(),\n toolNames: z.array(IdSchema).max(200).default([]),\n actionBindings: z.array(HarnessActionBindingSchema).max(200).optional(),\n lifecycle: z.array(z.enum([\"create\", \"reset\", \"step\", \"grade\", \"cleanup\"])).min(1),\n defaultTimeoutMs: z.number().int().positive().max(3_600_000),\n networkPolicy: z.enum([\"none\", \"declared_read_only\", \"declared_scoped\"]),\n resources: z.array(TasksetEnvironmentResourceSchema).max(10_000).optional(),\n metadata: MetadataSchema,\n});\n\nexport const TasksetCapabilityManifestSchema = z.object({\n schemaVersion: z.literal(\"openpond.tasksetCapabilities.v1\"),\n taskKind: z.enum([\"chat\", \"single_agent\", \"multi_agent\", \"custom_program\"]),\n supportedSignals: z.array(z.enum([\"demonstration\", \"preference\", \"correction\", \"feedback\", \"reward\", \"label\"])),\n compatibleMethods: z.array(z.enum([\"none\", \"retrieval\", \"sft\", \"dpo\", \"grpo\", \"ppo\", \"sdft\", \"opd\", \"opsd\", \"sdpo\"])),\n rewardKinds: z.array(z.enum([\"none\", \"exact\", \"deterministic\", \"model_judge\", \"human\"])),\n requiresTools: z.boolean(),\n requiresState: z.boolean(),\n requiresPrivilegedGrading: z.boolean(),\n environmentPlacements: z.array(z.enum([\"local\", \"remote\", \"colocated\", \"provider_native\"])),\n exportable: z.boolean(),\n portabilityBlockers: z.array(z.string().trim().min(1).max(2_000)).default([]),\n});\n\nconst GraderBaseSchema = z.object({\n id: IdSchema,\n version: z.string().trim().min(1).max(100),\n label: z.string().trim().min(1).max(500),\n weight: z.number().min(0).max(1_000).default(1),\n hardGate: z.boolean().default(false),\n rewardEligible: z.boolean().default(false),\n privileged: z.boolean().default(false),\n metadata: MetadataSchema,\n});\n\nexport const DeterministicGraderSpecSchema = GraderBaseSchema.extend({\n kind: z.enum([\"content\", \"schema\", \"file\", \"diff\", \"test\", \"runtime_event\", \"state\"]),\n config: z.record(z.string(), z.unknown()),\n});\n\nexport const RubricGraderSpecSchema = GraderBaseSchema.extend({\n kind: z.literal(\"model_judge\"),\n rubric: z.string().trim().min(1).max(50_000),\n judge: ChatModelRefSchema,\n calibrationFixtureRefs: z.array(IdSchema).min(1).max(500),\n calibrationStatus: z.enum([\"pending\", \"passed\", \"failed\"]),\n temperature: z.number().min(0).max(2).default(0),\n});\n\nexport const HumanGraderSpecSchema = GraderBaseSchema.extend({\n kind: z.literal(\"human\"),\n form: HumanFormSchema.optional(),\n rubric: z.string().trim().min(1).max(50_000),\n reviewerRole: z.string().trim().min(1).max(500),\n});\n\nexport const CustomVerifierGraderSpecSchema = GraderBaseSchema.extend({\n kind: z.literal(\"custom_verifier\"),\n runtime: CustomVerifierRuntimeSchema.optional(),\n module: z.string().trim().min(1).max(1_000)\n .refine(safeRelativeFilePath, \"Custom verifier modules must use a safe relative path.\"),\n exportName: CodeIdentifierSchema,\n timeoutMs: z.number().int().positive().max(300_000),\n networkPolicy: z.literal(\"none\"),\n});\n\nexport const GraderSpecSchema = z.union([\n DeterministicGraderSpecSchema,\n RubricGraderSpecSchema,\n HumanGraderSpecSchema,\n CustomVerifierGraderSpecSchema,\n]);\n\nexport const GraderFixtureLabelSchema = z.enum([\n \"positive\",\n \"negative\",\n \"boundary\",\n \"adversarial\",\n \"prompt_injection\",\n \"infrastructure_failure\",\n]);\n\nexport const GraderFixtureSchema = z.object({\n id: IdSchema,\n taskId: IdSchema,\n label: GraderFixtureLabelSchema,\n output: z.record(z.string(), z.unknown()),\n infrastructureError: z.string().trim().min(1).max(10_000).nullable(),\n expectedPassed: z.boolean(),\n expectedRewardEligible: z.boolean(),\n metadata: MetadataSchema,\n});\n\nexport type TrainingSourceRef = z.infer<typeof TrainingSourceRefSchema>;\nexport type TasksetSourceRef = z.infer<typeof TasksetSourceRefSchema>;\nexport type TaskAssetRef = z.infer<typeof TaskAssetRefSchema>;\nexport type TaskRequiredOutput = z.infer<typeof TaskRequiredOutputSchema>;\nexport type TaskDataRecord = z.infer<typeof TaskDataRecordSchema>;\nexport type TasksetEnvironmentResource = z.infer<typeof TasksetEnvironmentResourceSchema>;\nexport type DemonstrationSignal = z.infer<typeof DemonstrationSignalSchema>;\nexport type PreferenceSignal = z.infer<typeof PreferenceSignalSchema>;\nexport type CorrectionSignal = z.infer<typeof CorrectionSignalSchema>;\nexport type FeedbackSignal = z.infer<typeof FeedbackSignalSchema>;\nexport type RewardSignal = z.infer<typeof RewardSignalSchema>;\nexport type LabelSignal = z.infer<typeof LabelSignalSchema>;\nexport type LearningSignalInventory = z.infer<typeof LearningSignalInventorySchema>;\nexport type TasksetEnvironmentContract = z.infer<typeof TasksetEnvironmentContractSchema>;\nexport type TasksetCapabilityManifest = z.infer<typeof TasksetCapabilityManifestSchema>;\nexport type GraderSpec = z.infer<typeof GraderSpecSchema>;\nexport type GraderFixture = z.infer<typeof GraderFixtureSchema>;\nexport type TasksetPurpose = z.infer<typeof TasksetPurposeSchema>;\nexport type TasksetBenchmarkBinding = z.infer<typeof TasksetBenchmarkBindingSchema>;\n", "import { z } from \"zod\";\nimport { EnvironmentReleaseSchema, VerifierSetReleaseSchema } from \"@openpond/evals\";\nimport { JavaScriptEnvironmentDefinitionSchema, assertJavaScriptEnvironmentDefinition } from \"@openpond/evals/javascript-environment/contracts\";\nimport { createLearningTextAsset, learningRef, sealLearningContent, verifyLearningTextAsset, type LearningTextAsset } from \"@openpond/evals/learning\";\nimport { assertBoundedTaskJson } from \"@openpond/evals/task-schema\";\nimport type { TasksetRelease } from \"@openpond/evals/tasksets\";\nimport { canonicalJson } from \"./protocol.js\";\nimport { ModelProjectVersionedRefSchema } from \"./model-projects.js\";\nexport {\n NativeHarnessExperimentAttemptSchema,\n verifyNativeHarnessExperimentAttempt,\n type NativeHarnessExperimentAttempt,\n} from \"@openpond/evals/experiments\";\n\nconst HashSchema = z.string().regex(/^[a-f0-9]{64}$/);\nexport const ModelStarterEnvironmentAttemptSchema = /* @__PURE__ */ (() => z.object({\n schemaVersion: z.literal(\"openpond.javascriptEnvironmentAttempt.v1\"), taskId: z.string(),\n status: z.enum([\"completed\", \"budget_exhausted\", \"cancelled\", \"timed_out\", \"policy_failure\", \"environment_failure\"]),\n output: z.string().nullable(), collected: z.boolean(), environmentCleanupComplete: z.boolean(),\n snapshot: z.object({ definition: ModelProjectVersionedRefSchema, inputHash: HashSchema, seed: z.number().int(), initialStateHash: HashSchema, finalStateHash: HashSchema, state: z.record(z.string(), z.unknown()), events: z.array(z.record(z.string(), z.unknown())) }).strict().nullable(),\n messages: z.array(z.unknown()), error: z.string().nullable(), contentHash: HashSchema,\n}).strict())();\n\n/** Validate an owner-recorded runtime artifact against the admitted task.\n * Provenance/ownership of the artifact remains the execution host's concern. */\nexport function verifyModelStarterEnvironmentAttempt(value: unknown, context: { taskId: string; input: Record<string, unknown>; seed: number; javascript: z.infer<typeof ModelProjectVersionedRefSchema> }) {\n assertBoundedTaskJson(value, 16_777_216);\n const result = ModelStarterEnvironmentAttemptSchema.parse(value);\n const { contentHash, ...content } = result;\n if (sealLearningContent(content).contentHash !== contentHash || result.taskId !== context.taskId || (result.snapshot && (\n !equal(result.snapshot.definition, context.javascript) || result.snapshot.inputHash !== sealLearningContent(context.input).contentHash || result.snapshot.seed !== context.seed || result.snapshot.finalStateHash !== sealLearningContent(result.snapshot.state).contentHash\n ))) throw new Error(\"Starter environment attempt differs from its admitted task or recorded bytes.\");\n return result;\n}\n\nexport const ModelStarterExecutionSchema = z.object({\n environment: EnvironmentReleaseSchema,\n verifierSet: VerifierSetReleaseSchema,\n javascript: JavaScriptEnvironmentDefinitionSchema,\n}).strict();\nexport type ModelStarterExecution = z.infer<typeof ModelStarterExecutionSchema>;\nexport const ModelStarterToolFixtureScriptSchema = z.object({\n actions: z.array(z.object({ name: z.string().min(1).max(64), arguments: z.record(z.string(), z.unknown()) }).strict()).max(1_000),\n}).strict();\nexport type ModelStarterExecutionContext = Pick<TasksetRelease, \"environment\" | \"environmentRelease\" | \"verifierSetRelease\" | \"tools\" | \"capabilities\" | \"policy\" | \"graders\" | \"tasks\">;\n\n/** Derivable from immutable Taskset refs, without putting private code in its metadata. */\nexport function modelStarterExecutionAssetId(context: Pick<ModelStarterExecutionContext, \"environmentRelease\" | \"verifierSetRelease\">): string {\n if (!context.environmentRelease || !context.verifierSetRelease) throw new Error(\"Starter execution release references are missing.\");\n return `starter-execution-${sealLearningContent({ environment: context.environmentRelease, verifiers: context.verifierSetRelease }).contentHash}`;\n}\n\n/** Persist alongside the package's private assets in the same creation transaction.\n * The existing authored-text resource bound also applies to this small closure. */\nexport function createModelStarterExecutionAsset(value: ModelStarterExecution): LearningTextAsset {\n const execution = ModelStarterExecutionSchema.parse(value);\n assertExecutionIntegrity(execution);\n const id = modelStarterExecutionAssetId({ environmentRelease: { id: execution.environment.id, contentHash: execution.environment.contentHash }, verifierSetRelease: { id: execution.verifierSet.id, contentHash: execution.verifierSet.contentHash } });\n const generated = createLearningTextAsset({ text: canonicalJson(execution), path: \"environment/execution.json\", mediaType: \"application/json\", visibility: \"host_private\" });\n const { contentHash: _hash, ...content } = generated;\n return sealLearningContent({ ...content, id, asset: { ...content.asset, id } });\n}\n\n/** The caller owns and verifies the Taskset manifest; this verifies its private\n * resource graph. Passing selected immutable task rows permits bounded hydration. */\nexport function resolveModelStarterExecutionAsset(context: ModelStarterExecutionContext, asset: LearningTextAsset, assets: LearningTextAsset[]): ModelStarterExecution {\n if (asset.id !== modelStarterExecutionAssetId(context) || asset.asset.visibility !== \"host_private\" || asset.asset.mediaType !== \"application/json\") throw new Error(\"Starter execution asset differs from its Taskset references.\");\n const execution = ModelStarterExecutionSchema.parse(JSON.parse(verifyLearningTextAsset(asset, asset.asset)));\n validateModelStarterExecution(execution, context, assets);\n return execution;\n}\n\nfunction equal(left: unknown, right: unknown): boolean {\n return sealLearningContent({ value: left }).contentHash === sealLearningContent({ value: right }).contentHash;\n}\n\nfunction assertExecutionIntegrity(execution: ModelStarterExecution): void {\n assertJavaScriptEnvironmentDefinition(execution.javascript);\n for (const resource of [execution.environment, execution.verifierSet]) {\n const { contentHash, ...content } = resource;\n if (sealLearningContent(content).contentHash !== contentHash) throw new Error(`Starter execution resource integrity failed: ${resource.id}.`);\n }\n if (!equal(execution.environment.metadata.javascriptEnvironment, learningRef(execution.javascript))) throw new Error(\"Starter execution resources differ from its declared task context.\");\n}\n\n/** Close executable dependencies before a host persists or runs a package. */\nexport function validateModelStarterExecution(\n execution: ModelStarterExecution | undefined,\n taskset: ModelStarterExecutionContext,\n assets: LearningTextAsset[],\n): void {\n if (!execution) {\n if (taskset.environment.entrypoint === \"openpond.javascript-environment.v1\") throw new Error(\"Starter JavaScript execution resources are missing.\");\n return;\n }\n const { environment, verifierSet, javascript } = execution;\n assertExecutionIntegrity(execution);\n if (!equal(taskset.environmentRelease, { id: environment.id, contentHash: environment.contentHash }) ||\n !equal(taskset.verifierSetRelease, { id: verifierSet.id, contentHash: verifierSet.contentHash }) ||\n !equal(environment.contract, taskset.environment) || !equal(verifierSet.graders, taskset.graders) ||\n !equal(taskset.tools, javascript.tools) || !equal(environment.metadata.javascriptEnvironment, learningRef(javascript))) {\n throw new Error(\"Starter execution resources differ from its declared task context.\");\n }\n const contract = environment.contract;\n if (contract.entrypoint !== \"openpond.javascript-environment.v1\" || contract.kind !== \"agent\" ||\n !contract.stateful || !contract.deterministicSeeds || contract.networkPolicy !== \"none\" ||\n new Set(contract.lifecycle).size !== 5 || taskset.capabilities.length || taskset.policy.connectedAppScopes.length) {\n throw new Error(\"Starter JavaScript environment declares unsupported host capabilities.\");\n }\n for (const reference of [javascript.module, environment.actionSchemaRef, environment.observationSchemaRef, environment.stateSchemaRef]) {\n if (!reference) continue;\n const asset = assets.find(asset => asset.id === reference.id);\n if (!asset) throw new Error(`Starter environment asset is missing: ${reference.id}.`);\n verifyLearningTextAsset(asset, reference);\n }\n for (const task of taskset.tasks) {\n const asset = assets.find(asset => asset.id === task.privilegedContextRef);\n if (!asset || asset.asset.visibility !== \"host_private\" || asset.asset.mediaType !== \"application/json\") {\n throw new Error(`Starter private initial state is missing: ${task.id}.`);\n }\n const state: unknown = JSON.parse(verifyLearningTextAsset(asset, asset.asset));\n if (!state || typeof state !== \"object\" || Array.isArray(state)) throw new Error(`Starter initial state must be a JSON object: ${task.id}.`);\n assertBoundedTaskJson(state, javascript.maxStateBytes);\n }\n}\n", "import { z } from \"zod\";\nimport { EnvironmentReleaseSchema, VerifierSetReleaseSchema, verifyEnvironmentRelease, verifyVerifierSetRelease } from \"@openpond/evals\";\nimport { createLearningTextAsset, sealLearningContent, verifyLearningTextAsset, type LearningTextAsset } from \"@openpond/evals/learning\";\nimport type { TasksetRelease } from \"@openpond/evals/tasksets\";\nimport { canonicalJson } from \"./protocol.js\";\n\nexport const ModelTasksetExecutionResourcesSchema = z.object({ environment: EnvironmentReleaseSchema, verifierSet: VerifierSetReleaseSchema }).strict();\ntype Resources = z.infer<typeof ModelTasksetExecutionResourcesSchema>;\ntype Context = Pick<TasksetRelease, \"environmentRelease\" | \"verifierSetRelease\" | \"environment\" | \"graders\">;\n\n/** Private resource identity follows the exact published execution references. */\nexport function modelTasksetExecutionResourcesAssetId(context: Pick<Context, \"environmentRelease\" | \"verifierSetRelease\">): string {\n if (!context.environmentRelease || !context.verifierSetRelease) throw new Error(\"Taskset execution references are missing.\");\n return `taskset-execution-${sealLearningContent({ environment: context.environmentRelease, verifiers: context.verifierSetRelease }).contentHash}`;\n}\n\nexport function createModelTasksetExecutionResourcesAsset(value: Resources): LearningTextAsset {\n const resources = ModelTasksetExecutionResourcesSchema.parse({ environment: value.environment, verifierSet: value.verifierSet });\n assertIntegrity(resources);\n const id = modelTasksetExecutionResourcesAssetId({ environmentRelease: { id: resources.environment.id, contentHash: resources.environment.contentHash }, verifierSetRelease: { id: resources.verifierSet.id, contentHash: resources.verifierSet.contentHash } });\n const { contentHash: _hash, ...asset } = createLearningTextAsset({ text: canonicalJson(resources), path: \"environment/resources.json\", mediaType: \"application/json\", visibility: \"host_private\" });\n return sealLearningContent({ ...asset, id, asset: { ...asset.asset, id } });\n}\n\n/** Resolve text or tool execution resources without trusting an asset's ID alone. */\nexport function resolveModelTasksetExecutionResourcesAsset(context: Context, asset: LearningTextAsset): Resources {\n if (asset.id !== modelTasksetExecutionResourcesAssetId(context) || asset.asset.visibility !== \"host_private\" || asset.asset.mediaType !== \"application/json\") throw new Error(\"Taskset execution asset differs from its published references.\");\n const resources = ModelTasksetExecutionResourcesSchema.parse(JSON.parse(verifyLearningTextAsset(asset, asset.asset)));\n assertIntegrity(resources);\n if (asset.id !== createModelTasksetExecutionResourcesAsset(resources).id || canonicalJson(context.environment) !== canonicalJson(resources.environment.contract) || canonicalJson(context.graders) !== canonicalJson(resources.verifierSet.graders)) throw new Error(\"Taskset differs from its execution resources.\");\n return resources;\n}\n\nfunction assertIntegrity(resources: Resources): void {\n if (!verifyEnvironmentRelease(resources.environment) || !verifyVerifierSetRelease(resources.verifierSet)) throw new Error(\"Taskset execution resource integrity failed.\");\n}\n", "import { z } from \"zod\";\nimport { createEnvironmentRelease, createVerifierSetRelease, verifyEnvironmentRelease, verifyVerifierSetRelease } from \"@openpond/evals\";\nimport { LearningTextAssetSchema, TaskDefinitionSchema, assertLearningContentHash, learningRef, sameLearningRef, sealLearningContent, verifyLearningTextAsset } from \"@openpond/evals/learning\";\nimport { RewardBindingSchema, RewardReleaseSchema, compileBoundGraders } from \"@openpond/evals/rewards\";\nimport { TasksetReleaseSchema, assertTasksetRelease } from \"@openpond/evals/tasksets\";\nimport { validateTaskValue } from \"@openpond/evals/task-schema\";\n\nimport { ModelProjectVersionedRefSchema } from \"./model-projects.js\";\nimport { ModelStarterExecutionSchema, validateModelStarterExecution } from \"./model-starter-execution.js\";\nimport { ModelTasksetExecutionResourcesSchema } from \"./model-taskset-resources.js\";\n\nconst OwnerSchema = z.object({ scopeId: z.string().trim().min(1).max(500), modelId: z.string().trim().min(1).max(500) }).strict();\nexport const ModelTasksetDerivationSchema = z.object({\n schemaVersion: z.literal(\"openpond.modelTasksetDerivation.v1\"),\n owner: OwnerSchema,\n root: ModelProjectVersionedRefSchema,\n parent: ModelProjectVersionedRefSchema,\n}).strict();\n\n/** Immutable executable resources, independent of a catalog listing. */\nexport const ModelTasksetPackageSchema = z.object({\n taskset: TasksetReleaseSchema,\n taskDefinition: TaskDefinitionSchema,\n rewardBinding: RewardBindingSchema,\n rewards: z.array(RewardReleaseSchema).min(1).max(100),\n assets: z.array(LearningTextAssetSchema).max(1_000),\n executionResources: ModelTasksetExecutionResourcesSchema.optional(),\n execution: ModelStarterExecutionSchema.optional(),\n instructionMode: z.literal(\"per_task\").optional(),\n}).strict();\nexport type ModelTasksetPackage = z.infer<typeof ModelTasksetPackageSchema>;\n\nconst same = (left: unknown, right: unknown) => sealLearningContent({ value: left }).contentHash === sealLearningContent({ value: right }).contentHash;\nconst identity = (owner: z.infer<typeof OwnerSchema>, root: z.infer<typeof ModelProjectVersionedRefSchema>) => `model-taskset-${sealLearningContent({ owner, root }).contentHash}`;\n\n/** Hosts authorize the source and owner, upload immutable files, then commit\n * this result together with the model CAS and operation receipt. This pure\n * compiler neither allocates a new identity on retry nor changes a consumer. */\nexport function deriveModelTaskset(input: {\n owner: z.input<typeof OwnerSchema>;\n source: ModelTasksetPackage;\n rewardBinding: z.infer<typeof RewardBindingSchema>;\n rewards: z.infer<typeof RewardReleaseSchema>[];\n assets: z.infer<typeof LearningTextAssetSchema>[];\n}): ModelTasksetPackage {\n return compileModelTasksetReward({ ...input, source: validateModelTasksetPackage(input.source) });\n}\n\n/** Internal compiler shared by validated bound and ordinary source admission.\n * The source Taskset is always the real parent, never a synthetic bound copy. */\nexport function compileModelTasksetReward(input: {\n owner: z.input<typeof OwnerSchema>;\n source: Pick<ModelTasksetPackage, \"taskset\" | \"taskDefinition\" | \"executionResources\" | \"execution\" | \"instructionMode\">;\n rewardBinding: z.infer<typeof RewardBindingSchema>;\n rewards: z.infer<typeof RewardReleaseSchema>[];\n assets: z.infer<typeof LearningTextAssetSchema>[];\n edits?: Pick<ModelTasksetPackage, \"taskset\" | \"taskDefinition\" | \"executionResources\" | \"execution\">;\n}): ModelTasksetPackage {\n const owner = OwnerSchema.parse(input.owner);\n const source = input.source;\n const edited = input.edits ?? source;\n const previous = source.taskset.metadata.modelTasksetDerivation === undefined ? null : ModelTasksetDerivationSchema.parse(source.taskset.metadata.modelTasksetDerivation);\n if (previous && source.taskset.id !== identity(previous.owner, previous.root)) throw new Error(\"Derived Taskset identity differs from its ownership lineage.\");\n const owned = previous && same(previous.owner, owner);\n const root = owned ? previous.root : learningRef(source.taskset);\n const id = owned ? source.taskset.id : identity(owner, root);\n const revision = owned ? source.taskset.revision + 1 : 1;\n const rewardBinding = RewardBindingSchema.parse(input.rewardBinding);\n const rewards = input.rewards.map(reward => RewardReleaseSchema.parse(reward));\n const graders = compileBoundGraders(rewardBinding, rewards);\n if (rewardBinding.recipeRef) throw new Error(\"Resolve the Reward recipe into one standalone binding before deriving a Taskset.\");\n const policy = { ...edited.taskset.policy, hiddenGraderRefs: graders.filter(grader => grader.privileged).map(grader => grader.id) };\n const previousResources = edited.executionResources ?? edited.execution;\n const environment = previousResources?.environment ?? createEnvironmentRelease({\n schemaVersion: \"openpond.environmentRelease.v1\", id: `${id}-environment`, revision: 1,\n contract: edited.taskset.environment, actionSchemaRef: null, observationSchemaRef: null, stateSchemaRef: null,\n artifactCollection: { maxArtifacts: 100_000, maxTotalBytes: 250_000_000 }, adapterConformanceHashes: {}, metadata: {},\n });\n const verifierSet = createVerifierSetRelease({\n schemaVersion: \"openpond.verifierSetRelease.v1\", id: `${id}-verifiers`, revision, graders,\n isolation: previousResources?.verifierSet.isolation ?? { processBoundary: \"isolated_process\", networkPolicy: \"none\", defaultTimeoutMs: Math.min(edited.taskset.environment.defaultTimeoutMs, 300_000) },\n calibrationReceiptRefs: [], metadata: previousResources ? { sourceVerifierSet: learningRef(previousResources.verifierSet) } : {},\n });\n const executionResources = { environment, verifierSet };\n const execution = edited.execution ? { ...edited.execution, verifierSet } : undefined;\n const { contentHash: _taskHash, ...taskContent } = edited.taskset;\n const { contentHash: _definitionHash, ...definitionContent } = edited.taskDefinition;\n const taskExecution = { ...definitionContent.execution, policy, environmentRelease: { id: environment.id, contentHash: environment.contentHash }, verifierSetRelease: { id: verifierSet.id, contentHash: verifierSet.contentHash } };\n const taskDefinition = TaskDefinitionSchema.parse(sealLearningContent({ ...definitionContent, id: `${id}-definition`, revision, rewardBinding: learningRef(rewardBinding), execution: taskExecution }));\n const authoring = source.taskset.metadata.starterAuthoring ?? source.taskset.metadata.ordinaryAuthoring;\n const graderFixtures = authoring && typeof authoring === \"object\" && !Array.isArray(authoring) && \"graderFixtures\" in authoring ? authoring.graderFixtures : undefined;\n // Keep provenance through exact lineage. Source package qualifications and\n // privacy attestations describe different bytes and must not be copied.\n const taskset = TasksetReleaseSchema.parse(sealLearningContent({\n ...taskContent, ...taskExecution, id, revision, graders,\n metadata: {\n starter: { taskDefinition: learningRef(taskDefinition), rewardBinding: learningRef(rewardBinding) },\n rewardExecution: { binding: rewardBinding, rewards },\n ...(graderFixtures === undefined ? {} : { starterAuthoring: { graderFixtures } }),\n ...(edited.taskset.metadata.environmentResources === undefined ? {} : { environmentResources: edited.taskset.metadata.environmentResources }),\n modelTasksetDerivation: { schemaVersion: \"openpond.modelTasksetDerivation.v1\", owner, root, parent: learningRef(source.taskset) },\n },\n }));\n return validateModelTasksetPackage({ taskset, taskDefinition, rewardBinding, rewards, assets: input.assets, executionResources, ...(execution ? { execution } : {}), ...(source.instructionMode ? { instructionMode: source.instructionMode } : {}) });\n}\n\nexport function validateModelTasksetPackage(value: unknown): ModelTasksetPackage {\n const result = ModelTasksetPackageSchema.parse(value);\n const { taskset, taskDefinition, rewardBinding, rewards, assets, execution } = result;\n for (const resource of [taskset, taskDefinition, rewardBinding, ...rewards, ...assets]) assertLearningContentHash(resource);\n assertTasksetRelease(taskset);\n if (rewardBinding.recipeRef) throw new Error(\"Resolve the Reward recipe into one standalone binding before deriving a Taskset.\");\n if (!sameLearningRef(taskDefinition.rewardBinding, learningRef(rewardBinding))) throw new Error(\"Taskset definition differs from its Reward binding.\");\n const { policy, environment, environmentRelease, tools, capabilities, verifierSetRelease } = taskset;\n if (!same(taskDefinition.execution, { policy, environment, ...(environmentRelease ? { environmentRelease } : {}), tools, capabilities, ...(verifierSetRelease ? { verifierSetRelease } : {}) })) throw new Error(\"Taskset definition differs from its execution resources.\");\n if (!same(taskset.graders, compileBoundGraders(rewardBinding, rewards))) throw new Error(\"Taskset graders differ from its Reward binding.\");\n if (taskset.metadata.starter !== undefined) {\n const metadata = z.object({ taskDefinition: ModelProjectVersionedRefSchema, rewardBinding: ModelProjectVersionedRefSchema }).passthrough().parse(taskset.metadata.starter);\n if (!sameLearningRef(metadata.taskDefinition, learningRef(taskDefinition)) || !sameLearningRef(metadata.rewardBinding, learningRef(rewardBinding))) throw new Error(\"Taskset metadata differs from its immutable grading resources.\");\n }\n if (taskset.metadata.rewardExecution !== undefined && !same(taskset.metadata.rewardExecution, { binding: rewardBinding, rewards })) throw new Error(\"Taskset embedded Rewards differ from its immutable grading resources.\");\n if (taskset.metadata.rewardBinding !== undefined && !sameLearningRef(ModelProjectVersionedRefSchema.parse(taskset.metadata.rewardBinding), learningRef(rewardBinding))) throw new Error(\"Taskset Reward reference differs from its immutable grading resources.\");\n const resources = result.executionResources ?? execution;\n if (taskset.environmentRelease && !resources) throw new Error(\"Deriving a Taskset requires its pinned execution resources.\");\n if (resources && (!verifyEnvironmentRelease(resources.environment) || !verifyVerifierSetRelease(resources.verifierSet) ||\n !same(taskset.environmentRelease, { id: resources.environment.id, contentHash: resources.environment.contentHash }) ||\n !same(taskset.verifierSetRelease, { id: resources.verifierSet.id, contentHash: resources.verifierSet.contentHash }) ||\n !same(taskset.environment, resources.environment.contract) || !same(taskset.graders, resources.verifierSet.graders))) throw new Error(\"Taskset differs from its pinned execution resources.\");\n validateModelStarterExecution(execution, taskset, assets);\n if (new Set(assets.map(asset => asset.id)).size !== assets.length) throw new Error(\"Taskset asset identities must be unique.\");\n for (const asset of assets) verifyLearningTextAsset(asset, asset.asset);\n for (const reference of resources ? [resources.environment.actionSchemaRef, resources.environment.observationSchemaRef, resources.environment.stateSchemaRef] : []) {\n if (!reference) continue;\n const asset = assets.find(asset => asset.id === reference.id);\n if (!asset) throw new Error(`Taskset environment asset is missing: ${reference.id}.`);\n verifyLearningTextAsset(asset, reference);\n }\n for (const task of taskset.tasks) {\n if (taskDefinition.requiredOutputs && !same(task.requiredOutputs, taskDefinition.requiredOutputs)) throw new Error(`Taskset outputs differ from its reviewed definition: ${task.id}.`);\n if ((result.instructionMode !== \"per_task\" && task.policyVisibleContext.instructions !== taskDefinition.instructions) || !validateTaskValue(taskDefinition.inputSchema, task.input).valid ||\n (task.expectedOutput !== null && !validateTaskValue(taskDefinition.outputSchema, task.expectedOutput).valid)) throw new Error(`Taskset task differs from its declared format: ${task.id}.`);\n if (task.privilegedContextRef && !assets.some(asset => asset.id === task.privilegedContextRef && asset.asset.visibility === \"host_private\")) throw new Error(`Taskset private context is missing: ${task.id}.`);\n }\n for (const reward of rewards) {\n const implementation = reward.implementation;\n const references = [...reward.assets, ...(\"verifierRef\" in implementation ? [implementation.verifierRef] : []), ...(\"rubricRef\" in implementation ? [implementation.rubricRef] : []), ...(\"inputContract\" in implementation ? [implementation.inputContract] : [])];\n for (const reference of references) {\n const asset = assets.find(asset => asset.id === reference.id);\n if (!asset || reference.visibility === \"policy\") throw new Error(`Taskset Reward requires its private asset: ${reference.id}.`);\n verifyLearningTextAsset(asset, reference);\n }\n }\n return result;\n}\n", "import { z } from \"zod\";\nimport { contentHash, sha256 } from \"@openpond/harness\";\nimport { TaskBatchSchema, TaskEvidenceSchema, TaskAdmissionDecisionSchema, LearningSourceSchema, LearningTextAssetSchema,\n assertLearningContentHash, compileTaskBatch, learningRef, sameLearningRef, taskBatchPackageMetadata, verifyLearningTextAsset } from \"@openpond/evals/learning\";\nimport type { TasksetRelease } from \"@openpond/evals/tasksets\";\nimport { canonicalJson } from \"./training.js\";\n\n/** Review snapshots travel with their exact batch; importing them is not a\n * new local admission or permission to train. */\nexport const TasksetPackageLearningResourcesSchema = z.object({\n batch: TaskBatchSchema,\n evidence: z.array(TaskEvidenceSchema).min(1).max(10_000),\n decisions: z.array(TaskAdmissionDecisionSchema).min(1).max(10_000),\n sources: z.array(LearningSourceSchema).min(1).max(10_000),\n assets: z.array(LearningTextAssetSchema).max(1_000),\n}).strict();\nexport type TasksetPackageLearningResources = z.infer<typeof TasksetPackageLearningResourcesSchema>;\n\nexport function learningPackageContextFiles(resources: TasksetPackageLearningResources) {\n return resources.evidence.filter(evidence => evidence.submission.evaluatorContext !== null).map(evidence => {\n const text = canonicalJson(evidence.submission.evaluatorContext);\n const bytes = new TextEncoder().encode(text);\n return { asset: { id: `task-evidence:${evidence.contentHash}`, path: `learning/context/${evidence.contentHash}.json`,\n contentHash: sha256(bytes), sizeBytes: bytes.byteLength, mediaType: \"application/json\", visibility: \"host_private\" as const },\n base64: btoa(Array.from(bytes, byte => String.fromCharCode(byte)).join(\"\")) };\n });\n}\n\nexport function validateTasksetLearningResources(taskset: TasksetRelease, input: unknown) {\n const resources = TasksetPackageLearningResourcesSchema.parse(input);\n const metadata = taskBatchPackageMetadata(taskset);\n if (!sameLearningRef(learningRef(resources.batch), metadata.batch)) throw new Error(\"Taskset learning batch differs from its admission metadata.\");\n for (const collection of [resources.evidence, resources.decisions, resources.sources, resources.assets]) {\n const identities = new Set<string>();\n for (const resource of collection) {\n assertLearningContentHash(resource);\n const key = `${resource.id}:${resource.revision}`;\n if (identities.has(key)) throw new Error(\"Taskset learning resource identities must be unique.\");\n identities.add(key);\n }\n }\n if (resources.evidence.length !== resources.batch.examples.length || resources.decisions.length !== resources.batch.examples.length) throw new Error(\"Taskset learning snapshots must match the admitted batch inventory.\");\n for (const evidence of resources.evidence) {\n const source = resources.sources.find(source => sameLearningRef(learningRef(source), evidence.source));\n if (!source || !sameLearningRef(source.taskDefinition, learningRef(metadata.definition))) throw new Error(\"Taskset evidence source differs from its task definition.\");\n }\n if (resources.sources.some(source => !resources.evidence.some(evidence => sameLearningRef(evidence.source, learningRef(source))))) throw new Error(\"Taskset package includes an unrelated learning source.\");\n const rewardAssets = metadata.rewards.flatMap(reward => [...reward.assets,\n ...(reward.implementation.kind === \"custom_verifier\" ? [reward.implementation.verifierRef]\n : reward.implementation.kind === \"model_judge\" || reward.implementation.kind === \"human\" ? [reward.implementation.rubricRef] : []),\n ...(\"inputContract\" in reward.implementation ? [reward.implementation.inputContract] : []),\n ]);\n for (const ref of rewardAssets) {\n const asset = resources.assets.find(asset => asset.id === ref.id);\n if (!asset) throw new Error(\"Taskset learning Reward asset is missing.\");\n verifyLearningTextAsset(asset, ref);\n }\n if (resources.assets.some(asset => !rewardAssets.some(ref => ref.id === asset.id))) throw new Error(\"Taskset package includes an unrelated learning asset.\");\n const compiled = compileTaskBatch({ batch: resources.batch, definition: metadata.definition, binding: metadata.binding,\n rewards: metadata.rewards, evidence: resources.evidence, decisions: resources.decisions });\n const compiledMetadata = taskBatchPackageMetadata(compiled);\n if (contentHash(compiledMetadata) !== contentHash(metadata)) throw new Error(\"Taskset admission metadata differs from its reviewed snapshots.\");\n const execution = (release: TasksetRelease) => ({ policy: release.policy, environment: release.environment, tools: release.tools });\n if (contentHash(execution(compiled)) !== contentHash(execution(taskset))) throw new Error(\"Taskset execution differs from its reviewed task definition.\");\n const taskContent = (task: TasksetRelease[\"tasks\"][number]) => ({ id: task.id, clusterKey: task.clusterKey, split: task.split,\n input: task.input, expectedOutput: task.expectedOutput, policyVisibleContext: task.policyVisibleContext,\n privilegedContextRef: task.privilegedContextRef, artifactRefs: task.artifactRefs, requiredOutputs: task.requiredOutputs ?? [], tags: task.tags });\n if (contentHash(compiled.tasks.map(taskContent)) !== contentHash(taskset.tasks.map(taskContent))) throw new Error(\"Taskset rows differ from their reviewed evidence.\");\n return resources;\n}\n", "import { z } from \"zod\";\nimport { ImmutableAssetRefSchema, sha256 } from \"@openpond/harness\";\n\n/** The limit covers the entire decoded JSON envelope, including base64. */\nexport const MAX_TASKSET_PACKAGE_BYTES = 64 * 1024 * 1024;\nexport const TasksetPackageFileSchema = z.object({\n asset: ImmutableAssetRefSchema,\n base64: z.string().max(Math.ceil(MAX_TASKSET_PACKAGE_BYTES / 3) * 4),\n}).strict();\nexport type TasksetPackageFile = z.infer<typeof TasksetPackageFileSchema>;\n\nexport function decodeTasksetPackageFile(value: TasksetPackageFile): Uint8Array {\n const file = TasksetPackageFileSchema.parse(value);\n const raw = atob(file.base64);\n if (btoa(raw) !== file.base64) throw new Error(`Taskset asset ${file.asset.id} has noncanonical base64.`);\n const bytes = Uint8Array.from(raw, character => character.charCodeAt(0));\n if (bytes.byteLength !== file.asset.sizeBytes || sha256(bytes) !== file.asset.contentHash) throw new Error(`Taskset asset ${file.asset.id} differs from its immutable bytes.`);\n return bytes;\n}\n", "import type { TasksetRelease } from \"@openpond/evals/tasksets\";\nimport { LearningTextAssetSchema, sealLearningContent, type LearningTextAsset } from \"@openpond/evals/learning\";\nimport { createModelStarterExecutionAsset, modelStarterExecutionAssetId, ModelStarterExecutionSchema, validateModelStarterExecution, type ModelStarterExecution } from \"./model-starter-execution.js\";\nimport { decodeTasksetPackageFile, type TasksetPackageFile } from \"./taskset-package-files.js\";\n\n/** Resolve the same private execution graph for bound and ordinary packages.\n * Package admission separately validates the enclosing release and file graph. */\nexport function resolveTasksetPackageExecution(input: {\n taskset: TasksetRelease;\n files: TasksetPackageFile[];\n modelResources?: { execution?: ModelStarterExecution };\n}): { execution: ModelStarterExecution; assets: LearningTextAsset[] } | null {\n if (input.taskset.environment.entrypoint !== \"openpond.javascript-environment.v1\") return null;\n const byId = new Map(input.files.map(file => [file.asset.id, file]));\n const read = (id: string): LearningTextAsset => {\n const file = byId.get(id);\n if (!file) throw new Error(`Taskset environment asset is missing: ${id}.`);\n if (file.asset.sizeBytes > 524_288) throw new Error(\"Taskset environment source exceeds the authored asset limit.\");\n const text = new TextDecoder(\"utf-8\", { fatal: true }).decode(decodeTasksetPackageFile(file));\n return LearningTextAssetSchema.parse(sealLearningContent({ schemaVersion: \"openpond.learningTextAsset.v1\", id, revision: 1, asset: file.asset, text }));\n };\n let execution: ModelStarterExecution;\n if (input.modelResources) {\n if (!input.modelResources.execution) throw new Error(\"Bound Taskset JavaScript execution resources are missing.\");\n execution = ModelStarterExecutionSchema.parse(input.modelResources.execution);\n } else {\n const declaration = read(modelStarterExecutionAssetId(input.taskset));\n if (declaration.asset.visibility !== \"host_private\" || declaration.asset.mediaType !== \"application/json\" || declaration.asset.path !== \"environment/execution.json\") throw new Error(\"Taskset execution declaration must be private JSON at environment/execution.json.\");\n execution = ModelStarterExecutionSchema.parse(JSON.parse(declaration.text));\n }\n const ids = new Set([execution.javascript.module.id,\n ...[execution.environment.actionSchemaRef, execution.environment.observationSchemaRef, execution.environment.stateSchemaRef].flatMap(ref => ref ? [ref.id] : []),\n ...input.taskset.tasks.flatMap(task => task.privilegedContextRef ? [task.privilegedContextRef] : []),\n ]);\n const assets = [...ids].map(read);\n validateModelStarterExecution(execution, input.taskset, assets);\n return { execution, assets };\n}\n\n/** Regenerate the declaration when publication reseals its execution releases. */\nexport function createTasksetPackageExecutionFile(execution: ModelStarterExecution): TasksetPackageFile {\n const asset = createModelStarterExecutionAsset(execution);\n const bytes = new TextEncoder().encode(asset.text);\n let raw = \"\";\n for (const byte of bytes) raw += String.fromCharCode(byte);\n return { asset: asset.asset, base64: btoa(raw) };\n}\n", "import { z } from \"zod\";\nimport { contentHash, ImmutableAssetRefSchema, sha256, type ImmutableAssetRef } from \"@openpond/harness\";\nimport { compileBoundGraders, createRewardBinding, RewardReleaseRefSchema } from \"@openpond/evals/rewards\";\nimport { TaskRecordSchema, type GraderSpec } from \"@openpond/evals/tasksets\";\nimport { learningRef, LearningRevisionRefSchema, RewardFixtureSchema, verifyRewardCalibrationClosure,\n rewardCalibrationClosureAsset, MAX_REWARD_CALIBRATION_CLOSURE_BYTES, type RewardCalibrationClosure } from \"@openpond/evals/learning/reward-calibration-closure\";\nimport { GraderFixtureSchema, type GraderFixture } from \"./taskset-draft-core.js\";\nimport type { TasksetPackage } from \"./taskset-package-contracts.js\";\nimport { decodeTasksetPackageFile } from \"./taskset-package-files.js\";\n\nconst ProjectionSchema = z.object({\n schemaVersion: z.literal(\"openpond.connectedRewardCalibrationProjection.v1\"),\n sourceReward: RewardReleaseRefSchema,\n fixtureSet: ImmutableAssetRefSchema,\n calibrationCheck: LearningRevisionRefSchema,\n fixture: RewardFixtureSchema,\n fixtureHash: z.string().regex(/^[a-f0-9]{64}$/),\n checkResultHash: z.string().regex(/^[a-f0-9]{64}$/),\n independentCalibrationTask: z.literal(true),\n closureRef: ImmutableAssetRefSchema,\n graderId: z.string().min(1).max(240).optional(),\n}).strict();\n\nfunction authoredFixtures(value: TasksetPackage): GraderFixture[] {\n const authoring = value.taskset.metadata.ordinaryAuthoring ?? value.taskset.metadata.starterAuthoring;\n return z.object({ graderFixtures: GraderFixtureSchema.array().max(100_000).default([]) }).passthrough().parse(authoring ?? {}).graderFixtures;\n}\n\nfunction isIndependent(fixture: GraderFixture): boolean {\n const projection = fixture.metadata.rewardCalibration;\n return projection !== undefined;\n}\n\n/** No package-contract runtime import: this validator is called by ordinary\n * package admission before any target sees attachments or environment files. */\nexport function assertTasksetCalibrationClosures(value: TasksetPackage): void {\n for (const fixture of authoredFixtures(value)) {\n const projection = fixture.metadata.rewardCalibration;\n // Opaque old metadata is retained history, not qualified calibration. An\n // explicit closure declaration is an immutable asset admission boundary.\n if (projection && typeof projection === \"object\" && Object.hasOwn(projection, \"closureRef\"))\n resolveIndependent(value, fixture);\n }\n // Unreferenced closures also retain their strict private classification.\n for (const file of value.files) if (file.asset.mediaType === \"application/vnd.openpond.reward-calibration-closure+json\")\n readPrivateClosure(value, file.asset);\n}\n\nexport function resolveTasksetCalibrationFixture(value: TasksetPackage, fixtureId: string) {\n const { contentHash: packageHash, ...packageContent } = value;\n if (contentHash(packageContent) !== packageHash) fail(\"calibration_package_changed\");\n const fixtures = authoredFixtures(value).filter(fixture => fixture.id === fixtureId);\n if (fixtures.length !== 1) fail(\"calibration_fixture_not_unique\");\n const fixture = fixtures[0]!;\n if (!isIndependent(fixture)) fail(\"calibration_fixture_not_independent\");\n return resolveIndependent(value, fixture);\n}\nexport type ResolvedTasksetCalibrationFixture = ReturnType<typeof resolveTasksetCalibrationFixture>;\n\nfunction resolveIndependent(value: TasksetPackage, authored: GraderFixture) {\n const projection = ProjectionSchema.parse(authored.metadata.rewardCalibration);\n const closure = readPrivateClosure(value, projection.closureRef);\n if (contentHash(projection.sourceReward) !== contentHash(learningRef(closure.reward))\n || contentHash(projection.fixtureSet) !== contentHash(closure.reward.fixtureSetRef)\n || projection.calibrationCheck.id !== closure.check.id || projection.calibrationCheck.revision !== closure.check.revision\n || projection.calibrationCheck.contentHash !== contentHash(closure.check)) fail(\"calibration_source_changed\");\n const fixture = projection.fixture;\n const id = `calibration-${contentHash([projection.sourceReward, fixture.id])}`;\n if (authored.id !== id || authored.taskId !== id || value.taskset.tasks.some(task => task.id === id)\n || projection.fixtureHash !== contentHash(fixture) || contentHash(authored.output) !== contentHash(fixture.output)\n || authored.infrastructureError !== fixture.infrastructureError) fail(\"calibration_fixture_changed\");\n const checks = closure.check.results.filter(result => result.fixture.id === fixture.id && result.fixture.contentHash === projection.fixtureHash);\n if (checks.length !== 1 || contentHash(checks[0]) !== projection.checkResultHash) fail(\"calibration_result_changed\");\n const expected = fixture.expected;\n if (expected.status !== \"scored\" || typeof expected.passed !== \"boolean\" || authored.expectedPassed !== expected.passed\n || authored.label !== (expected.passed ? \"positive\" : \"negative\")) fail(\"calibration_expectation_unsupported\");\n const graderId = projection.graderId ?? projection.sourceReward.id;\n const graders = value.taskset.graders.filter(grader => grader.id === graderId);\n const grader = graders[0];\n if (graders.length !== 1 || !grader) fail(\"calibration_grader_not_unique\");\n if (authored.expectedRewardEligible !== grader.rewardEligible) fail(\"calibration_reward_expectation_changed\");\n const binding = createRewardBinding({ schemaVersion: \"openpond.rewardBinding.v1\", id: `calibration-${closure.contentHash}`, revision: 1,\n sources: [{ graderId, reward: projection.sourceReward, role: \"evaluation\", normalization: { kind: \"identity\" }, weight: grader.weight,\n required: true, hardGate: grader.hardGate, privileged: grader.privileged, fixtureRefs: [] }],\n aggregation: \"weighted_mean\", unscorable: \"exclude_optional_require_all_required\" }, [closure.reward]);\n const canonical = compileBoundGraders(binding, [closure.reward])[0]!;\n const implementation = (spec: GraderSpec) => {\n const { rewardEligible: _eligible, ...rest } = spec;\n return rest.kind === \"model_judge\" ? { ...rest, temperature: rest.temperature ?? 0 } : rest;\n };\n if (contentHash(implementation(grader)) !== contentHash(implementation(canonical))) fail(\"calibration_grader_changed\");\n if (grader.kind === \"model_judge\") assertJudgeFixtureMembership(value, grader, projection, closure);\n return {\n kind: \"independent_reward_calibration\" as const,\n fixtureId: id,\n task: TaskRecordSchema.parse({ id, clusterKey: id, split: \"validation\", input: fixture.input,\n expectedOutput: fixture.expectedOutput, privilegedContextRef: null }),\n evaluatorContext: fixture.evaluatorContext,\n evidence: { output: fixture.output, artifactRefs: fixture.artifactRefs, runtimeEventRefs: fixture.runtimeEventRefs,\n infrastructureError: fixture.infrastructureError },\n grader: canonical,\n reward: closure.reward,\n binding,\n expected,\n source: { reward: projection.sourceReward, fixtureSet: projection.fixtureSet, check: projection.calibrationCheck,\n closure: projection.closureRef, fixtureHash: projection.fixtureHash, checkResultHash: projection.checkResultHash },\n };\n}\n\nfunction readPrivateClosure(value: TasksetPackage, reference: ImmutableAssetRef): RewardCalibrationClosure {\n if (reference.visibility !== \"host_private\" || reference.sizeBytes > MAX_REWARD_CALIBRATION_CLOSURE_BYTES\n || reference.mediaType !== \"application/vnd.openpond.reward-calibration-closure+json\") fail(\"calibration_closure_not_private\");\n const files = value.files.filter(file => file.asset.id === reference.id);\n if (files.length !== 1 || contentHash(files[0]!.asset) !== contentHash(reference)) fail(\"calibration_closure_asset_changed\");\n const bytes = decodeTasksetPackageFile(files[0]!);\n const text = new TextDecoder(\"utf-8\", { fatal: true }).decode(bytes);\n const closure = verifyRewardCalibrationClosure(JSON.parse(text));\n if (contentHash(rewardCalibrationClosureAsset(closure).asset) !== contentHash(reference)) fail(\"calibration_closure_reference_changed\");\n const aliases = value.files.filter(file => file.asset.contentHash === reference.contentHash || file.asset.id === reference.id || file.asset.path === reference.path);\n if (aliases.some(file => file.asset.visibility !== \"host_private\")) fail(\"calibration_closure_visible_alias\");\n const isAlias = (ref: ImmutableAssetRef) => ref.id === reference.id || ref.path === reference.path || ref.contentHash === reference.contentHash;\n for (const task of value.taskset.tasks) {\n if (task.artifactRefs.some(isAlias) || (task.requiredOutputs ?? []).some(output => output.schemaRef && isAlias(output.schemaRef))\n || task.privilegedContextRef && value.files.some(file => file.asset.id === task.privilegedContextRef && isAlias(file.asset)))\n fail(\"calibration_closure_task_alias\");\n // Literal inlining of the complete exported closure cannot reclassify it.\n if (containsClosure(task.input, text, reference.contentHash) || containsClosure(task.policyVisibleContext, text, reference.contentHash))\n fail(\"calibration_closure_inline_alias\");\n }\n for (const ref of [value.environment.actionSchemaRef, value.environment.observationSchemaRef, value.environment.stateSchemaRef])\n if (ref && isAlias(ref)) fail(\"calibration_closure_environment_schema_alias\");\n for (const metadata of [value.taskset.metadata.environmentResources, value.environment.metadata.resources]) {\n if (metadata === undefined) continue;\n const resources = z.array(z.object({ id: z.string().optional(), path: z.string(), visibility: z.string().optional() }).passthrough()).parse(metadata);\n for (const resource of resources) {\n const file = value.files.find(item => item.asset.path === resource.path);\n // A closure belongs to the grading owner, never an environment resource.\n if (resource.id === reference.id || resource.path === reference.path || file && isAlias(file.asset))\n fail(\"calibration_closure_environment_resource_alias\");\n }\n }\n return closure;\n}\n\nfunction containsClosure(value: unknown, text: string, hash: string): boolean {\n if (typeof value === \"string\") return value === text || sha256(value) === hash;\n if (!value || typeof value !== \"object\") return false;\n if (sha256(JSON.stringify(value)) === hash) return true;\n return Object.values(value).some(item => containsClosure(item, text, hash));\n}\nfunction fail(code: string): never { throw new Error(code); }\n\n\nfunction assertJudgeFixtureMembership(value: TasksetPackage, grader: Extract<GraderSpec, { kind: \"model_judge\" }>,\n selected: z.infer<typeof ProjectionSchema>, closure: RewardCalibrationClosure): void {\n const graderId = grader.id;\n const authoring = value.taskset.metadata.ordinaryAuthoring ?? value.taskset.metadata.starterAuthoring;\n const mapping = z.object({ judgeCalibrationFixtures: z.record(z.string(), z.array(z.string().min(1)).max(500)) }).passthrough().parse(authoring);\n const expected = closure.check.fixtureRefs.map(ref => `calibration-${contentHash([selected.sourceReward, ref.id])}`);\n if (contentHash(mapping.judgeCalibrationFixtures[graderId] ?? []) !== contentHash(expected)) fail(\"calibration_judge_membership_changed\");\n const fixtures = authoredFixtures(value);\n for (let index = 0; index < expected.length; index++) {\n const matches = fixtures.filter(fixture => fixture.id === expected[index]);\n if (matches.length !== 1) fail(\"calibration_judge_membership_changed\");\n const authored = matches[0]!;\n const projected = ProjectionSchema.parse(authored.metadata.rewardCalibration);\n const expectation = projected.fixture.expected;\n if (expectation.status !== \"scored\" || typeof expectation.passed !== \"boolean\"\n || authored.expectedPassed !== expectation.passed || authored.expectedRewardEligible !== grader.rewardEligible\n || authored.label !== (expectation.passed ? \"positive\" : \"negative\")\n || contentHash(authored.output) !== contentHash(projected.fixture.output)\n || authored.infrastructureError !== projected.fixture.infrastructureError) fail(\"calibration_judge_membership_changed\");\n const retained = closure.check.fixtureRefs[index]!;\n const result = closure.check.results.find(item => item.fixture.id === retained.id)!;\n if (authored.taskId !== authored.id || projected.fixture.id !== retained.id || projected.fixtureHash !== retained.contentHash\n || contentHash(projected.fixture) !== retained.contentHash || projected.checkResultHash !== contentHash(result)\n || contentHash(projected.sourceReward) !== contentHash(selected.sourceReward)\n || contentHash(projected.fixtureSet) !== contentHash(selected.fixtureSet)\n || contentHash(projected.calibrationCheck) !== contentHash(selected.calibrationCheck)\n || contentHash(projected.closureRef) !== contentHash(selected.closureRef)\n || (projected.graderId ?? projected.sourceReward.id) !== graderId) fail(\"calibration_judge_membership_changed\");\n }\n}\n", "import { z } from \"zod\";\nimport { contentHash, type ImmutableAssetRef } from \"@openpond/harness\";\nimport { EnvironmentReleaseSchema, VerifierSetReleaseSchema, verifyEnvironmentRelease, verifyVerifierSetRelease } from \"@openpond/evals\";\nimport { assertTasksetRelease, TasksetReleaseSchema } from \"@openpond/evals/tasksets\";\nimport { assertBoundedTaskJson } from \"@openpond/evals/task-schema\";\nimport { ModelTasksetPackageSchema, validateModelTasksetPackage } from \"./model-taskset-derivation.js\";\nimport { taskBatchPackageMetadata } from \"@openpond/evals/learning\";\nimport { TasksetPackageLearningResourcesSchema, learningPackageContextFiles, validateTasksetLearningResources } from \"./taskset-package-learning.js\";\nimport { assertModelTasksetAuthoring } from \"./model-taskset-authoring-lineage.js\";\nimport { resolveTasksetPackageExecution } from \"./taskset-package-execution.js\";\nimport { MAX_TASKSET_PACKAGE_BYTES, TasksetPackageFileSchema, decodeTasksetPackageFile } from \"./taskset-package-files.js\";\nimport { assertTasksetCalibrationClosures } from \"./taskset-calibration-fixtures.js\";\nexport { MAX_TASKSET_PACKAGE_BYTES, TasksetPackageFileSchema, decodeTasksetPackageFile } from \"./taskset-package-files.js\";\nexport { resolveTasksetPackageExecution, createTasksetPackageExecutionFile } from \"./taskset-package-execution.js\";\n\nconst BoundModelResourcesSchema = ModelTasksetPackageSchema.omit({ taskset: true, executionResources: true });\nexport const TasksetPackageContentSchema = z.object({\n schemaVersion: z.literal(\"openpond.tasksetPackage.v1\"),\n taskset: TasksetReleaseSchema,\n environment: EnvironmentReleaseSchema,\n verifierSet: VerifierSetReleaseSchema,\n files: z.array(TasksetPackageFileSchema).max(10_000),\n modelResources: BoundModelResourcesSchema.optional(),\n learningResources: TasksetPackageLearningResourcesSchema.optional(),\n}).strict();\nexport const TasksetPackageSchema = TasksetPackageContentSchema.extend({ contentHash: z.string().regex(/^[a-f0-9]{64}$/) }).strict();\nexport type TasksetPackage = z.infer<typeof TasksetPackageSchema>;\n\n/** The selected binding belongs to the package's declared authoring graph. */\nexport function tasksetPackageRewardBinding(value: TasksetPackage) {\n return value.learningResources ? taskBatchPackageMetadata(value.taskset).binding : value.modelResources?.rewardBinding ?? null;\n}\n\n/** Instructions follow the admitted authoring graph. An ordinary package with\n * no instructions declares an empty prompt, never its display name. */\nexport function resolveTasksetPackageInstructions(value: Pick<TasksetPackage, \"taskset\" | \"modelResources\" | \"learningResources\">): string {\n if (value.learningResources) return taskBatchPackageMetadata(value.taskset).definition.instructions;\n if (value.modelResources) return value.modelResources.taskDefinition.instructions;\n const authoring = z.object({ instructions: z.string().max(20_000).optional() }).passthrough()\n .parse(value.taskset.metadata.ordinaryAuthoring ?? {});\n return authoring.instructions ?? \"\";\n}\n\n/** Admission verifies the complete declared dependency graph, not readiness or\n * permission to execute it. Hosts separately authorize the workspace/project. */\nexport function validateTasksetPackage(value: unknown): TasksetPackage {\n assertBoundedTaskJson(value, MAX_TASKSET_PACKAGE_BYTES);\n const result = TasksetPackageSchema.parse(value);\n const { contentHash: hash, ...content } = result;\n if (contentHash(content) !== hash) throw new Error(\"Taskset package content hash differs from its bytes.\");\n const { taskset, environment, verifierSet } = result;\n assertTasksetRelease(taskset);\n const authoring = assertModelTasksetAuthoring(taskset);\n if (authoring && (result.modelResources || result.learningResources)) throw new Error(\"Taskset package cannot declare competing authoring graphs.\");\n if (!verifyEnvironmentRelease(environment) || !verifyVerifierSetRelease(verifierSet)\n || !same(taskset.environmentRelease, { id: environment.id, contentHash: environment.contentHash })\n || !same(taskset.verifierSetRelease, { id: verifierSet.id, contentHash: verifierSet.contentHash })\n || !same(taskset.environment, environment.contract) || !same(taskset.graders, verifierSet.graders)) {\n throw new Error(\"Taskset package execution releases do not match its Taskset.\");\n }\n const files = new Map<string, z.infer<typeof TasksetPackageFileSchema>>();\n for (const file of result.files) {\n if (files.has(file.asset.id)) throw new Error(`Duplicate Taskset asset identity: ${file.asset.id}.`);\n decodeTasksetPackageFile(file);\n files.set(file.asset.id, file);\n }\n function requireAsset(ref: ImmutableAssetRef) {\n const file = files.get(ref.id);\n if (!file || !same(file.asset, ref)) throw new Error(`Taskset package asset is missing or mismatched: ${ref.id}.`);\n }\n for (const task of taskset.tasks) {\n for (const asset of task.artifactRefs) requireAsset(asset);\n for (const output of task.requiredOutputs ?? []) if (output.schemaRef) requireAsset(output.schemaRef);\n if (task.privilegedContextRef && files.get(task.privilegedContextRef)?.asset.visibility !== \"host_private\") {\n throw new Error(`Taskset package private context is missing: ${task.id}.`);\n }\n }\n for (const ref of [environment.actionSchemaRef, environment.observationSchemaRef, environment.stateSchemaRef]) if (ref) requireAsset(ref);\n for (const grader of taskset.graders) {\n const ref = \"verifierRef\" in grader ? grader.verifierRef : \"rubricRef\" in grader ? grader.rubricRef : null;\n if (ref) {\n requireAsset(ref);\n if (ref.visibility === \"policy\") throw new Error(`Taskset grader asset must be private: ${ref.id}.`);\n }\n }\n if (taskset.metrics?.customAggregator) {\n const aggregator = taskset.metrics.customAggregator;\n const modules = result.files.filter(file => file.asset.path === aggregator.module);\n if (modules.length !== 1 || modules[0]!.asset.contentHash !== aggregator.contentHash || modules[0]!.asset.sizeBytes > 524_288 || modules[0]!.asset.visibility === \"policy\") {\n throw new Error(\"Taskset metric module is missing or mismatched, public, or exceeds the source limit.\");\n }\n }\n for (const declarations of [taskset.metadata.environmentResources, environment.metadata.resources]) {\n if (declarations === undefined) continue;\n for (const resource of z.array(z.object({ path: z.string().min(1) }).passthrough()).parse(declarations)) {\n if (!result.files.some(file => file.asset.path === resource.path)) throw new Error(`Taskset environment resource is missing: ${resource.path}.`);\n }\n }\n if (result.learningResources) {\n if (result.modelResources) throw new Error(\"Taskset package cannot declare competing authoring graphs.\");\n const learning = validateTasksetLearningResources(taskset, result.learningResources);\n for (const expected of learningPackageContextFiles(learning)) {\n if (!same(files.get(expected.asset.id), expected)) throw new Error(\"Taskset private context differs from its reviewed evidence.\");\n }\n for (const asset of learning.assets) requireAsset(asset.asset);\n } else if (result.modelResources) {\n const model = validateModelTasksetPackage({ ...result.modelResources, taskset, executionResources: { environment, verifierSet } });\n for (const asset of model.assets) requireAsset(asset.asset);\n } else if ([\"starter\", \"rewardBinding\", \"rewardExecution\", \"modelTasksetDerivation\", \"learning\"].some(key => taskset.metadata[key] !== undefined)) {\n throw new Error(\"Bound Taskset publication requires its complete model resources.\");\n }\n resolveTasksetPackageExecution(result);\n resolveTasksetPackageInstructions(result);\n assertTasksetCalibrationClosures(result);\n return result;\n}\n\nexport function createTasksetPackage(value: z.input<typeof TasksetPackageContentSchema>): TasksetPackage {\n assertBoundedTaskJson(value, MAX_TASKSET_PACKAGE_BYTES);\n const content = TasksetPackageContentSchema.parse(value);\n return validateTasksetPackage({ ...content, contentHash: contentHash(content) });\n}\n\nfunction same(left: unknown, right: unknown): boolean {\n return contentHash({ value: left }) === contentHash({ value: right });\n}\n", "import { contentHash } from \"@openpond/harness\";\nimport { sameLearningRef } from \"@openpond/evals/learning\";\nimport { ModelTasksetAuthoringSchema } from \"./model-taskset-authoring-contracts.js\";\n\nexport function modelAuthoredTasksetId(lineage: { owner: unknown; root: unknown }) {\n return `model-authored-taskset-${contentHash({ owner: lineage.owner, root: lineage.root })}`;\n}\n\n/** Ownership metadata must describe this exact immutable revision. */\nexport function assertModelTasksetAuthoring(taskset: { id: string; revision: number; metadata: Record<string, unknown> }) {\n if (taskset.metadata.modelTasksetAuthoring === undefined) return null;\n const lineage = ModelTasksetAuthoringSchema.parse(taskset.metadata.modelTasksetAuthoring);\n if (taskset.id !== modelAuthoredTasksetId(lineage)\n || (taskset.revision === 1 ? !sameLearningRef(lineage.parent, lineage.root)\n : lineage.parent.id !== taskset.id || lineage.parent.revision !== taskset.revision - 1)) {\n throw new Error(\"Authored Taskset revision differs from its ownership lineage.\");\n }\n return lineage;\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA,SAAS,SAAS;AAClB,SAAS,iCAAiC;AAGnC,IAAM,kCAAkC,EAAE,OAAO;AAAA,EACtD,eAAe,EAAE,QAAQ,oCAAoC;AAAA,EAAG,MAAM,EAAE,QAAQ,oBAAoB;AAAA,EACpG,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAAG,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAAG,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EACvG,YAAY,EAAE,OAAO,EAAE,MAAM,gBAAgB;AAAA,EAAG,YAAY,EAAE,OAAO,EAAE,SAAS;AAAA,EAChF,iBAAiB,EAAE,KAAK,CAAC,WAAW,YAAY,UAAU,SAAS,CAAC;AAAA,EAAG,kBAAkB,EAAE,KAAK,CAAC,WAAW,UAAU,SAAS,CAAC;AAAA,EAChI,eAAe,EAAE,KAAK,CAAC,WAAW,UAAU,UAAU,SAAS,CAAC;AAAA,EAChE,QAAQ;AAAA,EAA2B,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAAG,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAC7G,mBAAmB,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAAG,YAAY,EAAE,KAAK,CAAC,QAAQ,cAAc,CAAC;AAAA,EAC1F,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAAG,SAAS,EAAE,QAAQ,qBAAqB;AAAA,EACjF,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;AACxD,CAAC,EAAE,OAAO;;;ACdV,SAAS,KAAAA,UAAS;AAElB,IAAM,WAAWA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AACjD,IAAM,kBAAkBA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC;AAC/C,IAAM,aAAaA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AACnD,IAAM,qBAAqBA,GACxB,OAAO,EACP,KAAK,EACL,IAAI,CAAC,EACL,IAAI,GAAK,EACT;AAAA,EACC,CAAC,UACC,CAAC,MAAM,WAAW,GAAG,KAClB,CAAC,MAAM,WAAW,IAAI,KACtB,CAAC,MAAM,MAAM,OAAO,EAAE,SAAS,IAAI;AAAA,EACxC;AACF;AAEK,IAAM,qBAAqBA,GAAE,KAAK;AAAA,EACvC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAEM,IAAM,6BAA6BA,GAAE,OAAO;AAAA,EACjD,MAAMA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EACtC,cAAcA,GAAE,KAAK;AAAA,IACnB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAAA,EACD,aAAaA,GAAE,KAAK;AAAA,IAClB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAAA,EACD,UAAUA,GAAE,QAAQ;AAAA,EACpB,QAAQA,GAAE,KAAK,CAAC,WAAW,cAAc,UAAU,CAAC;AACtD,CAAC;AAEM,IAAM,8BAA8BA,GAAE,OAAO;AAAA,EAClD,eAAeA,GAAE,QAAQ,mCAAmC;AAAA,EAC5D,QAAQA,GAAE,MAAM,0BAA0B,EAAE,IAAI,CAAC,EAAE,IAAI,GAAM;AAAA,EAC7D,YAAY;AACd,CAAC;AAEM,IAAM,wBAAwBA,GAAE,OAAO;AAAA,EAC5C,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,MAAM;AAAA,EACN,aAAa;AAAA,EACb,YAAY;AAAA,EACZ,WAAWA,GAAE,OAAO,EAAE,IAAI,EAAE,YAAY;AAAA,EACxC,UAAUA,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,EACpC,eAAeA,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAC3C,CAAC;AAEM,IAAM,gCAAgCA,GAAE,OAAO;AAAA,EACpD,eAAeA,GAAE,QAAQ,6BAA6B;AAAA,EACtD,IAAI;AAAA,EACJ,WAAW;AAAA,EACX,iBAAiBA,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,EAC3C,aAAa;AAAA,EACb,QAAQA,GAAE,QAAQ,SAAS;AAAA,EAC3B,QAAQ;AAAA,EACR,QAAQA,GAAE,MAAM,qBAAqB,EAAE,IAAI,CAAC,EAAE,IAAI,GAAO;AAAA,EACzD,UAAUA,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,EACpC,aAAaA,GAAE,OAAO,oBAAoBA,GAAE,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC;AAAA,EACxE,mBAAmBA,GAAE,MAAM,QAAQ,EAAE,IAAI,CAAC,EAAE,IAAI,GAAO;AAAA,EACvD,aAAa;AAAA,EACb,mBAAmB;AAAA,EACnB,WAAW;AACb,CAAC;AAEM,IAAM,+BAA+BA,GAAE,OAAO;AAAA,EACnD,eAAeA,GAAE,QAAQ,oCAAoC;AAAA,EAC7D,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,iBAAiBA,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,EAC3C,QAAQA,GAAE,QAAQ,SAAS;AAAA,EAC3B,UAAUA,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,EACpC,aAAaA,GAAE,OAAO,oBAAoBA,GAAE,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC;AAAA,EACxE,WAAWA,GAAE,OAAO,EAAE,IAAI,EAAE,YAAY;AAAA,EACxC,aAAa;AAAA,EACb,WAAWA,GAAE,QAAQ;AAAA,EACrB,mBAAmBA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK,EAAE,SAAS;AAAA,EAChE,WAAW;AACb,CAAC;AAEM,IAAM,2BAA2BA,GAAE,OAAO;AAAA,EAC/C,eAAeA,GAAE,QAAQ,gCAAgC;AAAA,EACzD,WAAW;AAAA,EACX,iBAAiBA,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,EAC3C,YAAY,SAAS,SAAS;AAAA,EAC9B,MAAMA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EACtC,QAAQA,GAAE,KAAK;AAAA,IACb;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAAA,EACD,aAAaA,GAAE,KAAK,CAAC,UAAU,SAAS,CAAC;AAAA,EACzC,UAAUA,GAAE,OAAO,EAAE,IAAI,EAAE,YAAY;AAAA,EACvC,aAAaA,GAAE,OAAO,oBAAoBA,GAAE,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC;AAAA,EACxE,WAAWA,GAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS;AAAA,EACnD,WAAWA,GAAE,QAAQ;AAAA,EACrB,mBAAmBA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK,EAAE,SAAS;AAAA,EAChE,WAAW;AAAA,EACX,WAAW;AACb,CAAC;AAEM,IAAM,+BAA+BA,GAAE,OAAO;AAAA,EACnD,eAAeA,GAAE,QAAQ,4BAA4B;AAAA,EACrD,WAAW;AAAA,EACX,UAAUA,GAAE,MAAM,wBAAwB;AAAA,EAC1C,aAAa;AACf,CAAC;AAEM,IAAM,qCAAqCA,GAAE,OAAO;AAAA,EACzD,eAAeA,GAAE,QAAQ,qCAAqC;AAAA,EAC9D,UAAU;AAAA,EACV,WAAW;AAAA,EACX,aAAaA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK;AAAA,EAC/C,sBAAsB;AAAA,EACtB,WAAWA,GAAE,QAAQ;AAAA,EACrB,mBAAmBA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK,EAAE,SAAS;AAAA,EAChE,YAAY,gBAAgB,SAAS;AAAA,EACrC,WAAW;AAAA,EACX,WAAW;AACb,CAAC;AAEM,IAAM,8BAA8BA,GAAE,OAAO;AAAA,EAClD,OAAO,mBAAmB,SAAS,EAAE,QAAQ,IAAI;AAAA,EACjD,QAAQA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK,EAAE,SAAS,EAAE,QAAQ,IAAI;AAAA,EACnE,OAAOA,GAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,EAAE,QAAQ,EAAE;AAAA,EAClD,SAASA,GAAE,MAAMA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,EAAE,QAAQ,CAAC,CAAC;AACzE,CAAC;AAEM,IAAM,uBAAuBA,GAAE,OAAO;AAAA,EAC3C,eAAeA,GAAE,QAAQ,4BAA4B;AAAA,EACrD,WAAW;AAAA,EACX,iBAAiBA,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS;AAAA,EAC3C,cAAc;AAAA,EACd,OAAO,mBAAmB,SAAS;AAAA,EACnC,MAAMA,GAAE,MAAMA,GAAE,OAAOA,GAAE,OAAO,GAAGA,GAAE,QAAQ,CAAC,CAAC,EAAE,IAAI,GAAG;AAAA,EACxD,YAAYA,GAAE,OAAO,EAAE,IAAI,GAAK,EAAE,SAAS;AAAA,EAC3C,WAAWA,GAAE,OAAO,EAAE,IAAI,EAAE,YAAY;AAAA,EACxC,cAAcA,GAAE,OAAO,EAAE,IAAI,EAAE,YAAY;AAC7C,CAAC;AAEM,IAAM,+BAA+BA,GAAE,OAAO;AAAA,EACnD,eAAeA,GAAE,QAAQ,oCAAoC;AAAA,EAC7D,kBAAkBA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK;AAAA,EACpD,WAAW;AACb,CAAC;AAEM,IAAM,2BAA2BA,GAAE,OAAO;AAAA,EAC/C,IAAI;AAAA,EACJ,OAAOA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EACvC,MAAMA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK;AAAA,EACxC,kBAAkBA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK;AAAA,EACpD,MAAMA,GAAE,KAAK,CAAC,SAAS,WAAW,aAAa,OAAO,CAAC;AAAA,EACvD,YAAYA,GAAE,QAAQ;AAAA,EACtB,SAASA,GAAE,QAAQ;AAAA,EACnB,UAAUA,GAAE,QAAQ;AAAA,EACpB,YAAYA,GAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS;AAAA,EACpD,WAAWA,GAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS;AACrD,CAAC;AAEM,IAAM,4BAA4BA,GAAE,OAAO;AAAA,EAChD,eAAeA,GAAE,QAAQ,iCAAiC;AAAA,EAC1D,UAAU;AAAA,EACV,cAAcA,GAAE,MAAM,wBAAwB;AAChD,CAAC;AAEM,IAAM,4CAA4CA,GAAE,OAAO;AAAA,EAChE,kBAAkBA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK;AACtD,CAAC;;;ACtMD,SAAS,KAAAC,UAAS;AAElB,IAAMC,YAAWD,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AACjD,IAAME,mBAAkBF,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC;AAC/C,IAAMG,cAAaH,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AACnD,IAAM,iBAAiBA,GAAE,OAAOA,GAAE,OAAO,GAAGA,GAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;AACnE,IAAM,iBAAiBA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAEhD,IAAM,kCAAkCA,GAAE,KAAK;AAAA,EACpD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAED,IAAM,kCAAkCA,GAAE,OAAO;AAAA,EAC/C,IAAIC;AAAA,EACJ,WAAWA;AAAA,EACX,OAAOD,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EACvC,YAAYG;AAAA,EACZ,YAAYD;AAAA,EACZ,iBAAiB;AAAA,EACjB,kBAAkBF,GAAE,KAAK,CAAC,WAAW,UAAU,SAAS,CAAC;AAAA,EACzD,eAAeA,GAAE,KAAK,CAAC,WAAW,UAAU,UAAU,SAAS,CAAC;AAAA,EAChE,UAAU;AACZ,CAAC;AAEM,IAAM,oCACX,gCAAgC,OAAO;AAAA,EACrC,eAAeA,GAAE,QAAQ,sCAAsC;AAAA,EAC/D,MAAMA,GAAE,QAAQ,aAAa;AAAA,EAC7B,cAAcA,GAAE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,EAAE,IAAI,GAAG;AAAA,EACnE,eAAeA,GAAE,OAAO,EAAE,IAAI,EAAE,IAAI,GAAK;AAAA,EACzC,UAAU;AAAA,EACV,eAAeA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAC/C,gBAAgBA,GAAE,MAAMA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK;AAAA,EAC3E,OAAOA,GAAE,QAAQ;AAAA,EACjB,SAASA,GAAE,QAAQ;AAAA,EACnB,iBAAiBA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,EAAE,SAAS;AAAA,EAC5D,kBAAkBA,GAAE,MAAMG,WAAU,EAAE,IAAI,CAAC,EAAE,IAAI,GAAO;AAC1D,CAAC;AAEI,IAAM,qCACX,gCAAgC,OAAO;AAAA,EACrC,eAAeH,GAAE,QAAQ,uCAAuC;AAAA,EAChE,MAAMA,GAAE,QAAQ,eAAe;AAAA,EAC/B,mBAAmBA,GAAE,MAAMA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK;AAAA,EAC9E,YAAYA,GAAE,MAAMA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK;AAAA,EACvE,kBAAkBA,GAAE,MAAMG,WAAU,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK;AAAA,EACtD,YAAYH,GAAE,OAAO,EAAE,IAAI,EAAE,YAAY;AAAA,EACzC,eAAeA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AACjD,CAAC;AAEI,IAAM,kCACX,gCAAgC,OAAO;AAAA,EACrC,eAAeA,GAAE,QAAQ,oCAAoC;AAAA,EAC7D,MAAMA,GAAE,QAAQ,WAAW;AAAA,EAC3B,aAAaC;AAAA,EACb,kBAAkBD,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAClD,MAAMA,GAAE,OAAO,EAAE,IAAI;AAAA,EACrB,eAAeG;AACjB,CAAC;AAEI,IAAM,sCAAsC,gCAAgC,OAAO;AAAA,EACxF,eAAeH,GAAE,QAAQ,wCAAwC;AAAA,EACjE,MAAMA,GAAE,QAAQ,gBAAgB;AAAA,EAChC,OAAOA,GAAE,OAAO,EAAE,IAAIC,WAAU,UAAUD,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,aAAaG,YAAW,CAAC,EAAE,OAAO;AAAA,EACzG,gBAAgBH,GAAE,OAAO,EAAE,IAAIC,WAAU,UAAUD,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS,GAAG,aAAaG,YAAW,CAAC,EAAE,OAAO;AAAA,EAClH,YAAYF;AACd,CAAC;AAEM,IAAM,iCAAiCD,GAAE,mBAAmB,QAAQ;AAAA,EACzE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;;;AC5ED,SAAS,KAAAI,UAAS;AAQX,IAAM,6BAA6BC,GACvC,OAAO;AAAA,EACN,eAAeA,GAAE,QAAQ,kCAAkC;AAAA,EAC3D,UAAU;AAAA,EACV,eAAeA,GACZ,OAAO,EACP,KAAK,EACL,IAAI,CAAC,EACL,IAAI,EAAE,EACN,MAAM,0BAA0B;AAAA,EACnC,aAAaA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK;AAAA,EAC/C,aAAaA,GAAE,OAAOA,GAAE,OAAO,GAAGA,GAAE,QAAQ,CAAC;AAAA,EAC7C,kBAAkB;AAAA,EAClB,cAAc;AAAA,EACd,oBAAoB;AAAA,EACpB,kBAAkB;AAAA,EAClB,uBAAuB;AAAA,EACvB,YAAYA,GAAE,KAAK,CAAC,QAAQ,OAAO,CAAC;AAAA,EACpC,gBAAgBA,GAAE,QAAQ;AAAA,EAC1B,WAAWA,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,IAAS;AAAA,EACpD,yBAAyBA,GACtB;AAAA,IACCA,GACG,OAAO;AAAA,MACN,UAAU;AAAA,MACV,QAAQA,GAAE,QAAQ,SAAS;AAAA,IAC7B,CAAC,EACA,OAAO;AAAA,EACZ,EACC,IAAI,EAAE,EACN,QAAQ,CAAC,CAAC;AACf,CAAC,EACA,OAAO;;;ACxCV,SAAS,KAAAC,UAAS;AAElB,SAAS,mCAAmC;AAC5C,SAAS,uBAAuB;AAMhC,IAAMC,YAAWC,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AACjD,IAAMC,mBAAkBD,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC;AAC/C,IAAME,cAAaF,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AACnD,IAAM,eAAeA,GAAE,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB;AAC7D,IAAM,uBAAuBA,GAAE,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B;AACjF,IAAMG,kBAAiBH,GAAE,OAAOA,GAAE,OAAO,GAAGA,GAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;AACnE,IAAM,mBAAmBD,UAAS,SAAS;AAE3C,SAAS,qBAAqB,OAAwB;AACpD,QAAM,aAAa,MAAM,KAAK,EAAE,WAAW,MAAM,GAAG;AACpD,MACE,CAAC,cACE,WAAW,WAAW,GAAG,KACzB,eAAe,OACf,eAAe,MAClB;AACA,WAAO;AAAA,EACT;AACA,SAAO,CAAC,WAAW,MAAM,GAAG,EAAE;AAAA,IAAK,CAAC,YAClC,CAAC,WAAW,YAAY,OAAO,YAAY;AAAA,EAC7C;AACF;AAEA,SAAS,aAAa,OAAwB;AAC5C,QAAM,aAAa,MAAM,KAAK;AAC9B,SACE,WAAW,SAAS,KACjB,eAAe,OACf,eAAe,QACf,CAAC,WAAW,SAAS,GAAG,KACxB,CAAC,WAAW,SAAS,IAAI,KACzB,CAAC,WAAW,SAAS,IAAI;AAEhC;AAEO,IAAM,qBAAqB;AAE3B,IAAM,uBAAuBC,GAAE,KAAK,CAAC,WAAW,WAAW,CAAC;AAE5D,IAAM,gCAAgCA,GAAE,OAAO;AAAA,EACpD,eAAeA,GAAE,QAAQ,8BAA8B;AAAA,EACvD,cAAcD;AAAA,EACd,WAAWA;AAAA,EACX,aAAa;AAAA,EACb,oBAAoBC,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK,EACnD,OAAO,sBAAsB,+CAA+C;AAAA,EAC/E,iBAAiB;AAAA,EACjB,iBAAiB;AAAA,EACjB,eAAeA,GAAE,KAAK;AAAA,IACpB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAAA,EACD,aAAaA,GAAE,KAAK,CAAC,QAAQ,kBAAkB,UAAU,CAAC;AAAA,EAC1D,QAAQA,GAAE,KAAK,CAAC,WAAW,UAAU,CAAC;AAAA,EACtC,UAAUG;AACZ,CAAC;AAEM,IAAM,2CAA2CH,GAAE,OAAO;AAAA,EAC/D,eAAeA,GAAE,QAAQ,gDAAgD;AAAA,EACzE,WAAWD;AAAA,EACX,aAAa;AAAA,EACb,aAAaE;AAAA,EACb,UAAUE;AACZ,CAAC;AAEM,IAAM,8BAA8BH,GAAE,OAAO;AAAA,EAClD,QAAQA,GAAE,KAAK,CAAC,WAAW,WAAW,UAAU,SAAS,CAAC;AAAA,EAC1D,OAAOA,GAAE,KAAK,CAAC,iBAAiB,kBAAkB,cAAc,CAAC;AAAA,EACjE,WAAW;AAAA,EACX,WAAWC,iBAAgB,SAAS;AAAA,EACpC,SAASD,GAAE,QAAQ,+BAA+B;AACpD,CAAC;AAEM,IAAM,0BAA0BA,GAAE,OAAO;AAAA,EAC9C,eAAeA,GAAE,QAAQ,4BAA4B;AAAA,EACrD,IAAID;AAAA,EACJ,WAAWA;AAAA,EACX,WAAWA;AAAA,EACX,SAASC,GAAE,MAAMD,SAAQ,EAAE,IAAI,GAAK,EAAE,QAAQ,CAAC,CAAC;AAAA,EAChD,aAAa;AAAA,EACb,YAAYG;AAAA,EACZ,YAAYH;AAAA,EACZ,OAAOC,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EACvC,YAAYC;AAAA,EACZ,SAAS;AAAA,EACT,iBAAiBD,GAAE,MAAMD,SAAQ,EAAE,IAAI,GAAG,EAAE,QAAQ,CAAC,CAAC;AAAA,EACtD,kBAAkBC,GAAE,KAAK,CAAC,WAAW,UAAU,SAAS,CAAC;AAAA,EACzD,eAAeA,GAAE,KAAK,CAAC,WAAW,UAAU,UAAU,SAAS,CAAC;AAAA,EAChE,iBAAiBA,GAAE,KAAK,CAAC,WAAW,YAAY,UAAU,SAAS,CAAC;AAAA,EACpE,UAAUG;AACZ,CAAC;AAEM,IAAM,yBAAyBH,GAAE,MAAM;AAAA,EAC5C;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAEM,IAAM,2BAA2BA,GAAE,OAAO;AAAA,EAC/C,qBAAqBA,GAAE,MAAMD,SAAQ,EAAE,IAAI,GAAK,EAAE,QAAQ,CAAC,CAAC;AAAA,EAC5D,kBAAkBC,GAAE,MAAMD,SAAQ,EAAE,IAAI,GAAK,EAAE,QAAQ,CAAC,CAAC;AAAA,EACzD,kBAAkBC,GAAE,MAAMD,SAAQ,EAAE,IAAI,GAAG,EAAE,QAAQ,CAAC,CAAC;AAAA,EACvD,oBAAoBC,GAAE,MAAMD,SAAQ,EAAE,IAAI,GAAG,EAAE,QAAQ,CAAC,CAAC;AAC3D,CAAC;AAEM,IAAM,qBAAqBC,GAAE,OAAO;AAAA,EACzC,IAAID;AAAA,EACJ,aAAaA;AAAA,EACb,aAAaC,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK,EAC5C,OAAO,sBAAsB,oDAAoD;AAAA,EACpF,UAAUA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,EACvC,OAAO,cAAc,yDAAyD;AAAA,EACjF,WAAWA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAC3C,QAAQ;AAAA,EACR,WAAWA,GAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,IAAW;AAAA,EACzD,OAAO;AAAA,EACP,UAAUG;AACZ,CAAC;AAEM,IAAM,2BAA2BH,GAAE,OAAO;AAAA,EAC/C,MAAMA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK,EACrC,OAAO,sBAAsB,mEAAmE;AAAA,EACnG,WAAWA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAC3C,WAAWD,UAAS,SAAS,EAAE,SAAS;AAAA,EACxC,UAAUC,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,GAAU,EAAE,SAAS;AAAA,EAC/D,UAAUG;AACZ,CAAC;AAEM,IAAM,uBAAuBH,GAAE,OAAO;AAAA,EAC3C,eAAeA,GAAE,QAAQ,sBAAsB;AAAA,EAC/C,IAAID;AAAA,EACJ,YAAYA;AAAA,EACZ,OAAO;AAAA,EACP,OAAOC,GAAE,OAAOA,GAAE,OAAO,GAAGA,GAAE,QAAQ,CAAC;AAAA,EACvC,gBAAgBA,GAAE,OAAOA,GAAE,OAAO,GAAGA,GAAE,QAAQ,CAAC,EAAE,SAAS;AAAA,EAC3D,sBAAsBA,GAAE,OAAOA,GAAE,OAAO,GAAGA,GAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;AAAA,EAClE,sBAAsB;AAAA,EACtB,YAAYA,GAAE,MAAMD,SAAQ,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAC5C,QAAQC,GAAE,MAAM,kBAAkB,EAAE,IAAI,GAAK,EAAE,SAAS;AAAA,EACxD,cAAcA,GAAE,MAAMD,SAAQ,EAAE,IAAI,GAAK,EAAE,SAAS;AAAA,EACpD,iBAAiBC,GAAE,MAAM,wBAAwB,EAAE,IAAI,GAAG,EAAE,SAAS;AAAA,EACrE,MAAMA,GAAE,MAAMD,SAAQ,EAAE,IAAI,GAAG,EAAE,QAAQ,CAAC,CAAC;AAAA,EAC3C,UAAUI;AACZ,CAAC;AAEM,IAAM,mCAAmCH,GAAE,OAAO;AAAA,EACvD,IAAID;AAAA,EACJ,MAAMC,GAAE,KAAK,CAAC,QAAQ,WAAW,iBAAiB,aAAa,CAAC;AAAA,EAChE,MAAMA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK,EACrC,OAAO,sBAAsB,kDAAkD;AAAA,EAClF,WAAWA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,EAAE,SAAS,EAAE,SAAS;AAAA,EACjE,YAAYA,GAAE,KAAK,CAAC,kBAAkB,iBAAiB,YAAY,CAAC;AAAA,EACpE,UAAUA,GAAE,QAAQ;AAAA,EACpB,UAAUG;AACZ,CAAC;AAED,IAAM,2BAA2BH,GAAE,OAAO;AAAA,EACxC,IAAID;AAAA,EACJ,QAAQ;AAAA,EACR,YAAYC,GAAE,MAAMD,SAAQ,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EAC5C,aAAaA;AAAA,EACb,UAAUC,GAAE,QAAQ;AAAA,EACpB,YAAYA,GAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC;AAAA,EACnC,UAAUG;AACZ,CAAC;AAEM,IAAM,4BAA4B,yBAAyB,OAAO;AAAA,EACvE,MAAMH,GAAE,QAAQ,eAAe;AAAA,EAC/B,QAAQA,GAAE,OAAO,EAAE,IAAI,GAAO,EAAE,SAAS,EAAE,QAAQ,IAAI;AAAA,EACvD,UAAUA,GAAE,OAAO,EAAE,IAAI,GAAO,EAAE,SAAS,EAAE,QAAQ,IAAI;AAC3D,CAAC;AAEM,IAAM,yBAAyB,yBAAyB,OAAO;AAAA,EACpE,MAAMA,GAAE,QAAQ,YAAY;AAAA,EAC5B,QAAQA,GAAE,OAAO,EAAE,IAAI,GAAO;AAAA,EAC9B,QAAQA,GAAE,OAAO,EAAE,IAAI,GAAO;AAAA,EAC9B,UAAUA,GAAE,OAAO,EAAE,IAAI,GAAO;AAAA,EAChC,WAAWA,GAAE,OAAO,EAAE,IAAI,GAAO,EAAE,SAAS,EAAE,QAAQ,IAAI;AAC5D,CAAC;AAEM,IAAM,yBAAyB,yBAAyB,OAAO;AAAA,EACpE,MAAMA,GAAE,QAAQ,YAAY;AAAA,EAC5B,UAAUA,GAAE,OAAO,EAAE,IAAI,GAAO;AAAA,EAChC,WAAWA,GAAE,OAAO,EAAE,IAAI,GAAO;AAAA,EACjC,WAAWA,GAAE,OAAO,EAAE,IAAI,GAAO,EAAE,SAAS,EAAE,QAAQ,IAAI;AAC5D,CAAC;AAEM,IAAM,uBAAuB,yBAAyB,OAAO;AAAA,EAClE,MAAMA,GAAE,QAAQ,UAAU;AAAA,EAC1B,UAAUA,GAAE,OAAO,EAAE,IAAI,GAAO;AAAA,EAChC,UAAUA,GAAE,KAAK,CAAC,YAAY,YAAY,SAAS,SAAS,CAAC;AAC/D,CAAC;AAEM,IAAM,qBAAqB,yBAAyB,OAAO;AAAA,EAChE,MAAMA,GAAE,QAAQ,QAAQ;AAAA,EACxB,MAAMA,GAAE,OAAO,EAAE,IAAI,GAAO;AAAA,EAC5B,OAAOA,GAAE,MAAMA,GAAE,OAAO;AAAA,IACtB,IAAID;AAAA,IACJ,QAAQC,GAAE,OAAO,EAAE,OAAO;AAAA,IAC1B,WAAWA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAO;AAAA,EACjD,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK;AAAA,EACpB,iBAAiBA,GAAE,OAAO,EAAE,OAAO;AAAA,EACnC,YAAYA,GAAE,QAAQ;AACxB,CAAC;AAEM,IAAM,oBAAoB,yBAAyB,OAAO;AAAA,EAC/D,MAAMA,GAAE,QAAQ,OAAO;AAAA,EACvB,WAAWA,GAAE,QAAQ,QAAQ;AAAA,EAC7B,MAAMA,GAAE,OAAO,EAAE,IAAI,GAAO;AAAA,EAC5B,UAAUA,GAAE,MAAMA,GAAE,OAAO;AAAA,IACzB,IAAID;AAAA,IACJ,OAAOC,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,IACvC,aAAaA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAO;AAAA,EACnD,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK;AAAA,EACpB,qBAAqBA,GAAE,OAAO;AAAA,IAC5B,UAAUA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAO;AAAA,IAC9C,UAAUA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAO;AAAA,IAC9C,UAAUA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAO;AAAA,EAChD,CAAC;AACH,CAAC;AAEM,IAAM,0BAA0BA,GAAE,mBAAmB,QAAQ;AAAA,EAClE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAEM,IAAM,gCAAgCA,GAAE,OAAO;AAAA,EACpD,gBAAgBA,GAAE,MAAM,yBAAyB,EAAE,IAAI,GAAO,EAAE,QAAQ,CAAC,CAAC;AAAA,EAC1E,aAAaA,GAAE,MAAM,sBAAsB,EAAE,IAAI,GAAO,EAAE,QAAQ,CAAC,CAAC;AAAA,EACpE,aAAaA,GAAE,MAAM,sBAAsB,EAAE,IAAI,GAAO,EAAE,QAAQ,CAAC,CAAC;AAAA,EACpE,UAAUA,GAAE,MAAM,oBAAoB,EAAE,IAAI,GAAO,EAAE,QAAQ,CAAC,CAAC;AAAA,EAC/D,SAASA,GAAE,MAAM,kBAAkB,EAAE,IAAI,GAAO,EAAE,QAAQ,CAAC,CAAC;AAAA,EAC5D,QAAQA,GAAE,MAAM,iBAAiB,EAAE,IAAI,GAAO,EAAE,QAAQ,CAAC,CAAC;AAC5D,CAAC;AAEM,IAAM,mCAAmCA,GAAE,OAAO;AAAA,EACvD,iBAAiBA,GAAE,QAAQ,6BAA6B;AAAA,EACxD,MAAMA,GAAE,KAAK,CAAC,QAAQ,SAAS,WAAW,oBAAoB,MAAM,CAAC;AAAA,EACrE,YAAYA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK;AAAA,EAC9C,UAAUA,GAAE,QAAQ;AAAA,EACpB,oBAAoBA,GAAE,QAAQ;AAAA,EAC9B,WAAWA,GAAE,MAAMD,SAAQ,EAAE,IAAI,GAAG,EAAE,QAAQ,CAAC,CAAC;AAAA,EAChD,gBAAgBC,GAAE,MAAM,0BAA0B,EAAE,IAAI,GAAG,EAAE,SAAS;AAAA,EACtE,WAAWA,GAAE,MAAMA,GAAE,KAAK,CAAC,UAAU,SAAS,QAAQ,SAAS,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC;AAAA,EACjF,kBAAkBA,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,IAAS;AAAA,EAC3D,eAAeA,GAAE,KAAK,CAAC,QAAQ,sBAAsB,iBAAiB,CAAC;AAAA,EACvE,WAAWA,GAAE,MAAM,gCAAgC,EAAE,IAAI,GAAM,EAAE,SAAS;AAAA,EAC1E,UAAUG;AACZ,CAAC;AAEM,IAAM,kCAAkCH,GAAE,OAAO;AAAA,EACtD,eAAeA,GAAE,QAAQ,iCAAiC;AAAA,EAC1D,UAAUA,GAAE,KAAK,CAAC,QAAQ,gBAAgB,eAAe,gBAAgB,CAAC;AAAA,EAC1E,kBAAkBA,GAAE,MAAMA,GAAE,KAAK,CAAC,iBAAiB,cAAc,cAAc,YAAY,UAAU,OAAO,CAAC,CAAC;AAAA,EAC9G,mBAAmBA,GAAE,MAAMA,GAAE,KAAK,CAAC,QAAQ,aAAa,OAAO,OAAO,QAAQ,OAAO,QAAQ,OAAO,QAAQ,MAAM,CAAC,CAAC;AAAA,EACpH,aAAaA,GAAE,MAAMA,GAAE,KAAK,CAAC,QAAQ,SAAS,iBAAiB,eAAe,OAAO,CAAC,CAAC;AAAA,EACvF,eAAeA,GAAE,QAAQ;AAAA,EACzB,eAAeA,GAAE,QAAQ;AAAA,EACzB,2BAA2BA,GAAE,QAAQ;AAAA,EACrC,uBAAuBA,GAAE,MAAMA,GAAE,KAAK,CAAC,SAAS,UAAU,aAAa,iBAAiB,CAAC,CAAC;AAAA,EAC1F,YAAYA,GAAE,QAAQ;AAAA,EACtB,qBAAqBA,GAAE,MAAMA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC9E,CAAC;AAED,IAAM,mBAAmBA,GAAE,OAAO;AAAA,EAChC,IAAID;AAAA,EACJ,SAASC,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EACzC,OAAOA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EACvC,QAAQA,GAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK,EAAE,QAAQ,CAAC;AAAA,EAC9C,UAAUA,GAAE,QAAQ,EAAE,QAAQ,KAAK;AAAA,EACnC,gBAAgBA,GAAE,QAAQ,EAAE,QAAQ,KAAK;AAAA,EACzC,YAAYA,GAAE,QAAQ,EAAE,QAAQ,KAAK;AAAA,EACrC,UAAUG;AACZ,CAAC;AAEM,IAAM,gCAAgC,iBAAiB,OAAO;AAAA,EACnE,MAAMH,GAAE,KAAK,CAAC,WAAW,UAAU,QAAQ,QAAQ,QAAQ,iBAAiB,OAAO,CAAC;AAAA,EACpF,QAAQA,GAAE,OAAOA,GAAE,OAAO,GAAGA,GAAE,QAAQ,CAAC;AAC1C,CAAC;AAEM,IAAM,yBAAyB,iBAAiB,OAAO;AAAA,EAC5D,MAAMA,GAAE,QAAQ,aAAa;AAAA,EAC7B,QAAQA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAM;AAAA,EAC3C,OAAO;AAAA,EACP,wBAAwBA,GAAE,MAAMD,SAAQ,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EACxD,mBAAmBC,GAAE,KAAK,CAAC,WAAW,UAAU,QAAQ,CAAC;AAAA,EACzD,aAAaA,GAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC;AACjD,CAAC;AAEM,IAAM,wBAAwB,iBAAiB,OAAO;AAAA,EAC3D,MAAMA,GAAE,QAAQ,OAAO;AAAA,EACvB,MAAM,gBAAgB,SAAS;AAAA,EAC/B,QAAQA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAM;AAAA,EAC3C,cAAcA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAChD,CAAC;AAEM,IAAM,iCAAiC,iBAAiB,OAAO;AAAA,EACpE,MAAMA,GAAE,QAAQ,iBAAiB;AAAA,EACjC,SAAS,4BAA4B,SAAS;AAAA,EAC9C,QAAQA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAK,EACvC,OAAO,sBAAsB,wDAAwD;AAAA,EACxF,YAAY;AAAA,EACZ,WAAWA,GAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,GAAO;AAAA,EAClD,eAAeA,GAAE,QAAQ,MAAM;AACjC,CAAC;AAEM,IAAM,mBAAmBA,GAAE,MAAM;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAEM,IAAM,2BAA2BA,GAAE,KAAK;AAAA,EAC7C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAEM,IAAM,sBAAsBA,GAAE,OAAO;AAAA,EAC1C,IAAID;AAAA,EACJ,QAAQA;AAAA,EACR,OAAO;AAAA,EACP,QAAQC,GAAE,OAAOA,GAAE,OAAO,GAAGA,GAAE,QAAQ,CAAC;AAAA,EACxC,qBAAqBA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAM,EAAE,SAAS;AAAA,EACnE,gBAAgBA,GAAE,QAAQ;AAAA,EAC1B,wBAAwBA,GAAE,QAAQ;AAAA,EAClC,UAAUG;AACZ,CAAC;;;AC1VD,SAAS,KAAAC,UAAS;AAClB,SAAS,0BAA0B,gCAAgC;AACnE,SAAS,uCAAuC,6CAA6C;AAC7F,SAAS,yBAAyB,aAAa,qBAAqB,+BAAuD;AAC3H,SAAS,6BAA6B;AAItC;AAAA,EACE;AAAA,EACA;AAAA,OAEK;AAEP,IAAMC,cAAaC,GAAE,OAAO,EAAE,MAAM,gBAAgB;AAC7C,IAAM,uCAAwD,uBAAMA,GAAE,OAAO;AAAA,EAClF,eAAeA,GAAE,QAAQ,0CAA0C;AAAA,EAAG,QAAQA,GAAE,OAAO;AAAA,EACvF,QAAQA,GAAE,KAAK,CAAC,aAAa,oBAAoB,aAAa,aAAa,kBAAkB,qBAAqB,CAAC;AAAA,EACnH,QAAQA,GAAE,OAAO,EAAE,SAAS;AAAA,EAAG,WAAWA,GAAE,QAAQ;AAAA,EAAG,4BAA4BA,GAAE,QAAQ;AAAA,EAC7F,UAAUA,GAAE,OAAO,EAAE,YAAY,gCAAgC,WAAWD,aAAY,MAAMC,GAAE,OAAO,EAAE,IAAI,GAAG,kBAAkBD,aAAY,gBAAgBA,aAAY,OAAOC,GAAE,OAAOA,GAAE,OAAO,GAAGA,GAAE,QAAQ,CAAC,GAAG,QAAQA,GAAE,MAAMA,GAAE,OAAOA,GAAE,OAAO,GAAGA,GAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS;AAAA,EAC5R,UAAUA,GAAE,MAAMA,GAAE,QAAQ,CAAC;AAAA,EAAG,OAAOA,GAAE,OAAO,EAAE,SAAS;AAAA,EAAG,aAAaD;AAC7E,CAAC,EAAE,OAAO,GAAG;AAIN,SAAS,qCAAqC,OAAgB,SAAuI;AAC1M,wBAAsB,OAAO,QAAU;AACvC,QAAM,SAAS,qCAAqC,MAAM,KAAK;AAC/D,QAAM,EAAE,aAAAE,cAAa,GAAG,QAAQ,IAAI;AACpC,MAAI,oBAAoB,OAAO,EAAE,gBAAgBA,gBAAe,OAAO,WAAW,QAAQ,UAAW,OAAO,aAC1G,CAAC,MAAM,OAAO,SAAS,YAAY,QAAQ,UAAU,KAAK,OAAO,SAAS,cAAc,oBAAoB,QAAQ,KAAK,EAAE,eAAe,OAAO,SAAS,SAAS,QAAQ,QAAQ,OAAO,SAAS,mBAAmB,oBAAoB,OAAO,SAAS,KAAK,EAAE,aAC/P,OAAM,IAAI,MAAM,+EAA+E;AACnG,SAAO;AACT;AAEO,IAAM,8BAA8BD,GAAE,OAAO;AAAA,EAClD,aAAa;AAAA,EACb,aAAa;AAAA,EACb,YAAY;AACd,CAAC,EAAE,OAAO;AAEH,IAAM,sCAAsCA,GAAE,OAAO;AAAA,EAC1D,SAASA,GAAE,MAAMA,GAAE,OAAO,EAAE,MAAMA,GAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,WAAWA,GAAE,OAAOA,GAAE,OAAO,GAAGA,GAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,IAAI,GAAK;AAClI,CAAC,EAAE,OAAO;AAIH,SAAS,6BAA6B,SAAkG;AAC7I,MAAI,CAAC,QAAQ,sBAAsB,CAAC,QAAQ,mBAAoB,OAAM,IAAI,MAAM,mDAAmD;AACnI,SAAO,qBAAqB,oBAAoB,EAAE,aAAa,QAAQ,oBAAoB,WAAW,QAAQ,mBAAmB,CAAC,EAAE,WAAW;AACjJ;AAIO,SAAS,iCAAiC,OAAiD;AAChG,QAAM,YAAY,4BAA4B,MAAM,KAAK;AACzD,2BAAyB,SAAS;AAClC,QAAM,KAAK,6BAA6B,EAAE,oBAAoB,EAAE,IAAI,UAAU,YAAY,IAAI,aAAa,UAAU,YAAY,YAAY,GAAG,oBAAoB,EAAE,IAAI,UAAU,YAAY,IAAI,aAAa,UAAU,YAAY,YAAY,EAAE,CAAC;AACtP,QAAM,YAAY,wBAAwB,EAAE,MAAM,cAAc,SAAS,GAAG,MAAM,8BAA8B,WAAW,oBAAoB,YAAY,eAAe,CAAC;AAC3K,QAAM,EAAE,aAAa,OAAO,GAAG,QAAQ,IAAI;AAC3C,SAAO,oBAAoB,EAAE,GAAG,SAAS,IAAI,OAAO,EAAE,GAAG,QAAQ,OAAO,GAAG,EAAE,CAAC;AAChF;AAIO,SAAS,kCAAkC,SAAuC,OAA0B,QAAoD;AACrK,MAAI,MAAM,OAAO,6BAA6B,OAAO,KAAK,MAAM,MAAM,eAAe,kBAAkB,MAAM,MAAM,cAAc,mBAAoB,OAAM,IAAI,MAAM,8DAA8D;AACnO,QAAM,YAAY,4BAA4B,MAAM,KAAK,MAAM,wBAAwB,OAAO,MAAM,KAAK,CAAC,CAAC;AAC3G,gCAA8B,WAAW,SAAS,MAAM;AACxD,SAAO;AACT;AAEA,SAAS,MAAM,MAAe,OAAyB;AACrD,SAAO,oBAAoB,EAAE,OAAO,KAAK,CAAC,EAAE,gBAAgB,oBAAoB,EAAE,OAAO,MAAM,CAAC,EAAE;AACpG;AAEA,SAAS,yBAAyB,WAAwC;AACxE,wCAAsC,UAAU,UAAU;AAC1D,aAAW,YAAY,CAAC,UAAU,aAAa,UAAU,WAAW,GAAG;AACrE,UAAM,EAAE,aAAAC,cAAa,GAAG,QAAQ,IAAI;AACpC,QAAI,oBAAoB,OAAO,EAAE,gBAAgBA,aAAa,OAAM,IAAI,MAAM,gDAAgD,SAAS,EAAE,GAAG;AAAA,EAC9I;AACA,MAAI,CAAC,MAAM,UAAU,YAAY,SAAS,uBAAuB,YAAY,UAAU,UAAU,CAAC,EAAG,OAAM,IAAI,MAAM,oEAAoE;AAC3L;AAGO,SAAS,8BACd,WACA,SACA,QACM;AACN,MAAI,CAAC,WAAW;AACd,QAAI,QAAQ,YAAY,eAAe,qCAAsC,OAAM,IAAI,MAAM,qDAAqD;AAClJ;AAAA,EACF;AACA,QAAM,EAAE,aAAa,aAAa,WAAW,IAAI;AACjD,2BAAyB,SAAS;AAClC,MAAI,CAAC,MAAM,QAAQ,oBAAoB,EAAE,IAAI,YAAY,IAAI,aAAa,YAAY,YAAY,CAAC,KAC/F,CAAC,MAAM,QAAQ,oBAAoB,EAAE,IAAI,YAAY,IAAI,aAAa,YAAY,YAAY,CAAC,KAC/F,CAAC,MAAM,YAAY,UAAU,QAAQ,WAAW,KAAK,CAAC,MAAM,YAAY,SAAS,QAAQ,OAAO,KAChG,CAAC,MAAM,QAAQ,OAAO,WAAW,KAAK,KAAK,CAAC,MAAM,YAAY,SAAS,uBAAuB,YAAY,UAAU,CAAC,GAAG;AAC1H,UAAM,IAAI,MAAM,oEAAoE;AAAA,EACtF;AACA,QAAM,WAAW,YAAY;AAC7B,MAAI,SAAS,eAAe,wCAAwC,SAAS,SAAS,WAClF,CAAC,SAAS,YAAY,CAAC,SAAS,sBAAsB,SAAS,kBAAkB,UACjF,IAAI,IAAI,SAAS,SAAS,EAAE,SAAS,KAAK,QAAQ,aAAa,UAAU,QAAQ,OAAO,mBAAmB,QAAQ;AACrH,UAAM,IAAI,MAAM,wEAAwE;AAAA,EAC1F;AACA,aAAW,aAAa,CAAC,WAAW,QAAQ,YAAY,iBAAiB,YAAY,sBAAsB,YAAY,cAAc,GAAG;AACtI,QAAI,CAAC,UAAW;AAChB,UAAM,QAAQ,OAAO,KAAK,CAAAC,WAASA,OAAM,OAAO,UAAU,EAAE;AAC5D,QAAI,CAAC,MAAO,OAAM,IAAI,MAAM,yCAAyC,UAAU,EAAE,GAAG;AACpF,4BAAwB,OAAO,SAAS;AAAA,EAC1C;AACA,aAAW,QAAQ,QAAQ,OAAO;AAChC,UAAM,QAAQ,OAAO,KAAK,CAAAA,WAASA,OAAM,OAAO,KAAK,oBAAoB;AACzE,QAAI,CAAC,SAAS,MAAM,MAAM,eAAe,kBAAkB,MAAM,MAAM,cAAc,oBAAoB;AACvG,YAAM,IAAI,MAAM,6CAA6C,KAAK,EAAE,GAAG;AAAA,IACzE;AACA,UAAM,QAAiB,KAAK,MAAM,wBAAwB,OAAO,MAAM,KAAK,CAAC;AAC7E,QAAI,CAAC,SAAS,OAAO,UAAU,YAAY,MAAM,QAAQ,KAAK,EAAG,OAAM,IAAI,MAAM,gDAAgD,KAAK,EAAE,GAAG;AAC3I,0BAAsB,OAAO,WAAW,aAAa;AAAA,EACvD;AACF;;;AC5HA,SAAS,KAAAC,UAAS;AAClB,SAAS,4BAAAC,2BAA0B,4BAAAC,2BAA0B,0BAA0B,gCAAgC;AACvH,SAAS,2BAAAC,0BAAyB,uBAAAC,sBAAqB,2BAAAC,gCAAuD;AAIvG,IAAM,uCAAuCC,GAAE,OAAO,EAAE,aAAaC,2BAA0B,aAAaC,0BAAyB,CAAC,EAAE,OAAO;AAK/I,SAAS,sCAAsC,SAA6E;AACjI,MAAI,CAAC,QAAQ,sBAAsB,CAAC,QAAQ,mBAAoB,OAAM,IAAI,MAAM,2CAA2C;AAC3H,SAAO,qBAAqBC,qBAAoB,EAAE,aAAa,QAAQ,oBAAoB,WAAW,QAAQ,mBAAmB,CAAC,EAAE,WAAW;AACjJ;AAEO,SAAS,0CAA0C,OAAqC;AAC7F,QAAM,YAAY,qCAAqC,MAAM,EAAE,aAAa,MAAM,aAAa,aAAa,MAAM,YAAY,CAAC;AAC/H,kBAAgB,SAAS;AACzB,QAAM,KAAK,sCAAsC,EAAE,oBAAoB,EAAE,IAAI,UAAU,YAAY,IAAI,aAAa,UAAU,YAAY,YAAY,GAAG,oBAAoB,EAAE,IAAI,UAAU,YAAY,IAAI,aAAa,UAAU,YAAY,YAAY,EAAE,CAAC;AAC/P,QAAM,EAAE,aAAa,OAAO,GAAG,MAAM,IAAIC,yBAAwB,EAAE,MAAM,cAAc,SAAS,GAAG,MAAM,8BAA8B,WAAW,oBAAoB,YAAY,eAAe,CAAC;AAClM,SAAOD,qBAAoB,EAAE,GAAG,OAAO,IAAI,OAAO,EAAE,GAAG,MAAM,OAAO,GAAG,EAAE,CAAC;AAC5E;AAGO,SAAS,2CAA2C,SAAkB,OAAqC;AAChH,MAAI,MAAM,OAAO,sCAAsC,OAAO,KAAK,MAAM,MAAM,eAAe,kBAAkB,MAAM,MAAM,cAAc,mBAAoB,OAAM,IAAI,MAAM,gEAAgE;AAC9O,QAAM,YAAY,qCAAqC,MAAM,KAAK,MAAME,yBAAwB,OAAO,MAAM,KAAK,CAAC,CAAC;AACpH,kBAAgB,SAAS;AACzB,MAAI,MAAM,OAAO,0CAA0C,SAAS,EAAE,MAAM,cAAc,QAAQ,WAAW,MAAM,cAAc,UAAU,YAAY,QAAQ,KAAK,cAAc,QAAQ,OAAO,MAAM,cAAc,UAAU,YAAY,OAAO,EAAG,OAAM,IAAI,MAAM,+CAA+C;AACpT,SAAO;AACT;AAEA,SAAS,gBAAgB,WAA4B;AACnD,MAAI,CAAC,yBAAyB,UAAU,WAAW,KAAK,CAAC,yBAAyB,UAAU,WAAW,EAAG,OAAM,IAAI,MAAM,8CAA8C;AAC1K;;;ACnCA,SAAS,KAAAC,UAAS;AAClB,SAAS,0BAA0B,0BAA0B,4BAAAC,2BAA0B,4BAAAC,iCAAgC;AACvH,SAAS,yBAAyB,sBAAsB,2BAA2B,eAAAC,cAAa,iBAAiB,uBAAAC,sBAAqB,2BAAAC,gCAA+B;AACrK,SAAS,qBAAqB,qBAAqB,2BAA2B;AAC9E,SAAS,sBAAsB,4BAA4B;AAC3D,SAAS,yBAAyB;AAMlC,IAAM,cAAcC,GAAE,OAAO,EAAE,SAASA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,GAAG,SAASA,GAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,EAAE,OAAO;AACzH,IAAM,+BAA+BA,GAAE,OAAO;AAAA,EACnD,eAAeA,GAAE,QAAQ,oCAAoC;AAAA,EAC7D,OAAO;AAAA,EACP,MAAM;AAAA,EACN,QAAQ;AACV,CAAC,EAAE,OAAO;AAGH,IAAM,4BAA4BA,GAAE,OAAO;AAAA,EAChD,SAAS;AAAA,EACT,gBAAgB;AAAA,EAChB,eAAe;AAAA,EACf,SAASA,GAAE,MAAM,mBAAmB,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAAA,EACpD,QAAQA,GAAE,MAAM,uBAAuB,EAAE,IAAI,GAAK;AAAA,EAClD,oBAAoB,qCAAqC,SAAS;AAAA,EAClE,WAAW,4BAA4B,SAAS;AAAA,EAChD,iBAAiBA,GAAE,QAAQ,UAAU,EAAE,SAAS;AAClD,CAAC,EAAE,OAAO;AAGV,IAAM,OAAO,CAAC,MAAe,UAAmBC,qBAAoB,EAAE,OAAO,KAAK,CAAC,EAAE,gBAAgBA,qBAAoB,EAAE,OAAO,MAAM,CAAC,EAAE;AAC3I,IAAM,WAAW,CAAC,OAAoC,SAAyD,iBAAiBA,qBAAoB,EAAE,OAAO,KAAK,CAAC,EAAE,WAAW;AAKzK,SAAS,mBAAmB,OAMX;AACtB,SAAO,0BAA0B,EAAE,GAAG,OAAO,QAAQ,4BAA4B,MAAM,MAAM,EAAE,CAAC;AAClG;AAIO,SAAS,0BAA0B,OAOlB;AACtB,QAAM,QAAQ,YAAY,MAAM,MAAM,KAAK;AAC3C,QAAM,SAAS,MAAM;AACrB,QAAM,SAAS,MAAM,SAAS;AAC9B,QAAM,WAAW,OAAO,QAAQ,SAAS,2BAA2B,SAAY,OAAO,6BAA6B,MAAM,OAAO,QAAQ,SAAS,sBAAsB;AACxK,MAAI,YAAY,OAAO,QAAQ,OAAO,SAAS,SAAS,OAAO,SAAS,IAAI,EAAG,OAAM,IAAI,MAAM,8DAA8D;AAC7J,QAAM,QAAQ,YAAY,KAAK,SAAS,OAAO,KAAK;AACpD,QAAM,OAAO,QAAQ,SAAS,OAAOC,aAAY,OAAO,OAAO;AAC/D,QAAM,KAAK,QAAQ,OAAO,QAAQ,KAAK,SAAS,OAAO,IAAI;AAC3D,QAAM,WAAW,QAAQ,OAAO,QAAQ,WAAW,IAAI;AACvD,QAAM,gBAAgB,oBAAoB,MAAM,MAAM,aAAa;AACnE,QAAM,UAAU,MAAM,QAAQ,IAAI,YAAU,oBAAoB,MAAM,MAAM,CAAC;AAC7E,QAAM,UAAU,oBAAoB,eAAe,OAAO;AAC1D,MAAI,cAAc,UAAW,OAAM,IAAI,MAAM,kFAAkF;AAC/H,QAAM,SAAS,EAAE,GAAG,OAAO,QAAQ,QAAQ,kBAAkB,QAAQ,OAAO,YAAU,OAAO,UAAU,EAAE,IAAI,YAAU,OAAO,EAAE,EAAE;AAClI,QAAM,oBAAoB,OAAO,sBAAsB,OAAO;AAC9D,QAAM,cAAc,mBAAmB,eAAe,yBAAyB;AAAA,IAC7E,eAAe;AAAA,IAAkC,IAAI,GAAG,EAAE;AAAA,IAAgB,UAAU;AAAA,IACpF,UAAU,OAAO,QAAQ;AAAA,IAAa,iBAAiB;AAAA,IAAM,sBAAsB;AAAA,IAAM,gBAAgB;AAAA,IACzG,oBAAoB,EAAE,cAAc,KAAS,eAAe,KAAY;AAAA,IAAG,0BAA0B,CAAC;AAAA,IAAG,UAAU,CAAC;AAAA,EACtH,CAAC;AACD,QAAM,cAAc,yBAAyB;AAAA,IAC3C,eAAe;AAAA,IAAkC,IAAI,GAAG,EAAE;AAAA,IAAc;AAAA,IAAU;AAAA,IAClF,WAAW,mBAAmB,YAAY,aAAa,EAAE,iBAAiB,oBAAoB,eAAe,QAAQ,kBAAkB,KAAK,IAAI,OAAO,QAAQ,YAAY,kBAAkB,GAAO,EAAE;AAAA,IACtM,wBAAwB,CAAC;AAAA,IAAG,UAAU,oBAAoB,EAAE,mBAAmBA,aAAY,kBAAkB,WAAW,EAAE,IAAI,CAAC;AAAA,EACjI,CAAC;AACD,QAAM,qBAAqB,EAAE,aAAa,YAAY;AACtD,QAAM,YAAY,OAAO,YAAY,EAAE,GAAG,OAAO,WAAW,YAAY,IAAI;AAC5E,QAAM,EAAE,aAAa,WAAW,GAAG,YAAY,IAAI,OAAO;AAC1D,QAAM,EAAE,aAAa,iBAAiB,GAAG,kBAAkB,IAAI,OAAO;AACtE,QAAM,gBAAgB,EAAE,GAAG,kBAAkB,WAAW,QAAQ,oBAAoB,EAAE,IAAI,YAAY,IAAI,aAAa,YAAY,YAAY,GAAG,oBAAoB,EAAE,IAAI,YAAY,IAAI,aAAa,YAAY,YAAY,EAAE;AACnO,QAAM,iBAAiB,qBAAqB,MAAMD,qBAAoB,EAAE,GAAG,mBAAmB,IAAI,GAAG,EAAE,eAAe,UAAU,eAAeC,aAAY,aAAa,GAAG,WAAW,cAAc,CAAC,CAAC;AACtM,QAAM,YAAY,OAAO,QAAQ,SAAS,oBAAoB,OAAO,QAAQ,SAAS;AACtF,QAAM,iBAAiB,aAAa,OAAO,cAAc,YAAY,CAAC,MAAM,QAAQ,SAAS,KAAK,oBAAoB,YAAY,UAAU,iBAAiB;AAG7J,QAAM,UAAU,qBAAqB,MAAMD,qBAAoB;AAAA,IAC7D,GAAG;AAAA,IAAa,GAAG;AAAA,IAAe;AAAA,IAAI;AAAA,IAAU;AAAA,IAChD,UAAU;AAAA,MACR,SAAS,EAAE,gBAAgBC,aAAY,cAAc,GAAG,eAAeA,aAAY,aAAa,EAAE;AAAA,MAClG,iBAAiB,EAAE,SAAS,eAAe,QAAQ;AAAA,MACnD,GAAI,mBAAmB,SAAY,CAAC,IAAI,EAAE,kBAAkB,EAAE,eAAe,EAAE;AAAA,MAC/E,GAAI,OAAO,QAAQ,SAAS,yBAAyB,SAAY,CAAC,IAAI,EAAE,sBAAsB,OAAO,QAAQ,SAAS,qBAAqB;AAAA,MAC3I,wBAAwB,EAAE,eAAe,sCAAsC,OAAO,MAAM,QAAQA,aAAY,OAAO,OAAO,EAAE;AAAA,IAClI;AAAA,EACF,CAAC,CAAC;AACF,SAAO,4BAA4B,EAAE,SAAS,gBAAgB,eAAe,SAAS,QAAQ,MAAM,QAAQ,oBAAoB,GAAI,YAAY,EAAE,UAAU,IAAI,CAAC,GAAI,GAAI,OAAO,kBAAkB,EAAE,iBAAiB,OAAO,gBAAgB,IAAI,CAAC,EAAG,CAAC;AACvP;AAEO,SAAS,4BAA4B,OAAqC;AAC/E,QAAM,SAAS,0BAA0B,MAAM,KAAK;AACpD,QAAM,EAAE,SAAS,gBAAgB,eAAe,SAAS,QAAQ,UAAU,IAAI;AAC/E,aAAW,YAAY,CAAC,SAAS,gBAAgB,eAAe,GAAG,SAAS,GAAG,MAAM,EAAG,2BAA0B,QAAQ;AAC1H,uBAAqB,OAAO;AAC5B,MAAI,cAAc,UAAW,OAAM,IAAI,MAAM,kFAAkF;AAC/H,MAAI,CAAC,gBAAgB,eAAe,eAAeA,aAAY,aAAa,CAAC,EAAG,OAAM,IAAI,MAAM,qDAAqD;AACrJ,QAAM,EAAE,QAAQ,aAAa,oBAAoB,OAAO,cAAc,mBAAmB,IAAI;AAC7F,MAAI,CAAC,KAAK,eAAe,WAAW,EAAE,QAAQ,aAAa,GAAI,qBAAqB,EAAE,mBAAmB,IAAI,CAAC,GAAI,OAAO,cAAc,GAAI,qBAAqB,EAAE,mBAAmB,IAAI,CAAC,EAAG,CAAC,EAAG,OAAM,IAAI,MAAM,0DAA0D;AAC3Q,MAAI,CAAC,KAAK,QAAQ,SAAS,oBAAoB,eAAe,OAAO,CAAC,EAAG,OAAM,IAAI,MAAM,iDAAiD;AAC1I,MAAI,QAAQ,SAAS,YAAY,QAAW;AAC1C,UAAM,WAAWF,GAAE,OAAO,EAAE,gBAAgB,gCAAgC,eAAe,+BAA+B,CAAC,EAAE,YAAY,EAAE,MAAM,QAAQ,SAAS,OAAO;AACzK,QAAI,CAAC,gBAAgB,SAAS,gBAAgBE,aAAY,cAAc,CAAC,KAAK,CAAC,gBAAgB,SAAS,eAAeA,aAAY,aAAa,CAAC,EAAG,OAAM,IAAI,MAAM,gEAAgE;AAAA,EACtO;AACA,MAAI,QAAQ,SAAS,oBAAoB,UAAa,CAAC,KAAK,QAAQ,SAAS,iBAAiB,EAAE,SAAS,eAAe,QAAQ,CAAC,EAAG,OAAM,IAAI,MAAM,uEAAuE;AAC3N,MAAI,QAAQ,SAAS,kBAAkB,UAAa,CAAC,gBAAgB,+BAA+B,MAAM,QAAQ,SAAS,aAAa,GAAGA,aAAY,aAAa,CAAC,EAAG,OAAM,IAAI,MAAM,wEAAwE;AAChQ,QAAM,YAAY,OAAO,sBAAsB;AAC/C,MAAI,QAAQ,sBAAsB,CAAC,UAAW,OAAM,IAAI,MAAM,6DAA6D;AAC3H,MAAI,cAAc,CAACC,0BAAyB,UAAU,WAAW,KAAK,CAACC,0BAAyB,UAAU,WAAW,KACjH,CAAC,KAAK,QAAQ,oBAAoB,EAAE,IAAI,UAAU,YAAY,IAAI,aAAa,UAAU,YAAY,YAAY,CAAC,KAClH,CAAC,KAAK,QAAQ,oBAAoB,EAAE,IAAI,UAAU,YAAY,IAAI,aAAa,UAAU,YAAY,YAAY,CAAC,KAClH,CAAC,KAAK,QAAQ,aAAa,UAAU,YAAY,QAAQ,KAAK,CAAC,KAAK,QAAQ,SAAS,UAAU,YAAY,OAAO,GAAI,OAAM,IAAI,MAAM,sDAAsD;AAChM,gCAA8B,WAAW,SAAS,MAAM;AACxD,MAAI,IAAI,IAAI,OAAO,IAAI,WAAS,MAAM,EAAE,CAAC,EAAE,SAAS,OAAO,OAAQ,OAAM,IAAI,MAAM,0CAA0C;AAC7H,aAAW,SAAS,OAAQ,CAAAC,yBAAwB,OAAO,MAAM,KAAK;AACtE,aAAW,aAAa,YAAY,CAAC,UAAU,YAAY,iBAAiB,UAAU,YAAY,sBAAsB,UAAU,YAAY,cAAc,IAAI,CAAC,GAAG;AAClK,QAAI,CAAC,UAAW;AAChB,UAAM,QAAQ,OAAO,KAAK,CAAAC,WAASA,OAAM,OAAO,UAAU,EAAE;AAC5D,QAAI,CAAC,MAAO,OAAM,IAAI,MAAM,yCAAyC,UAAU,EAAE,GAAG;AACpF,IAAAD,yBAAwB,OAAO,SAAS;AAAA,EAC1C;AACA,aAAW,QAAQ,QAAQ,OAAO;AAChC,QAAI,eAAe,mBAAmB,CAAC,KAAK,KAAK,iBAAiB,eAAe,eAAe,EAAG,OAAM,IAAI,MAAM,wDAAwD,KAAK,EAAE,GAAG;AACrL,QAAK,OAAO,oBAAoB,cAAc,KAAK,qBAAqB,iBAAiB,eAAe,gBAAiB,CAAC,kBAAkB,eAAe,aAAa,KAAK,KAAK,EAAE,SAC/K,KAAK,mBAAmB,QAAQ,CAAC,kBAAkB,eAAe,cAAc,KAAK,cAAc,EAAE,MAAQ,OAAM,IAAI,MAAM,kDAAkD,KAAK,EAAE,GAAG;AAC9L,QAAI,KAAK,wBAAwB,CAAC,OAAO,KAAK,WAAS,MAAM,OAAO,KAAK,wBAAwB,MAAM,MAAM,eAAe,cAAc,EAAG,OAAM,IAAI,MAAM,uCAAuC,KAAK,EAAE,GAAG;AAAA,EAChN;AACA,aAAW,UAAU,SAAS;AAC5B,UAAM,iBAAiB,OAAO;AAC9B,UAAM,aAAa,CAAC,GAAG,OAAO,QAAQ,GAAI,iBAAiB,iBAAiB,CAAC,eAAe,WAAW,IAAI,CAAC,GAAI,GAAI,eAAe,iBAAiB,CAAC,eAAe,SAAS,IAAI,CAAC,GAAI,GAAI,mBAAmB,iBAAiB,CAAC,eAAe,aAAa,IAAI,CAAC,CAAE;AAClQ,eAAW,aAAa,YAAY;AAClC,YAAM,QAAQ,OAAO,KAAK,CAAAC,WAASA,OAAM,OAAO,UAAU,EAAE;AAC5D,UAAI,CAAC,SAAS,UAAU,eAAe,SAAU,OAAM,IAAI,MAAM,8CAA8C,UAAU,EAAE,GAAG;AAC9H,MAAAD,yBAAwB,OAAO,SAAS;AAAA,IAC1C;AAAA,EACF;AACA,SAAO;AACT;;;ACzJA,SAAS,KAAAE,UAAS;AAElB;AAAA,EAAS;AAAA,EAAiB;AAAA,EAAoB;AAAA,EAA6B;AAAA,EAAsB,2BAAAC;AAAA,EAC/F,6BAAAC;AAAA,EAA2B;AAAA,EAAkB,eAAAC;AAAA,EAAa,mBAAAC;AAAA,EAAiB;AAAA,EAA0B,2BAAAC;AAAA,OAA+B;AAM/H,IAAM,wCAAwCC,GAAE,OAAO;AAAA,EAC5D,OAAO;AAAA,EACP,UAAUA,GAAE,MAAM,kBAAkB,EAAE,IAAI,CAAC,EAAE,IAAI,GAAM;AAAA,EACvD,WAAWA,GAAE,MAAM,2BAA2B,EAAE,IAAI,CAAC,EAAE,IAAI,GAAM;AAAA,EACjE,SAASA,GAAE,MAAM,oBAAoB,EAAE,IAAI,CAAC,EAAE,IAAI,GAAM;AAAA,EACxD,QAAQA,GAAE,MAAMC,wBAAuB,EAAE,IAAI,GAAK;AACpD,CAAC,EAAE,OAAO;AAGH,SAAS,4BAA4B,WAA4C;AACtF,SAAO,UAAU,SAAS,OAAO,cAAY,SAAS,WAAW,qBAAqB,IAAI,EAAE,IAAI,cAAY;AAC1G,UAAM,OAAO,cAAc,SAAS,WAAW,gBAAgB;AAC/D,UAAM,QAAQ,IAAI,YAAY,EAAE,OAAO,IAAI;AAC3C,WAAO;AAAA,MAAE,OAAO;AAAA,QAAE,IAAI,iBAAiB,SAAS,WAAW;AAAA,QAAI,MAAM,oBAAoB,SAAS,WAAW;AAAA,QAC3G,aAAa,OAAO,KAAK;AAAA,QAAG,WAAW,MAAM;AAAA,QAAY,WAAW;AAAA,QAAoB,YAAY;AAAA,MAAwB;AAAA,MAC5H,QAAQ,KAAK,MAAM,KAAK,OAAO,UAAQ,OAAO,aAAa,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC;AAAA,IAAE;AAAA,EAChF,CAAC;AACH;AAEO,SAAS,iCAAiC,SAAyB,OAAgB;AACxF,QAAM,YAAY,sCAAsC,MAAM,KAAK;AACnE,QAAM,WAAW,yBAAyB,OAAO;AACjD,MAAI,CAACC,iBAAgBC,aAAY,UAAU,KAAK,GAAG,SAAS,KAAK,EAAG,OAAM,IAAI,MAAM,6DAA6D;AACjJ,aAAW,cAAc,CAAC,UAAU,UAAU,UAAU,WAAW,UAAU,SAAS,UAAU,MAAM,GAAG;AACvG,UAAM,aAAa,oBAAI,IAAY;AACnC,eAAW,YAAY,YAAY;AACjC,MAAAC,2BAA0B,QAAQ;AAClC,YAAM,MAAM,GAAG,SAAS,EAAE,IAAI,SAAS,QAAQ;AAC/C,UAAI,WAAW,IAAI,GAAG,EAAG,OAAM,IAAI,MAAM,sDAAsD;AAC/F,iBAAW,IAAI,GAAG;AAAA,IACpB;AAAA,EACF;AACA,MAAI,UAAU,SAAS,WAAW,UAAU,MAAM,SAAS,UAAU,UAAU,UAAU,WAAW,UAAU,MAAM,SAAS,OAAQ,OAAM,IAAI,MAAM,qEAAqE;AAC1N,aAAW,YAAY,UAAU,UAAU;AACzC,UAAM,SAAS,UAAU,QAAQ,KAAK,CAAAC,YAAUH,iBAAgBC,aAAYE,OAAM,GAAG,SAAS,MAAM,CAAC;AACrG,QAAI,CAAC,UAAU,CAACH,iBAAgB,OAAO,gBAAgBC,aAAY,SAAS,UAAU,CAAC,EAAG,OAAM,IAAI,MAAM,2DAA2D;AAAA,EACvK;AACA,MAAI,UAAU,QAAQ,KAAK,YAAU,CAAC,UAAU,SAAS,KAAK,cAAYD,iBAAgB,SAAS,QAAQC,aAAY,MAAM,CAAC,CAAC,CAAC,EAAG,OAAM,IAAI,MAAM,wDAAwD;AAC3M,QAAM,eAAe,SAAS,QAAQ,QAAQ,YAAU;AAAA,IAAC,GAAG,OAAO;AAAA,IACjE,GAAI,OAAO,eAAe,SAAS,oBAAoB,CAAC,OAAO,eAAe,WAAW,IACrF,OAAO,eAAe,SAAS,iBAAiB,OAAO,eAAe,SAAS,UAAU,CAAC,OAAO,eAAe,SAAS,IAAI,CAAC;AAAA,IAClI,GAAI,mBAAmB,OAAO,iBAAiB,CAAC,OAAO,eAAe,aAAa,IAAI,CAAC;AAAA,EAC1F,CAAC;AACD,aAAW,OAAO,cAAc;AAC9B,UAAM,QAAQ,UAAU,OAAO,KAAK,CAAAG,WAASA,OAAM,OAAO,IAAI,EAAE;AAChE,QAAI,CAAC,MAAO,OAAM,IAAI,MAAM,2CAA2C;AACvE,IAAAC,yBAAwB,OAAO,GAAG;AAAA,EACpC;AACA,MAAI,UAAU,OAAO,KAAK,WAAS,CAAC,aAAa,KAAK,SAAO,IAAI,OAAO,MAAM,EAAE,CAAC,EAAG,OAAM,IAAI,MAAM,uDAAuD;AAC3J,QAAM,WAAW,iBAAiB;AAAA,IAAE,OAAO,UAAU;AAAA,IAAO,YAAY,SAAS;AAAA,IAAY,SAAS,SAAS;AAAA,IAC7G,SAAS,SAAS;AAAA,IAAS,UAAU,UAAU;AAAA,IAAU,WAAW,UAAU;AAAA,EAAU,CAAC;AAC3F,QAAM,mBAAmB,yBAAyB,QAAQ;AAC1D,MAAI,YAAY,gBAAgB,MAAM,YAAY,QAAQ,EAAG,OAAM,IAAI,MAAM,iEAAiE;AAC9I,QAAM,YAAY,CAAC,aAA6B,EAAE,QAAQ,QAAQ,QAAQ,aAAa,QAAQ,aAAa,OAAO,QAAQ,MAAM;AACjI,MAAI,YAAY,UAAU,QAAQ,CAAC,MAAM,YAAY,UAAU,OAAO,CAAC,EAAG,OAAM,IAAI,MAAM,8DAA8D;AACxJ,QAAM,cAAc,CAAC,UAA2C;AAAA,IAAE,IAAI,KAAK;AAAA,IAAI,YAAY,KAAK;AAAA,IAAY,OAAO,KAAK;AAAA,IACtH,OAAO,KAAK;AAAA,IAAO,gBAAgB,KAAK;AAAA,IAAgB,sBAAsB,KAAK;AAAA,IACnF,sBAAsB,KAAK;AAAA,IAAsB,cAAc,KAAK;AAAA,IAAc,iBAAiB,KAAK,mBAAmB,CAAC;AAAA,IAAG,MAAM,KAAK;AAAA,EAAK;AACjJ,MAAI,YAAY,SAAS,MAAM,IAAI,WAAW,CAAC,MAAM,YAAY,QAAQ,MAAM,IAAI,WAAW,CAAC,EAAG,OAAM,IAAI,MAAM,mDAAmD;AACrK,SAAO;AACT;;;ACrEA,SAAS,KAAAC,WAAS;AAIX,IAAM,4BAA4B,KAAK,OAAO;AAC9C,IAAM,2BAA2BC,IAAE,OAAO;AAAA,EAC/C,OAAO;AAAA,EACP,QAAQA,IAAE,OAAO,EAAE,IAAI,KAAK,KAAK,4BAA4B,CAAC,IAAI,CAAC;AACrE,CAAC,EAAE,OAAO;AAGH,SAAS,yBAAyB,OAAuC;AAC9E,QAAM,OAAO,yBAAyB,MAAM,KAAK;AACjD,QAAM,MAAM,KAAK,KAAK,MAAM;AAC5B,MAAI,KAAK,GAAG,MAAM,KAAK,OAAQ,OAAM,IAAI,MAAM,iBAAiB,KAAK,MAAM,EAAE,2BAA2B;AACxG,QAAM,QAAQ,WAAW,KAAK,KAAK,eAAa,UAAU,WAAW,CAAC,CAAC;AACvE,MAAI,MAAM,eAAe,KAAK,MAAM,aAAa,OAAO,KAAK,MAAM,KAAK,MAAM,YAAa,OAAM,IAAI,MAAM,iBAAiB,KAAK,MAAM,EAAE,oCAAoC;AAC7K,SAAO;AACT;;;ACjBA,SAAS,2BAAAC,0BAAyB,uBAAAC,4BAAmD;AAM9E,SAAS,+BAA+B,OAI8B;AAC3E,MAAI,MAAM,QAAQ,YAAY,eAAe,qCAAsC,QAAO;AAC1F,QAAM,OAAO,IAAI,IAAI,MAAM,MAAM,IAAI,UAAQ,CAAC,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC;AACnE,QAAM,OAAO,CAAC,OAAkC;AAC9C,UAAM,OAAO,KAAK,IAAI,EAAE;AACxB,QAAI,CAAC,KAAM,OAAM,IAAI,MAAM,yCAAyC,EAAE,GAAG;AACzE,QAAI,KAAK,MAAM,YAAY,OAAS,OAAM,IAAI,MAAM,8DAA8D;AAClH,UAAM,OAAO,IAAI,YAAY,SAAS,EAAE,OAAO,KAAK,CAAC,EAAE,OAAO,yBAAyB,IAAI,CAAC;AAC5F,WAAOC,yBAAwB,MAAMC,qBAAoB,EAAE,eAAe,iCAAiC,IAAI,UAAU,GAAG,OAAO,KAAK,OAAO,KAAK,CAAC,CAAC;AAAA,EACxJ;AACA,MAAI;AACJ,MAAI,MAAM,gBAAgB;AACxB,QAAI,CAAC,MAAM,eAAe,UAAW,OAAM,IAAI,MAAM,2DAA2D;AAChH,gBAAY,4BAA4B,MAAM,MAAM,eAAe,SAAS;AAAA,EAC9E,OAAO;AACL,UAAM,cAAc,KAAK,6BAA6B,MAAM,OAAO,CAAC;AACpE,QAAI,YAAY,MAAM,eAAe,kBAAkB,YAAY,MAAM,cAAc,sBAAsB,YAAY,MAAM,SAAS,6BAA8B,OAAM,IAAI,MAAM,mFAAmF;AACzQ,gBAAY,4BAA4B,MAAM,KAAK,MAAM,YAAY,IAAI,CAAC;AAAA,EAC5E;AACA,QAAM,MAAM,oBAAI,IAAI;AAAA,IAAC,UAAU,WAAW,OAAO;AAAA,IAC/C,GAAG,CAAC,UAAU,YAAY,iBAAiB,UAAU,YAAY,sBAAsB,UAAU,YAAY,cAAc,EAAE,QAAQ,SAAO,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAAA,IAC/J,GAAG,MAAM,QAAQ,MAAM,QAAQ,UAAQ,KAAK,uBAAuB,CAAC,KAAK,oBAAoB,IAAI,CAAC,CAAC;AAAA,EACrG,CAAC;AACD,QAAM,SAAS,CAAC,GAAG,GAAG,EAAE,IAAI,IAAI;AAChC,gCAA8B,WAAW,MAAM,SAAS,MAAM;AAC9D,SAAO,EAAE,WAAW,OAAO;AAC7B;AAGO,SAAS,kCAAkC,WAAsD;AACtG,QAAM,QAAQ,iCAAiC,SAAS;AACxD,QAAM,QAAQ,IAAI,YAAY,EAAE,OAAO,MAAM,IAAI;AACjD,MAAI,MAAM;AACV,aAAW,QAAQ,MAAO,QAAO,OAAO,aAAa,IAAI;AACzD,SAAO,EAAE,OAAO,MAAM,OAAO,QAAQ,KAAK,GAAG,EAAE;AACjD;;;AC9CA,SAAS,KAAAC,WAAS;AAElB,SAAS,uBAAAC,sBAAqB,qBAAqB,8BAA8B;AACjF,SAAS,wBAAyC;AAClD;AAAA,EAAS,eAAAC;AAAA,EAAa;AAAA,EAA2B;AAAA,EAAqB;AAAA,EACpE;AAAA,EAA+B;AAAA,OAA2E;AAK5G,IAAM,mBAAmBC,IAAE,OAAO;AAAA,EAChC,eAAeA,IAAE,QAAQ,kDAAkD;AAAA,EAC3E,cAAc;AAAA,EACd,YAAY;AAAA,EACZ,kBAAkB;AAAA,EAClB,SAAS;AAAA,EACT,aAAaA,IAAE,OAAO,EAAE,MAAM,gBAAgB;AAAA,EAC9C,iBAAiBA,IAAE,OAAO,EAAE,MAAM,gBAAgB;AAAA,EAClD,4BAA4BA,IAAE,QAAQ,IAAI;AAAA,EAC1C,YAAY;AAAA,EACZ,UAAUA,IAAE,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,EAAE,SAAS;AAChD,CAAC,EAAE,OAAO;AAEV,SAAS,iBAAiB,OAAwC;AAChE,QAAM,YAAY,MAAM,QAAQ,SAAS,qBAAqB,MAAM,QAAQ,SAAS;AACrF,SAAOA,IAAE,OAAO,EAAE,gBAAgB,oBAAoB,MAAM,EAAE,IAAI,GAAO,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC,CAAC,EAAE;AACjI;AAEA,SAAS,cAAc,SAAiC;AACtD,QAAM,aAAa,QAAQ,SAAS;AACpC,SAAO,eAAe;AACxB;AAIO,SAAS,iCAAiC,OAA6B;AAC5E,aAAW,WAAW,iBAAiB,KAAK,GAAG;AAC7C,UAAM,aAAa,QAAQ,SAAS;AAGpC,QAAI,cAAc,OAAO,eAAe,YAAY,OAAO,OAAO,YAAY,YAAY;AACxF,yBAAmB,OAAO,OAAO;AAAA,EACrC;AAEA,aAAW,QAAQ,MAAM,MAAO,KAAI,KAAK,MAAM,cAAc;AAC3D,uBAAmB,OAAO,KAAK,KAAK;AACxC;AAEO,SAAS,iCAAiC,OAAuB,WAAmB;AACzF,QAAM,EAAE,aAAa,aAAa,GAAG,eAAe,IAAI;AACxD,MAAI,YAAY,cAAc,MAAM,YAAa,MAAK,6BAA6B;AACnF,QAAM,WAAW,iBAAiB,KAAK,EAAE,OAAO,CAAAC,aAAWA,SAAQ,OAAO,SAAS;AACnF,MAAI,SAAS,WAAW,EAAG,MAAK,gCAAgC;AAChE,QAAM,UAAU,SAAS,CAAC;AAC1B,MAAI,CAAC,cAAc,OAAO,EAAG,MAAK,qCAAqC;AACvE,SAAO,mBAAmB,OAAO,OAAO;AAC1C;AAGA,SAAS,mBAAmB,OAAuB,UAAyB;AAC1E,QAAM,aAAa,iBAAiB,MAAM,SAAS,SAAS,iBAAiB;AAC7E,QAAM,UAAU,mBAAmB,OAAO,WAAW,UAAU;AAC/D,MAAI,YAAY,WAAW,YAAY,MAAM,YAAYC,aAAY,QAAQ,MAAM,CAAC,KAC/E,YAAY,WAAW,UAAU,MAAM,YAAY,QAAQ,OAAO,aAAa,KAC/E,WAAW,iBAAiB,OAAO,QAAQ,MAAM,MAAM,WAAW,iBAAiB,aAAa,QAAQ,MAAM,YAC9G,WAAW,iBAAiB,gBAAgB,YAAY,QAAQ,KAAK,EAAG,MAAK,4BAA4B;AAC9G,QAAM,UAAU,WAAW;AAC3B,QAAM,KAAK,eAAe,YAAY,CAAC,WAAW,cAAc,QAAQ,EAAE,CAAC,CAAC;AAC5E,MAAI,SAAS,OAAO,MAAM,SAAS,WAAW,MAAM,MAAM,QAAQ,MAAM,KAAK,UAAQ,KAAK,OAAO,EAAE,KAC9F,WAAW,gBAAgB,YAAY,OAAO,KAAK,YAAY,SAAS,MAAM,MAAM,YAAY,QAAQ,MAAM,KAC9G,SAAS,wBAAwB,QAAQ,oBAAqB,MAAK,6BAA6B;AACrG,QAAM,SAAS,QAAQ,MAAM,QAAQ,OAAO,YAAU,OAAO,QAAQ,OAAO,QAAQ,MAAM,OAAO,QAAQ,gBAAgB,WAAW,WAAW;AAC/I,MAAI,OAAO,WAAW,KAAK,YAAY,OAAO,CAAC,CAAC,MAAM,WAAW,gBAAiB,MAAK,4BAA4B;AACnH,QAAM,WAAW,QAAQ;AACzB,MAAI,SAAS,WAAW,YAAY,OAAO,SAAS,WAAW,aAAa,SAAS,mBAAmB,SAAS,UAC5G,SAAS,WAAW,SAAS,SAAS,aAAa,YAAa,MAAK,qCAAqC;AAC/G,QAAM,WAAW,WAAW,YAAY,WAAW,aAAa;AAChE,QAAM,UAAU,MAAM,QAAQ,QAAQ,OAAO,CAAAC,YAAUA,QAAO,OAAO,QAAQ;AAC7E,QAAM,SAAS,QAAQ,CAAC;AACxB,MAAI,QAAQ,WAAW,KAAK,CAAC,OAAQ,MAAK,+BAA+B;AACzE,MAAI,SAAS,2BAA2B,OAAO,eAAgB,MAAK,wCAAwC;AAC5G,QAAM,UAAU,oBAAoB;AAAA,IAAE,eAAe;AAAA,IAA6B,IAAI,eAAe,QAAQ,WAAW;AAAA,IAAI,UAAU;AAAA,IACpI,SAAS,CAAC;AAAA,MAAE;AAAA,MAAU,QAAQ,WAAW;AAAA,MAAc,MAAM;AAAA,MAAc,eAAe,EAAE,MAAM,WAAW;AAAA,MAAG,QAAQ,OAAO;AAAA,MAC7H,UAAU;AAAA,MAAM,UAAU,OAAO;AAAA,MAAU,YAAY,OAAO;AAAA,MAAY,aAAa,CAAC;AAAA,IAAE,CAAC;AAAA,IAC7F,aAAa;AAAA,IAAiB,YAAY;AAAA,EAAwC,GAAG,CAAC,QAAQ,MAAM,CAAC;AACvG,QAAM,YAAYC,qBAAoB,SAAS,CAAC,QAAQ,MAAM,CAAC,EAAE,CAAC;AAClE,QAAM,iBAAiB,CAAC,SAAqB;AAC3C,UAAM,EAAE,gBAAgB,WAAW,GAAG,KAAK,IAAI;AAC/C,WAAO,KAAK,SAAS,gBAAgB,EAAE,GAAG,MAAM,aAAa,KAAK,eAAe,EAAE,IAAI;AAAA,EACzF;AACA,MAAI,YAAY,eAAe,MAAM,CAAC,MAAM,YAAY,eAAe,SAAS,CAAC,EAAG,MAAK,4BAA4B;AACrH,MAAI,OAAO,SAAS,cAAe,8BAA6B,OAAO,QAAQ,YAAY,OAAO;AAClG,SAAO;AAAA,IACL,MAAM;AAAA,IACN,WAAW;AAAA,IACX,MAAM,iBAAiB,MAAM;AAAA,MAAE;AAAA,MAAI,YAAY;AAAA,MAAI,OAAO;AAAA,MAAc,OAAO,QAAQ;AAAA,MACrF,gBAAgB,QAAQ;AAAA,MAAgB,sBAAsB;AAAA,IAAK,CAAC;AAAA,IACtE,kBAAkB,QAAQ;AAAA,IAC1B,UAAU;AAAA,MAAE,QAAQ,QAAQ;AAAA,MAAQ,cAAc,QAAQ;AAAA,MAAc,kBAAkB,QAAQ;AAAA,MAChG,qBAAqB,QAAQ;AAAA,IAAoB;AAAA,IACnD,QAAQ;AAAA,IACR,QAAQ,QAAQ;AAAA,IAChB;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,MAAE,QAAQ,WAAW;AAAA,MAAc,YAAY,WAAW;AAAA,MAAY,OAAO,WAAW;AAAA,MAC9F,SAAS,WAAW;AAAA,MAAY,aAAa,WAAW;AAAA,MAAa,iBAAiB,WAAW;AAAA,IAAgB;AAAA,EACrH;AACF;AAEA,SAAS,mBAAmB,OAAuB,WAAwD;AACzG,MAAI,UAAU,eAAe,kBAAkB,UAAU,YAAY,wCAChE,UAAU,cAAc,2DAA4D,MAAK,iCAAiC;AAC/H,QAAM,QAAQ,MAAM,MAAM,OAAO,UAAQ,KAAK,MAAM,OAAO,UAAU,EAAE;AACvE,MAAI,MAAM,WAAW,KAAK,YAAY,MAAM,CAAC,EAAG,KAAK,MAAM,YAAY,SAAS,EAAG,MAAK,mCAAmC;AAC3H,QAAM,QAAQ,yBAAyB,MAAM,CAAC,CAAE;AAChD,QAAM,OAAO,IAAI,YAAY,SAAS,EAAE,OAAO,KAAK,CAAC,EAAE,OAAO,KAAK;AACnE,QAAM,UAAU,+BAA+B,KAAK,MAAM,IAAI,CAAC;AAC/D,MAAI,YAAY,8BAA8B,OAAO,EAAE,KAAK,MAAM,YAAY,SAAS,EAAG,MAAK,uCAAuC;AACtI,QAAM,UAAU,MAAM,MAAM,OAAO,UAAQ,KAAK,MAAM,gBAAgB,UAAU,eAAe,KAAK,MAAM,OAAO,UAAU,MAAM,KAAK,MAAM,SAAS,UAAU,IAAI;AACnK,MAAI,QAAQ,KAAK,UAAQ,KAAK,MAAM,eAAe,cAAc,EAAG,MAAK,mCAAmC;AAC5G,QAAM,UAAU,CAAC,QAA2B,IAAI,OAAO,UAAU,MAAM,IAAI,SAAS,UAAU,QAAQ,IAAI,gBAAgB,UAAU;AACpI,aAAW,QAAQ,MAAM,QAAQ,OAAO;AACtC,QAAI,KAAK,aAAa,KAAK,OAAO,MAAM,KAAK,mBAAmB,CAAC,GAAG,KAAK,YAAU,OAAO,aAAa,QAAQ,OAAO,SAAS,CAAC,KAC3H,KAAK,wBAAwB,MAAM,MAAM,KAAK,UAAQ,KAAK,MAAM,OAAO,KAAK,wBAAwB,QAAQ,KAAK,KAAK,CAAC;AAC3H,WAAK,gCAAgC;AAEvC,QAAI,gBAAgB,KAAK,OAAO,MAAM,UAAU,WAAW,KAAK,gBAAgB,KAAK,sBAAsB,MAAM,UAAU,WAAW;AACpI,WAAK,kCAAkC;AAAA,EAC3C;AACA,aAAW,OAAO,CAAC,MAAM,YAAY,iBAAiB,MAAM,YAAY,sBAAsB,MAAM,YAAY,cAAc;AAC5H,QAAI,OAAO,QAAQ,GAAG,EAAG,MAAK,8CAA8C;AAC9E,aAAW,YAAY,CAAC,MAAM,QAAQ,SAAS,sBAAsB,MAAM,YAAY,SAAS,SAAS,GAAG;AAC1G,QAAI,aAAa,OAAW;AAC5B,UAAM,YAAYJ,IAAE,MAAMA,IAAE,OAAO,EAAE,IAAIA,IAAE,OAAO,EAAE,SAAS,GAAG,MAAMA,IAAE,OAAO,GAAG,YAAYA,IAAE,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,YAAY,CAAC,EAAE,MAAM,QAAQ;AACpJ,eAAW,YAAY,WAAW;AAChC,YAAM,OAAO,MAAM,MAAM,KAAK,UAAQ,KAAK,MAAM,SAAS,SAAS,IAAI;AAEvE,UAAI,SAAS,OAAO,UAAU,MAAM,SAAS,SAAS,UAAU,QAAQ,QAAQ,QAAQ,KAAK,KAAK;AAChG,aAAK,gDAAgD;AAAA,IACzD;AAAA,EACF;AACA,SAAO;AACT;AAEA,SAAS,gBAAgB,OAAgB,MAAc,MAAuB;AAC5E,MAAI,OAAO,UAAU,SAAU,QAAO,UAAU,QAAQ,OAAO,KAAK,MAAM;AAC1E,MAAI,CAAC,SAAS,OAAO,UAAU,SAAU,QAAO;AAChD,MAAI,OAAO,KAAK,UAAU,KAAK,CAAC,MAAM,KAAM,QAAO;AACnD,SAAO,OAAO,OAAO,KAAK,EAAE,KAAK,UAAQ,gBAAgB,MAAM,MAAM,IAAI,CAAC;AAC5E;AACA,SAAS,KAAK,MAAqB;AAAE,QAAM,IAAI,MAAM,IAAI;AAAG;AAG5D,SAAS,6BAA6B,OAAuB,QAC3D,UAA4C,SAAyC;AACrF,QAAM,WAAW,OAAO;AACxB,QAAM,YAAY,MAAM,QAAQ,SAAS,qBAAqB,MAAM,QAAQ,SAAS;AACrF,QAAM,UAAUA,IAAE,OAAO,EAAE,0BAA0BA,IAAE,OAAOA,IAAE,OAAO,GAAGA,IAAE,MAAMA,IAAE,OAAO,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,SAAS;AAC/I,QAAM,WAAW,QAAQ,MAAM,YAAY,IAAI,SAAO,eAAe,YAAY,CAAC,SAAS,cAAc,IAAI,EAAE,CAAC,CAAC,EAAE;AACnH,MAAI,YAAY,QAAQ,yBAAyB,QAAQ,KAAK,CAAC,CAAC,MAAM,YAAY,QAAQ,EAAG,MAAK,sCAAsC;AACxI,QAAM,WAAW,iBAAiB,KAAK;AACvC,WAAS,QAAQ,GAAG,QAAQ,SAAS,QAAQ,SAAS;AACpD,UAAM,UAAU,SAAS,OAAO,aAAW,QAAQ,OAAO,SAAS,KAAK,CAAC;AACzE,QAAI,QAAQ,WAAW,EAAG,MAAK,sCAAsC;AACrE,UAAM,WAAW,QAAQ,CAAC;AAC1B,UAAM,YAAY,iBAAiB,MAAM,SAAS,SAAS,iBAAiB;AAC5E,UAAM,cAAc,UAAU,QAAQ;AACtC,QAAI,YAAY,WAAW,YAAY,OAAO,YAAY,WAAW,aAChE,SAAS,mBAAmB,YAAY,UAAU,SAAS,2BAA2B,OAAO,kBAC7F,SAAS,WAAW,YAAY,SAAS,aAAa,eACtD,YAAY,SAAS,MAAM,MAAM,YAAY,UAAU,QAAQ,MAAM,KACrE,SAAS,wBAAwB,UAAU,QAAQ,oBAAqB,MAAK,sCAAsC;AACxH,UAAM,WAAW,QAAQ,MAAM,YAAY,KAAK;AAChD,UAAM,SAAS,QAAQ,MAAM,QAAQ,KAAK,UAAQ,KAAK,QAAQ,OAAO,SAAS,EAAE;AACjF,QAAI,SAAS,WAAW,SAAS,MAAM,UAAU,QAAQ,OAAO,SAAS,MAAM,UAAU,gBAAgB,SAAS,eAC7G,YAAY,UAAU,OAAO,MAAM,SAAS,eAAe,UAAU,oBAAoB,YAAY,MAAM,KAC3G,YAAY,UAAU,YAAY,MAAM,YAAY,SAAS,YAAY,KACzE,YAAY,UAAU,UAAU,MAAM,YAAY,SAAS,UAAU,KACrE,YAAY,UAAU,gBAAgB,MAAM,YAAY,SAAS,gBAAgB,KACjF,YAAY,UAAU,UAAU,MAAM,YAAY,SAAS,UAAU,MACpE,UAAU,YAAY,UAAU,aAAa,QAAQ,SAAU,MAAK,sCAAsC;AAAA,EAClH;AACF;;;ACtLA,SAAS,KAAAK,WAAS;AAElB,SAAS,4BAAAC,2BAA0B,4BAAAC,2BAA0B,4BAAAC,2BAA0B,4BAAAC,iCAAgC;AACvH,SAAS,wBAAAC,uBAAsB,wBAAAC,6BAA4B;AAC3D,SAAS,yBAAAC,8BAA6B;AAEtC,SAAS,4BAAAC,iCAAgC;;;ACLzC,SAAS,mBAAAC,wBAAuB;AAGzB,SAAS,uBAAuB,SAA4C;AACjF,SAAO,0BAA0B,YAAY,EAAE,OAAO,QAAQ,OAAO,MAAM,QAAQ,KAAK,CAAC,CAAC;AAC5F;AAGO,SAAS,4BAA4B,SAA8E;AACxH,MAAI,QAAQ,SAAS,0BAA0B,OAAW,QAAO;AACjE,QAAM,UAAU,4BAA4B,MAAM,QAAQ,SAAS,qBAAqB;AACxF,MAAI,QAAQ,OAAO,uBAAuB,OAAO,MAC3C,QAAQ,aAAa,IAAI,CAACC,iBAAgB,QAAQ,QAAQ,QAAQ,IAAI,IACtE,QAAQ,OAAO,OAAO,QAAQ,MAAM,QAAQ,OAAO,aAAa,QAAQ,WAAW,IAAI;AAC3F,UAAM,IAAI,MAAM,+DAA+D;AAAA,EACjF;AACA,SAAO;AACT;;;ADHA,IAAM,4BAA4B,0BAA0B,KAAK,EAAE,SAAS,MAAM,oBAAoB,KAAK,CAAC;AACrG,IAAM,8BAA8BC,IAAE,OAAO;AAAA,EAClD,eAAeA,IAAE,QAAQ,4BAA4B;AAAA,EACrD,SAASC;AAAA,EACT,aAAaC;AAAA,EACb,aAAaC;AAAA,EACb,OAAOH,IAAE,MAAM,wBAAwB,EAAE,IAAI,GAAM;AAAA,EACnD,gBAAgB,0BAA0B,SAAS;AAAA,EACnD,mBAAmB,sCAAsC,SAAS;AACpE,CAAC,EAAE,OAAO;AACH,IAAM,uBAAuB,4BAA4B,OAAO,EAAE,aAAaA,IAAE,OAAO,EAAE,MAAM,gBAAgB,EAAE,CAAC,EAAE,OAAO;AAI5H,SAAS,4BAA4B,OAAuB;AACjE,SAAO,MAAM,oBAAoBI,0BAAyB,MAAM,OAAO,EAAE,UAAU,MAAM,gBAAgB,iBAAiB;AAC5H;AAIO,SAAS,kCAAkC,OAAyF;AACzI,MAAI,MAAM,kBAAmB,QAAOA,0BAAyB,MAAM,OAAO,EAAE,WAAW;AACvF,MAAI,MAAM,eAAgB,QAAO,MAAM,eAAe,eAAe;AACrE,QAAM,YAAYJ,IAAE,OAAO,EAAE,cAAcA,IAAE,OAAO,EAAE,IAAI,GAAM,EAAE,SAAS,EAAE,CAAC,EAAE,YAAY,EACzF,MAAM,MAAM,QAAQ,SAAS,qBAAqB,CAAC,CAAC;AACvD,SAAO,UAAU,gBAAgB;AACnC;AAIO,SAAS,uBAAuB,OAAgC;AACrE,EAAAK,uBAAsB,OAAO,yBAAyB;AACtD,QAAM,SAAS,qBAAqB,MAAM,KAAK;AAC/C,QAAM,EAAE,aAAa,MAAM,GAAG,QAAQ,IAAI;AAC1C,MAAI,YAAY,OAAO,MAAM,KAAM,OAAM,IAAI,MAAM,sDAAsD;AACzG,QAAM,EAAE,SAAS,aAAa,YAAY,IAAI;AAC9C,EAAAC,sBAAqB,OAAO;AAC5B,QAAM,YAAY,4BAA4B,OAAO;AACrD,MAAI,cAAc,OAAO,kBAAkB,OAAO,mBAAoB,OAAM,IAAI,MAAM,4DAA4D;AAClJ,MAAI,CAACC,0BAAyB,WAAW,KAAK,CAACC,0BAAyB,WAAW,KAC9E,CAACC,MAAK,QAAQ,oBAAoB,EAAE,IAAI,YAAY,IAAI,aAAa,YAAY,YAAY,CAAC,KAC9F,CAACA,MAAK,QAAQ,oBAAoB,EAAE,IAAI,YAAY,IAAI,aAAa,YAAY,YAAY,CAAC,KAC9F,CAACA,MAAK,QAAQ,aAAa,YAAY,QAAQ,KAAK,CAACA,MAAK,QAAQ,SAAS,YAAY,OAAO,GAAG;AACpG,UAAM,IAAI,MAAM,8DAA8D;AAAA,EAChF;AACA,QAAM,QAAQ,oBAAI,IAAsD;AACxE,aAAW,QAAQ,OAAO,OAAO;AAC/B,QAAI,MAAM,IAAI,KAAK,MAAM,EAAE,EAAG,OAAM,IAAI,MAAM,qCAAqC,KAAK,MAAM,EAAE,GAAG;AACnG,6BAAyB,IAAI;AAC7B,UAAM,IAAI,KAAK,MAAM,IAAI,IAAI;AAAA,EAC/B;AACA,WAAS,aAAa,KAAwB;AAC5C,UAAM,OAAO,MAAM,IAAI,IAAI,EAAE;AAC7B,QAAI,CAAC,QAAQ,CAACA,MAAK,KAAK,OAAO,GAAG,EAAG,OAAM,IAAI,MAAM,mDAAmD,IAAI,EAAE,GAAG;AAAA,EACnH;AACA,aAAW,QAAQ,QAAQ,OAAO;AAChC,eAAW,SAAS,KAAK,aAAc,cAAa,KAAK;AACzD,eAAW,UAAU,KAAK,mBAAmB,CAAC,EAAG,KAAI,OAAO,UAAW,cAAa,OAAO,SAAS;AACpG,QAAI,KAAK,wBAAwB,MAAM,IAAI,KAAK,oBAAoB,GAAG,MAAM,eAAe,gBAAgB;AAC1G,YAAM,IAAI,MAAM,+CAA+C,KAAK,EAAE,GAAG;AAAA,IAC3E;AAAA,EACF;AACA,aAAW,OAAO,CAAC,YAAY,iBAAiB,YAAY,sBAAsB,YAAY,cAAc,EAAG,KAAI,IAAK,cAAa,GAAG;AACxI,aAAW,UAAU,QAAQ,SAAS;AACpC,UAAM,MAAM,iBAAiB,SAAS,OAAO,cAAc,eAAe,SAAS,OAAO,YAAY;AACtG,QAAI,KAAK;AACP,mBAAa,GAAG;AAChB,UAAI,IAAI,eAAe,SAAU,OAAM,IAAI,MAAM,yCAAyC,IAAI,EAAE,GAAG;AAAA,IACrG;AAAA,EACF;AACA,MAAI,QAAQ,SAAS,kBAAkB;AACrC,UAAM,aAAa,QAAQ,QAAQ;AACnC,UAAM,UAAU,OAAO,MAAM,OAAO,UAAQ,KAAK,MAAM,SAAS,WAAW,MAAM;AACjF,QAAI,QAAQ,WAAW,KAAK,QAAQ,CAAC,EAAG,MAAM,gBAAgB,WAAW,eAAe,QAAQ,CAAC,EAAG,MAAM,YAAY,UAAW,QAAQ,CAAC,EAAG,MAAM,eAAe,UAAU;AAC1K,YAAM,IAAI,MAAM,sFAAsF;AAAA,IACxG;AAAA,EACF;AACA,aAAW,gBAAgB,CAAC,QAAQ,SAAS,sBAAsB,YAAY,SAAS,SAAS,GAAG;AAClG,QAAI,iBAAiB,OAAW;AAChC,eAAW,YAAYT,IAAE,MAAMA,IAAE,OAAO,EAAE,MAAMA,IAAE,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,EAAE,MAAM,YAAY,GAAG;AACvG,UAAI,CAAC,OAAO,MAAM,KAAK,UAAQ,KAAK,MAAM,SAAS,SAAS,IAAI,EAAG,OAAM,IAAI,MAAM,4CAA4C,SAAS,IAAI,GAAG;AAAA,IACjJ;AAAA,EACF;AACA,MAAI,OAAO,mBAAmB;AAC5B,QAAI,OAAO,eAAgB,OAAM,IAAI,MAAM,4DAA4D;AACvG,UAAM,WAAW,iCAAiC,SAAS,OAAO,iBAAiB;AACnF,eAAW,YAAY,4BAA4B,QAAQ,GAAG;AAC5D,UAAI,CAACS,MAAK,MAAM,IAAI,SAAS,MAAM,EAAE,GAAG,QAAQ,EAAG,OAAM,IAAI,MAAM,6DAA6D;AAAA,IAClI;AACA,eAAW,SAAS,SAAS,OAAQ,cAAa,MAAM,KAAK;AAAA,EAC/D,WAAW,OAAO,gBAAgB;AAChC,UAAM,QAAQ,4BAA4B,EAAE,GAAG,OAAO,gBAAgB,SAAS,oBAAoB,EAAE,aAAa,YAAY,EAAE,CAAC;AACjI,eAAW,SAAS,MAAM,OAAQ,cAAa,MAAM,KAAK;AAAA,EAC5D,WAAW,CAAC,WAAW,iBAAiB,mBAAmB,0BAA0B,UAAU,EAAE,KAAK,SAAO,QAAQ,SAAS,GAAG,MAAM,MAAS,GAAG;AACjJ,UAAM,IAAI,MAAM,kEAAkE;AAAA,EACpF;AACA,iCAA+B,MAAM;AACrC,oCAAkC,MAAM;AACxC,mCAAiC,MAAM;AACvC,SAAO;AACT;AAEO,SAAS,qBAAqB,OAAoE;AACvG,EAAAJ,uBAAsB,OAAO,yBAAyB;AACtD,QAAM,UAAU,4BAA4B,MAAM,KAAK;AACvD,SAAO,uBAAuB,EAAE,GAAG,SAAS,aAAa,YAAY,OAAO,EAAE,CAAC;AACjF;AAEA,SAASI,MAAK,MAAe,OAAyB;AACpD,SAAO,YAAY,EAAE,OAAO,KAAK,CAAC,MAAM,YAAY,EAAE,OAAO,MAAM,CAAC;AACtE;",
6
+ "names": ["z", "z", "IdSchema", "TimestampSchema", "HashSchema", "z", "z", "z", "IdSchema", "z", "TimestampSchema", "HashSchema", "MetadataSchema", "z", "HashSchema", "z", "contentHash", "asset", "z", "EnvironmentReleaseSchema", "VerifierSetReleaseSchema", "createLearningTextAsset", "sealLearningContent", "verifyLearningTextAsset", "z", "EnvironmentReleaseSchema", "VerifierSetReleaseSchema", "sealLearningContent", "createLearningTextAsset", "verifyLearningTextAsset", "z", "verifyEnvironmentRelease", "verifyVerifierSetRelease", "learningRef", "sealLearningContent", "verifyLearningTextAsset", "z", "sealLearningContent", "learningRef", "verifyEnvironmentRelease", "verifyVerifierSetRelease", "verifyLearningTextAsset", "asset", "z", "LearningTextAssetSchema", "assertLearningContentHash", "learningRef", "sameLearningRef", "verifyLearningTextAsset", "z", "LearningTextAssetSchema", "sameLearningRef", "learningRef", "assertLearningContentHash", "source", "asset", "verifyLearningTextAsset", "z", "z", "LearningTextAssetSchema", "sealLearningContent", "LearningTextAssetSchema", "sealLearningContent", "z", "compileBoundGraders", "learningRef", "z", "fixture", "learningRef", "grader", "compileBoundGraders", "z", "EnvironmentReleaseSchema", "VerifierSetReleaseSchema", "verifyEnvironmentRelease", "verifyVerifierSetRelease", "assertTasksetRelease", "TasksetReleaseSchema", "assertBoundedTaskJson", "taskBatchPackageMetadata", "sameLearningRef", "sameLearningRef", "z", "TasksetReleaseSchema", "EnvironmentReleaseSchema", "VerifierSetReleaseSchema", "taskBatchPackageMetadata", "assertBoundedTaskJson", "assertTasksetRelease", "verifyEnvironmentRelease", "verifyVerifierSetRelease", "same"]
7
+ }
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  CapabilityRequirementSchema,
3
3
  ToolDeclarationSchema
4
- } from "./chunk-I2MBVOVX.js";
4
+ } from "./chunk-4NZW4LFB.js";
5
5
  import {
6
6
  ImmutableAssetRefSchema,
7
7
  contentHash,
@@ -302,7 +302,8 @@ function portableGrader(grader) {
302
302
  ...base,
303
303
  kind: "human",
304
304
  rubricRef: rubricAsset(grader),
305
- reviewerRole: grader.reviewerRole
305
+ reviewerRole: grader.reviewerRole,
306
+ ...grader.form ? { form: grader.form } : {}
306
307
  };
307
308
  return {
308
309
  ...base,
@@ -375,4 +376,4 @@ export {
375
376
  portableTasksetTools,
376
377
  projectPortableTaskRecord
377
378
  };
378
- //# sourceMappingURL=chunk-CSWVE3E6.js.map
379
+ //# sourceMappingURL=chunk-MW2N3BX5.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/taskset-authored-portable-release.ts"],
4
- "sourcesContent": ["import type { Taskset } from \"./taskset-authored-contracts.js\";\nimport type {\n GraderSpec,\n TaskDataRecord,\n} from \"./taskset-draft-core.js\";\nimport {\n TaskRecordSchema,\n GraderSpecSchema as PortableGraderSpecSchema,\n TasksetReleaseContentSchema,\n TasksetReleaseSchema,\n bindTasksetExecutionReleases,\n createEnvironmentRelease,\n createVerifierSetRelease,\n EnvironmentReleaseSchema,\n VerifierSetReleaseSchema,\n verifyEnvironmentRelease,\n verifyVerifierSetRelease,\n verifyPreferenceComparisonRelease,\n type EnvironmentContract,\n type GraderSpec as PortableGraderSpec,\n type PreferenceComparisonRelease,\n type TasksetRelease,\n} from \"@openpond/evals\";\nimport type {\n ImmutableAssetRef,\n ToolDeclaration,\n} from \"@openpond/harness\";\nimport {\n CapabilityRequirementSchema,\n ImmutableAssetRefSchema,\n ToolDeclarationSchema,\n} from \"@openpond/harness\";\n\nimport { contentHash, sha256 } from \"@openpond/harness\";\nimport { TaskBatchPackageMetadataSchema } from \"@openpond/evals/learning\";\nimport { compileBoundGraders, RewardBindingSchema, RewardReleaseSchema, type RewardBinding, type RewardRelease } from \"@openpond/evals/rewards\";\nimport { portableDeterministicCheck } from \"@openpond/evals/graders\";\n\nexport type TasksetRewardExecution = { binding: RewardBinding; rewards: RewardRelease[] };\n\nexport function resolvePortableTasksetRewardExecution(taskset: Taskset, supplied?: TasksetRewardExecution): TasksetRewardExecution | null {\n const learning = taskset.metadata.learning === undefined ? null : TaskBatchPackageMetadataSchema.parse(taskset.metadata.learning);\n const embedded = taskset.metadata.rewardExecution as { binding?: unknown; rewards?: unknown } | undefined;\n const execution = supplied ?? (embedded ? {\n binding: RewardBindingSchema.parse(embedded.binding),\n rewards: RewardReleaseSchema.array().parse(embedded.rewards),\n } : learning);\n if (taskset.metadata.rewardBinding !== undefined) {\n const reference = taskset.metadata.rewardBinding as Partial<RewardBinding> | null;\n if (!execution || !reference || reference.id !== execution.binding.id\n || reference.revision !== execution.binding.revision || reference.contentHash !== execution.binding.contentHash) {\n throw new Error(\"Portable Taskset requires its exact published Reward binding.\");\n }\n }\n if (execution) compileBoundGraders(execution.binding, execution.rewards);\n return execution ? { binding: execution.binding, rewards: execution.rewards } : null;\n}\n\nexport function materializePortableTasksetRelease(input: {\n taskset: Taskset;\n selectedTasks?: TaskDataRecord[];\n adapterId: string;\n admittedTasksetRelease?: TasksetRelease | null;\n rewardExecution?: TasksetRewardExecution;\n}): {\n environmentRelease: ReturnType<typeof createEnvironmentRelease>;\n verifierSetRelease: ReturnType<typeof createVerifierSetRelease>;\n tasksetRelease: TasksetRelease;\n} {\n const environment = portableEnvironment(input.taskset);\n const tools = portableTools(input.taskset);\n const learning = input.taskset.metadata.learning === undefined ? null : TaskBatchPackageMetadataSchema.parse(input.taskset.metadata.learning);\n const embedded = input.taskset.metadata.rewardExecution;\n const rewardExecution = resolvePortableTasksetRewardExecution(input.taskset, input.rewardExecution);\n const graders = rewardExecution ? compileBoundGraders(rewardExecution.binding, rewardExecution.rewards) : input.taskset.graders.map(portableGrader);\n const tasks = input.selectedTasks?.length\n ? input.selectedTasks\n : input.taskset.tasks;\n if (!tasks.length) throw new Error(\"A portable Taskset release requires at least one task.\");\n const pinned = input.taskset.environment.metadata.portableExecutionResources as { environment?: unknown; verifierSet?: unknown } | undefined;\n if (environment.entrypoint === \"openpond.javascript-environment.v1\" && !pinned) throw new Error(\"Tool Taskset publication requires its pinned execution resources.\");\n const environmentRelease = pinned ? EnvironmentReleaseSchema.parse(pinned.environment) : createEnvironmentRelease({\n schemaVersion: \"openpond.environmentRelease.v1\",\n id: `environment-release-${input.taskset.id}-r${input.taskset.revision}`,\n revision: input.taskset.revision,\n contract: environment,\n actionSchemaRef: null,\n observationSchemaRef: null,\n stateSchemaRef: null,\n artifactCollection: {\n maxArtifacts: 100_000,\n maxTotalBytes: 250_000_000,\n },\n adapterConformanceHashes: {\n [input.adapterId]: contentHash({ adapterId: input.adapterId, environment, tools }),\n },\n metadata: {\n sourceTasksetId: input.taskset.id,\n sourcePackageHash: input.taskset.metadata.sourcePackageHash ?? null,\n resources: input.taskset.environment.resources ?? [],\n },\n });\n const verifierSetRelease = pinned?.verifierSet !== undefined ? VerifierSetReleaseSchema.parse(pinned.verifierSet) : createVerifierSetRelease({\n schemaVersion: \"openpond.verifierSetRelease.v1\",\n id: `verifier-set-release-${input.taskset.id}-r${input.taskset.revision}`,\n revision: input.taskset.revision,\n graders,\n isolation: {\n processBoundary: \"isolated_process\",\n networkPolicy: \"none\",\n defaultTimeoutMs: Math.min(input.taskset.environment.defaultTimeoutMs, 300_000),\n },\n calibrationReceiptRefs: [],\n metadata: { sourceTasksetId: input.taskset.id },\n });\n if (!verifyEnvironmentRelease(environmentRelease) || !verifyVerifierSetRelease(verifierSetRelease) ||\n contentHash(environmentRelease.contract) !== contentHash(environment) || contentHash(verifierSetRelease.graders) !== contentHash(graders)) {\n throw new Error(\"Taskset execution resources differ from its declared environment or graders.\");\n }\n const tasksetContent = TasksetReleaseContentSchema.parse({\n schemaVersion: \"openpond.tasksetRelease.v2\",\n id: input.taskset.metadata.derivedPortableMetadata === undefined ? `taskset-release-${input.taskset.id}-r${input.taskset.revision}` : input.taskset.id,\n revision: input.taskset.revision,\n policy: {\n policyVisibleFields: input.taskset.policy.policyVisibleFields,\n privilegedFields: input.taskset.policy.privilegedFields,\n hiddenGraderRefs: input.taskset.policy.hiddenGraderRefs,\n connectedAppScopes: input.taskset.policy.connectedAppScopes,\n },\n environment,\n tools,\n capabilities: portableCapabilities(input.taskset),\n tasks: tasks.map(projectPortableTaskRecord),\n graders,\n ...(input.taskset.metrics ? { metrics: input.taskset.metrics } : {}),\n metadata: input.taskset.metadata.derivedPortableMetadata ?? {\n sourceTasksetId: input.taskset.id,\n sourceTasksetHash: input.taskset.contentHash,\n sourcePackageHash: input.taskset.metadata.sourcePackageHash ?? null,\n environmentResources: input.taskset.environment.resources ?? [],\n ordinaryAuthoring: {\n instructions: input.taskset.objective,\n graderFixtures: input.taskset.graderFixtures,\n judgeCalibrationFixtures: Object.fromEntries(input.taskset.graders\n .filter(grader => grader.kind === \"model_judge\")\n .map(grader => [grader.id, grader.calibrationFixtureRefs])),\n },\n ...(learning ? { learning } : {}),\n // A sealed batch already pins these resources in learning metadata.\n // Resolving that same binding at admission must not change its release.\n ...(rewardExecution && !learning && (input.rewardExecution || embedded) ? { rewardExecution: { binding: rewardExecution.binding, rewards: rewardExecution.rewards } } : {}),\n },\n });\n const draft = input.admittedTasksetRelease\n ? TasksetReleaseSchema.parse(input.admittedTasksetRelease)\n : TasksetReleaseSchema.parse({\n ...tasksetContent,\n contentHash: contentHash(tasksetContent),\n });\n const tasksetRelease = draft.environmentRelease\n ? assertReleaseBindings({ draft, environmentRelease, verifierSetRelease })\n : bindTasksetExecutionReleases({\n taskset: draft,\n environment: environmentRelease,\n verifierSet: verifierSetRelease,\n });\n return { environmentRelease, verifierSetRelease, tasksetRelease };\n}\n\n/**\n * Admits a published comparison policy against the exact portable Taskset\n * release it names. A comparison is deliberately not embedded in that release:\n * doing so would create a content-hash cycle between Taskset and comparison.\n */\nexport function projectPreferenceComparisonRelease(input: {\n tasksetRelease: TasksetRelease;\n preferenceComparison: PreferenceComparisonRelease;\n}): PreferenceComparisonRelease {\n if (!verifyPreferenceComparisonRelease(input.preferenceComparison)) {\n throw new Error(\"Preference comparison release failed immutable content verification.\");\n }\n const release = input.preferenceComparison;\n if (\n release.tasksetRelease.id !== input.tasksetRelease.id\n || release.tasksetRelease.contentHash !== input.tasksetRelease.contentHash\n ) {\n throw new Error(\"Preference comparison release must reference the admitted portable Taskset release.\");\n }\n return release;\n}\n\nexport function portableTasksetEnvironment(taskset: Taskset): EnvironmentContract {\n return portableEnvironment(taskset);\n}\n\nexport function portableTasksetTools(taskset: Taskset): ToolDeclaration[] {\n return portableTools(taskset);\n}\n\n/** Preserve immutable file/schema references while overlaying current edits. */\nexport function projectPortableTaskRecord(task: TaskDataRecord) {\n const admitted = task.metadata.portableTaskRecord;\n if (admitted !== undefined) {\n const original = TaskRecordSchema.parse(admitted);\n const projected = TaskRecordSchema.parse({\n ...original,\n id: task.id,\n clusterKey: task.clusterKey,\n split: task.split,\n input: task.input,\n expectedOutput: portableExpectedOutput(task),\n policyVisibleContext: task.policyVisibleContext,\n privilegedContextRef: task.privilegedContextRef,\n tags: task.tags,\n artifactRefs: task.assets === undefined ? original.artifactRefs : task.assets.map((asset) => {\n const previous = original.artifactRefs.find(item => item.id === asset.id);\n return {\n id: asset.id,\n path: previous?.path ?? `tasks/${segment(task.id)}/${segment(asset.fileName)}`,\n contentHash: hash(asset.sha256),\n sizeBytes: asset.sizeBytes,\n mediaType: asset.mediaType,\n visibility: previous?.visibility ?? \"policy\",\n };\n }),\n requiredOutputs: task.requiredOutputs === undefined ? original.requiredOutputs : task.requiredOutputs.map((output) => {\n const previous = original.requiredOutputs?.find(item => item.path === output.path);\n return {\n path: output.path,\n mediaType: output.mediaType,\n schemaRef: previous?.schemaRef && previous.schemaRef.id === output.schemaRef ? previous.schemaRef : null,\n maxBytes: output.maxBytes ?? null,\n metadata: {\n ...output.metadata,\n ...(output.schemaRef && previous?.schemaRef?.id !== output.schemaRef\n ? { legacySchemaRef: output.schemaRef }\n : {}),\n },\n };\n }),\n });\n if (projected.requiredOutputs === undefined) delete projected.requiredOutputs;\n return projected;\n }\n return {\n id: task.id,\n clusterKey: task.clusterKey,\n split: task.split,\n input: task.input,\n expectedOutput: portableExpectedOutput(task),\n policyVisibleContext: task.policyVisibleContext,\n privilegedContextRef: task.privilegedContextRef,\n artifactRefs: (task.assets ?? []).map((item) => ({\n id: item.id,\n path: `tasks/${segment(task.id)}/${segment(item.fileName)}`,\n contentHash: hash(item.sha256),\n sizeBytes: item.sizeBytes,\n mediaType: item.mediaType,\n visibility: \"policy\" as const,\n })),\n requiredOutputs: (task.requiredOutputs ?? []).map((output) => ({\n path: output.path,\n mediaType: output.mediaType,\n schemaRef: null,\n maxBytes: output.maxBytes ?? null,\n metadata: {\n ...output.metadata,\n legacySchemaRef: output.schemaRef ?? null,\n },\n })),\n tags: task.tags,\n };\n}\n\nfunction portableExpectedOutput(\n task: TaskDataRecord,\n): Record<string, unknown> | null {\n if (!task.expectedOutput) return null;\n if (\"artifactRenderer\" in task.expectedOutput) {\n throw new Error(\n `Task ${task.id} embeds an artifact renderer. Put shared renderer configuration in Environment resources and reference it from the Scenario.`,\n );\n }\n return task.expectedOutput;\n}\n\nfunction portableEnvironment(taskset: Taskset): EnvironmentContract {\n const kind: EnvironmentContract[\"kind\"] = taskset.environment.kind === \"chat\"\n ? \"text\"\n : taskset.environment.kind === \"work\" ? \"work\"\n : taskset.environment.kind === \"program\" ? \"custom_program\" : \"agent\";\n return {\n protocolVersion: \"openpond.environment.v1\",\n kind,\n entrypoint: taskset.environment.entrypoint,\n stateful: taskset.environment.stateful,\n deterministicSeeds: taskset.environment.deterministicSeeds,\n lifecycle: [\"create\", \"reset\", \"step\", \"collect\", \"destroy\"],\n networkPolicy: taskset.environment.networkPolicy,\n defaultTimeoutMs: taskset.environment.defaultTimeoutMs,\n };\n}\n\nfunction portableTools(taskset: Taskset): ToolDeclaration[] {\n const admitted = taskset.environment.metadata.portableTools;\n if (admitted !== undefined) {\n return ToolDeclarationSchema.array().max(200).parse(admitted);\n }\n const bindings = taskset.environment.actionBindings ?? [];\n if (bindings.length) return bindings.map((binding) => ({\n name: binding.modelToolName,\n description: binding.description,\n inputSchema: binding.inputSchema,\n inputSchemaHash: hash(binding.actionSchemaHash),\n sideEffect: binding.sideEffect,\n timeoutMs: binding.timeoutMs,\n }));\n return taskset.environment.toolNames.map((name) => ({\n name,\n description: `Host-provided ${name} tool.`,\n inputSchema: {},\n inputSchemaHash: contentHash({}),\n sideEffect: \"write\" as const,\n timeoutMs: taskset.environment.defaultTimeoutMs,\n }));\n}\n\nfunction portableGrader(grader: GraderSpec): PortableGraderSpec {\n const base = {\n id: grader.id,\n version: grader.version,\n weight: grader.weight,\n hardGate: grader.hardGate,\n rewardEligible: grader.rewardEligible,\n privileged: grader.privileged,\n };\n if (grader.kind === \"model_judge\") return {\n ...base,\n kind: \"model_judge\",\n rubricRef: rubricAsset(grader),\n model: modelJudgeRef(grader),\n temperature: grader.temperature,\n calibrationStatus: grader.calibrationStatus,\n };\n if (grader.kind === \"custom_verifier\") {\n if (grader.metadata.portableVerifierRef === undefined) {\n throw new Error(`Custom verifier ${grader.id} requires its immutable executable asset before publication.`);\n }\n const imported = PortableGraderSpecSchema.safeParse(grader.metadata.portableGrader);\n // An omitted portable export means \"verify\". Preserve that encoding on an\n // unchanged import so executing it does not silently replace its release.\n const preserveDefault = imported.success && imported.data.kind === \"custom_verifier\"\n && imported.data.exportName === undefined && grader.exportName === \"verify\";\n return {\n ...base,\n kind: \"custom_verifier\",\n ...(grader.runtime === undefined ? {} : { runtime: grader.runtime }),\n verifierRef: ImmutableAssetRefSchema.parse(grader.metadata.portableVerifierRef),\n timeoutMs: grader.timeoutMs,\n ...(preserveDefault ? {} : { exportName: grader.exportName }),\n networkPolicy: \"none\",\n };\n }\n if (grader.kind === \"human\") return {\n ...base,\n kind: \"human\",\n rubricRef: rubricAsset(grader),\n reviewerRole: grader.reviewerRole,\n };\n return {\n ...base,\n ...portableDeterministicCheck(grader),\n };\n}\n\nfunction portableCapabilities(taskset: Taskset) {\n const admitted = taskset.metadata.portableCapabilities;\n if (admitted !== undefined) {\n return CapabilityRequirementSchema.array().max(200).parse(admitted);\n }\n return [\n ...(taskset.capabilities.requiresTools\n ? [{ id: \"tools\", required: true, scopes: taskset.environment.toolNames }]\n : []),\n ...(taskset.capabilities.requiresState\n ? [{ id: \"local-state\", required: true, scopes: [] }]\n : []),\n ...(taskset.capabilities.requiresPrivilegedGrading\n ? [{ id: \"private-verifier\", required: true, scopes: taskset.policy.hiddenGraderRefs }]\n : []),\n ...taskset.policy.connectedAppScopes.map((scope) => ({\n id: `connected-app-${segment(scope)}`,\n required: true,\n scopes: [scope],\n })),\n ].map((requirement) => ({\n ...requirement,\n portability: requirement.id === \"local-state\" ? \"host_adapter\" as const : \"portable\" as const,\n }));\n}\n\nfunction assertReleaseBindings(input: {\n draft: TasksetRelease;\n environmentRelease: ReturnType<typeof createEnvironmentRelease>;\n verifierSetRelease: ReturnType<typeof createVerifierSetRelease>;\n}): TasksetRelease {\n if (\n input.draft.environmentRelease?.id !== input.environmentRelease.id\n || input.draft.environmentRelease.contentHash !== input.environmentRelease.contentHash\n ) {\n throw new Error(\"Admitted Taskset Release binds a different Environment Release.\");\n }\n if (\n input.draft.verifierSetRelease?.id !== input.verifierSetRelease.id\n || input.draft.verifierSetRelease.contentHash !== input.verifierSetRelease.contentHash\n ) {\n throw new Error(\"Admitted Taskset Release binds a different Verifier Set Release.\");\n }\n if (contentHash(input.draft.environment) !== contentHash(input.environmentRelease.contract)) {\n throw new Error(\"Admitted Taskset Environment differs from its bound Environment Release.\");\n }\n if (contentHash(input.draft.graders) !== contentHash(input.verifierSetRelease.graders)) {\n throw new Error(\"Admitted Taskset graders differ from its bound Verifier Set Release.\");\n }\n return input.draft;\n}\n\nfunction modelJudgeRef(grader: Extract<GraderSpec, { kind: \"model_judge\" }>) {\n const previous = grader.metadata.portableGrader === undefined ? null : PortableGraderSpecSchema.parse(grader.metadata.portableGrader);\n const revision = previous?.kind === \"model_judge\" && previous.model?.providerId === grader.judge.providerId && previous.model.modelId === grader.judge.modelId ? previous.model.revision : null;\n return { ...grader.judge, revision };\n}\n\nfunction rubricAsset(grader: Extract<GraderSpec, { kind: \"human\" | \"model_judge\" }>): ImmutableAssetRef {\n const contentHash = sha256(grader.rubric);\n const sizeBytes = new TextEncoder().encode(grader.rubric).byteLength;\n const reference = grader.metadata.portableRubricRef;\n if (reference !== undefined) {\n const asset = ImmutableAssetRefSchema.parse(reference);\n if (asset.contentHash !== contentHash || asset.sizeBytes !== sizeBytes || asset.visibility === \"policy\") throw new Error(\"Taskset rubric differs from its published private source.\");\n return asset;\n }\n return { id: `rubric-${grader.id}`, path: `graders/${segment(grader.id)}/rubric.md`, contentHash, sizeBytes, mediaType: \"text/markdown\", visibility: \"verifier\" };\n}\n\nfunction hash(value: string): string {\n return /^[a-f0-9]{64}$/.test(value) ? value : contentHash(value);\n}\n\nfunction segment(value: string): string {\n const normalized = value.trim().replace(/[^a-zA-Z0-9._-]+/g, \"-\")\n .replace(/^-+|-+$/g, \"\");\n return normalized || \"asset\";\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import type { Taskset } from \"./taskset-authored-contracts.js\";\nimport type {\n GraderSpec,\n TaskDataRecord,\n} from \"./taskset-draft-core.js\";\nimport {\n TaskRecordSchema,\n GraderSpecSchema as PortableGraderSpecSchema,\n TasksetReleaseContentSchema,\n TasksetReleaseSchema,\n bindTasksetExecutionReleases,\n createEnvironmentRelease,\n createVerifierSetRelease,\n EnvironmentReleaseSchema,\n VerifierSetReleaseSchema,\n verifyEnvironmentRelease,\n verifyVerifierSetRelease,\n verifyPreferenceComparisonRelease,\n type EnvironmentContract,\n type GraderSpec as PortableGraderSpec,\n type PreferenceComparisonRelease,\n type TasksetRelease,\n} from \"@openpond/evals\";\nimport type {\n ImmutableAssetRef,\n ToolDeclaration,\n} from \"@openpond/harness\";\nimport {\n CapabilityRequirementSchema,\n ImmutableAssetRefSchema,\n ToolDeclarationSchema,\n} from \"@openpond/harness\";\n\nimport { contentHash, sha256 } from \"@openpond/harness\";\nimport { TaskBatchPackageMetadataSchema } from \"@openpond/evals/learning\";\nimport { compileBoundGraders, RewardBindingSchema, RewardReleaseSchema, type RewardBinding, type RewardRelease } from \"@openpond/evals/rewards\";\nimport { portableDeterministicCheck } from \"@openpond/evals/graders\";\n\nexport type TasksetRewardExecution = { binding: RewardBinding; rewards: RewardRelease[] };\n\nexport function resolvePortableTasksetRewardExecution(taskset: Taskset, supplied?: TasksetRewardExecution): TasksetRewardExecution | null {\n const learning = taskset.metadata.learning === undefined ? null : TaskBatchPackageMetadataSchema.parse(taskset.metadata.learning);\n const embedded = taskset.metadata.rewardExecution as { binding?: unknown; rewards?: unknown } | undefined;\n const execution = supplied ?? (embedded ? {\n binding: RewardBindingSchema.parse(embedded.binding),\n rewards: RewardReleaseSchema.array().parse(embedded.rewards),\n } : learning);\n if (taskset.metadata.rewardBinding !== undefined) {\n const reference = taskset.metadata.rewardBinding as Partial<RewardBinding> | null;\n if (!execution || !reference || reference.id !== execution.binding.id\n || reference.revision !== execution.binding.revision || reference.contentHash !== execution.binding.contentHash) {\n throw new Error(\"Portable Taskset requires its exact published Reward binding.\");\n }\n }\n if (execution) compileBoundGraders(execution.binding, execution.rewards);\n return execution ? { binding: execution.binding, rewards: execution.rewards } : null;\n}\n\nexport function materializePortableTasksetRelease(input: {\n taskset: Taskset;\n selectedTasks?: TaskDataRecord[];\n adapterId: string;\n admittedTasksetRelease?: TasksetRelease | null;\n rewardExecution?: TasksetRewardExecution;\n}): {\n environmentRelease: ReturnType<typeof createEnvironmentRelease>;\n verifierSetRelease: ReturnType<typeof createVerifierSetRelease>;\n tasksetRelease: TasksetRelease;\n} {\n const environment = portableEnvironment(input.taskset);\n const tools = portableTools(input.taskset);\n const learning = input.taskset.metadata.learning === undefined ? null : TaskBatchPackageMetadataSchema.parse(input.taskset.metadata.learning);\n const embedded = input.taskset.metadata.rewardExecution;\n const rewardExecution = resolvePortableTasksetRewardExecution(input.taskset, input.rewardExecution);\n const graders = rewardExecution ? compileBoundGraders(rewardExecution.binding, rewardExecution.rewards) : input.taskset.graders.map(portableGrader);\n const tasks = input.selectedTasks?.length\n ? input.selectedTasks\n : input.taskset.tasks;\n if (!tasks.length) throw new Error(\"A portable Taskset release requires at least one task.\");\n const pinned = input.taskset.environment.metadata.portableExecutionResources as { environment?: unknown; verifierSet?: unknown } | undefined;\n if (environment.entrypoint === \"openpond.javascript-environment.v1\" && !pinned) throw new Error(\"Tool Taskset publication requires its pinned execution resources.\");\n const environmentRelease = pinned ? EnvironmentReleaseSchema.parse(pinned.environment) : createEnvironmentRelease({\n schemaVersion: \"openpond.environmentRelease.v1\",\n id: `environment-release-${input.taskset.id}-r${input.taskset.revision}`,\n revision: input.taskset.revision,\n contract: environment,\n actionSchemaRef: null,\n observationSchemaRef: null,\n stateSchemaRef: null,\n artifactCollection: {\n maxArtifacts: 100_000,\n maxTotalBytes: 250_000_000,\n },\n adapterConformanceHashes: {\n [input.adapterId]: contentHash({ adapterId: input.adapterId, environment, tools }),\n },\n metadata: {\n sourceTasksetId: input.taskset.id,\n sourcePackageHash: input.taskset.metadata.sourcePackageHash ?? null,\n resources: input.taskset.environment.resources ?? [],\n },\n });\n const verifierSetRelease = pinned?.verifierSet !== undefined ? VerifierSetReleaseSchema.parse(pinned.verifierSet) : createVerifierSetRelease({\n schemaVersion: \"openpond.verifierSetRelease.v1\",\n id: `verifier-set-release-${input.taskset.id}-r${input.taskset.revision}`,\n revision: input.taskset.revision,\n graders,\n isolation: {\n processBoundary: \"isolated_process\",\n networkPolicy: \"none\",\n defaultTimeoutMs: Math.min(input.taskset.environment.defaultTimeoutMs, 300_000),\n },\n calibrationReceiptRefs: [],\n metadata: { sourceTasksetId: input.taskset.id },\n });\n if (!verifyEnvironmentRelease(environmentRelease) || !verifyVerifierSetRelease(verifierSetRelease) ||\n contentHash(environmentRelease.contract) !== contentHash(environment) || contentHash(verifierSetRelease.graders) !== contentHash(graders)) {\n throw new Error(\"Taskset execution resources differ from its declared environment or graders.\");\n }\n const tasksetContent = TasksetReleaseContentSchema.parse({\n schemaVersion: \"openpond.tasksetRelease.v2\",\n id: input.taskset.metadata.derivedPortableMetadata === undefined ? `taskset-release-${input.taskset.id}-r${input.taskset.revision}` : input.taskset.id,\n revision: input.taskset.revision,\n policy: {\n policyVisibleFields: input.taskset.policy.policyVisibleFields,\n privilegedFields: input.taskset.policy.privilegedFields,\n hiddenGraderRefs: input.taskset.policy.hiddenGraderRefs,\n connectedAppScopes: input.taskset.policy.connectedAppScopes,\n },\n environment,\n tools,\n capabilities: portableCapabilities(input.taskset),\n tasks: tasks.map(projectPortableTaskRecord),\n graders,\n ...(input.taskset.metrics ? { metrics: input.taskset.metrics } : {}),\n metadata: input.taskset.metadata.derivedPortableMetadata ?? {\n sourceTasksetId: input.taskset.id,\n sourceTasksetHash: input.taskset.contentHash,\n sourcePackageHash: input.taskset.metadata.sourcePackageHash ?? null,\n environmentResources: input.taskset.environment.resources ?? [],\n ordinaryAuthoring: {\n instructions: input.taskset.objective,\n graderFixtures: input.taskset.graderFixtures,\n judgeCalibrationFixtures: Object.fromEntries(input.taskset.graders\n .filter(grader => grader.kind === \"model_judge\")\n .map(grader => [grader.id, grader.calibrationFixtureRefs])),\n },\n ...(learning ? { learning } : {}),\n // A sealed batch already pins these resources in learning metadata.\n // Resolving that same binding at admission must not change its release.\n ...(rewardExecution && !learning && (input.rewardExecution || embedded) ? { rewardExecution: { binding: rewardExecution.binding, rewards: rewardExecution.rewards } } : {}),\n },\n });\n const draft = input.admittedTasksetRelease\n ? TasksetReleaseSchema.parse(input.admittedTasksetRelease)\n : TasksetReleaseSchema.parse({\n ...tasksetContent,\n contentHash: contentHash(tasksetContent),\n });\n const tasksetRelease = draft.environmentRelease\n ? assertReleaseBindings({ draft, environmentRelease, verifierSetRelease })\n : bindTasksetExecutionReleases({\n taskset: draft,\n environment: environmentRelease,\n verifierSet: verifierSetRelease,\n });\n return { environmentRelease, verifierSetRelease, tasksetRelease };\n}\n\n/**\n * Admits a published comparison policy against the exact portable Taskset\n * release it names. A comparison is deliberately not embedded in that release:\n * doing so would create a content-hash cycle between Taskset and comparison.\n */\nexport function projectPreferenceComparisonRelease(input: {\n tasksetRelease: TasksetRelease;\n preferenceComparison: PreferenceComparisonRelease;\n}): PreferenceComparisonRelease {\n if (!verifyPreferenceComparisonRelease(input.preferenceComparison)) {\n throw new Error(\"Preference comparison release failed immutable content verification.\");\n }\n const release = input.preferenceComparison;\n if (\n release.tasksetRelease.id !== input.tasksetRelease.id\n || release.tasksetRelease.contentHash !== input.tasksetRelease.contentHash\n ) {\n throw new Error(\"Preference comparison release must reference the admitted portable Taskset release.\");\n }\n return release;\n}\n\nexport function portableTasksetEnvironment(taskset: Taskset): EnvironmentContract {\n return portableEnvironment(taskset);\n}\n\nexport function portableTasksetTools(taskset: Taskset): ToolDeclaration[] {\n return portableTools(taskset);\n}\n\n/** Preserve immutable file/schema references while overlaying current edits. */\nexport function projectPortableTaskRecord(task: TaskDataRecord) {\n const admitted = task.metadata.portableTaskRecord;\n if (admitted !== undefined) {\n const original = TaskRecordSchema.parse(admitted);\n const projected = TaskRecordSchema.parse({\n ...original,\n id: task.id,\n clusterKey: task.clusterKey,\n split: task.split,\n input: task.input,\n expectedOutput: portableExpectedOutput(task),\n policyVisibleContext: task.policyVisibleContext,\n privilegedContextRef: task.privilegedContextRef,\n tags: task.tags,\n artifactRefs: task.assets === undefined ? original.artifactRefs : task.assets.map((asset) => {\n const previous = original.artifactRefs.find(item => item.id === asset.id);\n return {\n id: asset.id,\n path: previous?.path ?? `tasks/${segment(task.id)}/${segment(asset.fileName)}`,\n contentHash: hash(asset.sha256),\n sizeBytes: asset.sizeBytes,\n mediaType: asset.mediaType,\n visibility: previous?.visibility ?? \"policy\",\n };\n }),\n requiredOutputs: task.requiredOutputs === undefined ? original.requiredOutputs : task.requiredOutputs.map((output) => {\n const previous = original.requiredOutputs?.find(item => item.path === output.path);\n return {\n path: output.path,\n mediaType: output.mediaType,\n schemaRef: previous?.schemaRef && previous.schemaRef.id === output.schemaRef ? previous.schemaRef : null,\n maxBytes: output.maxBytes ?? null,\n metadata: {\n ...output.metadata,\n ...(output.schemaRef && previous?.schemaRef?.id !== output.schemaRef\n ? { legacySchemaRef: output.schemaRef }\n : {}),\n },\n };\n }),\n });\n if (projected.requiredOutputs === undefined) delete projected.requiredOutputs;\n return projected;\n }\n return {\n id: task.id,\n clusterKey: task.clusterKey,\n split: task.split,\n input: task.input,\n expectedOutput: portableExpectedOutput(task),\n policyVisibleContext: task.policyVisibleContext,\n privilegedContextRef: task.privilegedContextRef,\n artifactRefs: (task.assets ?? []).map((item) => ({\n id: item.id,\n path: `tasks/${segment(task.id)}/${segment(item.fileName)}`,\n contentHash: hash(item.sha256),\n sizeBytes: item.sizeBytes,\n mediaType: item.mediaType,\n visibility: \"policy\" as const,\n })),\n requiredOutputs: (task.requiredOutputs ?? []).map((output) => ({\n path: output.path,\n mediaType: output.mediaType,\n schemaRef: null,\n maxBytes: output.maxBytes ?? null,\n metadata: {\n ...output.metadata,\n legacySchemaRef: output.schemaRef ?? null,\n },\n })),\n tags: task.tags,\n };\n}\n\nfunction portableExpectedOutput(\n task: TaskDataRecord,\n): Record<string, unknown> | null {\n if (!task.expectedOutput) return null;\n if (\"artifactRenderer\" in task.expectedOutput) {\n throw new Error(\n `Task ${task.id} embeds an artifact renderer. Put shared renderer configuration in Environment resources and reference it from the Scenario.`,\n );\n }\n return task.expectedOutput;\n}\n\nfunction portableEnvironment(taskset: Taskset): EnvironmentContract {\n const kind: EnvironmentContract[\"kind\"] = taskset.environment.kind === \"chat\"\n ? \"text\"\n : taskset.environment.kind === \"work\" ? \"work\"\n : taskset.environment.kind === \"program\" ? \"custom_program\" : \"agent\";\n return {\n protocolVersion: \"openpond.environment.v1\",\n kind,\n entrypoint: taskset.environment.entrypoint,\n stateful: taskset.environment.stateful,\n deterministicSeeds: taskset.environment.deterministicSeeds,\n lifecycle: [\"create\", \"reset\", \"step\", \"collect\", \"destroy\"],\n networkPolicy: taskset.environment.networkPolicy,\n defaultTimeoutMs: taskset.environment.defaultTimeoutMs,\n };\n}\n\nfunction portableTools(taskset: Taskset): ToolDeclaration[] {\n const admitted = taskset.environment.metadata.portableTools;\n if (admitted !== undefined) {\n return ToolDeclarationSchema.array().max(200).parse(admitted);\n }\n const bindings = taskset.environment.actionBindings ?? [];\n if (bindings.length) return bindings.map((binding) => ({\n name: binding.modelToolName,\n description: binding.description,\n inputSchema: binding.inputSchema,\n inputSchemaHash: hash(binding.actionSchemaHash),\n sideEffect: binding.sideEffect,\n timeoutMs: binding.timeoutMs,\n }));\n return taskset.environment.toolNames.map((name) => ({\n name,\n description: `Host-provided ${name} tool.`,\n inputSchema: {},\n inputSchemaHash: contentHash({}),\n sideEffect: \"write\" as const,\n timeoutMs: taskset.environment.defaultTimeoutMs,\n }));\n}\n\nfunction portableGrader(grader: GraderSpec): PortableGraderSpec {\n const base = {\n id: grader.id,\n version: grader.version,\n weight: grader.weight,\n hardGate: grader.hardGate,\n rewardEligible: grader.rewardEligible,\n privileged: grader.privileged,\n };\n if (grader.kind === \"model_judge\") return {\n ...base,\n kind: \"model_judge\",\n rubricRef: rubricAsset(grader),\n model: modelJudgeRef(grader),\n temperature: grader.temperature,\n calibrationStatus: grader.calibrationStatus,\n };\n if (grader.kind === \"custom_verifier\") {\n if (grader.metadata.portableVerifierRef === undefined) {\n throw new Error(`Custom verifier ${grader.id} requires its immutable executable asset before publication.`);\n }\n const imported = PortableGraderSpecSchema.safeParse(grader.metadata.portableGrader);\n // An omitted portable export means \"verify\". Preserve that encoding on an\n // unchanged import so executing it does not silently replace its release.\n const preserveDefault = imported.success && imported.data.kind === \"custom_verifier\"\n && imported.data.exportName === undefined && grader.exportName === \"verify\";\n return {\n ...base,\n kind: \"custom_verifier\",\n ...(grader.runtime === undefined ? {} : { runtime: grader.runtime }),\n verifierRef: ImmutableAssetRefSchema.parse(grader.metadata.portableVerifierRef),\n timeoutMs: grader.timeoutMs,\n ...(preserveDefault ? {} : { exportName: grader.exportName }),\n networkPolicy: \"none\",\n };\n }\n if (grader.kind === \"human\") return {\n ...base,\n kind: \"human\",\n rubricRef: rubricAsset(grader),\n reviewerRole: grader.reviewerRole,\n ...(grader.form ? { form: grader.form } : {}),\n };\n return {\n ...base,\n ...portableDeterministicCheck(grader),\n };\n}\n\nfunction portableCapabilities(taskset: Taskset) {\n const admitted = taskset.metadata.portableCapabilities;\n if (admitted !== undefined) {\n return CapabilityRequirementSchema.array().max(200).parse(admitted);\n }\n return [\n ...(taskset.capabilities.requiresTools\n ? [{ id: \"tools\", required: true, scopes: taskset.environment.toolNames }]\n : []),\n ...(taskset.capabilities.requiresState\n ? [{ id: \"local-state\", required: true, scopes: [] }]\n : []),\n ...(taskset.capabilities.requiresPrivilegedGrading\n ? [{ id: \"private-verifier\", required: true, scopes: taskset.policy.hiddenGraderRefs }]\n : []),\n ...taskset.policy.connectedAppScopes.map((scope) => ({\n id: `connected-app-${segment(scope)}`,\n required: true,\n scopes: [scope],\n })),\n ].map((requirement) => ({\n ...requirement,\n portability: requirement.id === \"local-state\" ? \"host_adapter\" as const : \"portable\" as const,\n }));\n}\n\nfunction assertReleaseBindings(input: {\n draft: TasksetRelease;\n environmentRelease: ReturnType<typeof createEnvironmentRelease>;\n verifierSetRelease: ReturnType<typeof createVerifierSetRelease>;\n}): TasksetRelease {\n if (\n input.draft.environmentRelease?.id !== input.environmentRelease.id\n || input.draft.environmentRelease.contentHash !== input.environmentRelease.contentHash\n ) {\n throw new Error(\"Admitted Taskset Release binds a different Environment Release.\");\n }\n if (\n input.draft.verifierSetRelease?.id !== input.verifierSetRelease.id\n || input.draft.verifierSetRelease.contentHash !== input.verifierSetRelease.contentHash\n ) {\n throw new Error(\"Admitted Taskset Release binds a different Verifier Set Release.\");\n }\n if (contentHash(input.draft.environment) !== contentHash(input.environmentRelease.contract)) {\n throw new Error(\"Admitted Taskset Environment differs from its bound Environment Release.\");\n }\n if (contentHash(input.draft.graders) !== contentHash(input.verifierSetRelease.graders)) {\n throw new Error(\"Admitted Taskset graders differ from its bound Verifier Set Release.\");\n }\n return input.draft;\n}\n\nfunction modelJudgeRef(grader: Extract<GraderSpec, { kind: \"model_judge\" }>) {\n const previous = grader.metadata.portableGrader === undefined ? null : PortableGraderSpecSchema.parse(grader.metadata.portableGrader);\n const revision = previous?.kind === \"model_judge\" && previous.model?.providerId === grader.judge.providerId && previous.model.modelId === grader.judge.modelId ? previous.model.revision : null;\n return { ...grader.judge, revision };\n}\n\nfunction rubricAsset(grader: Extract<GraderSpec, { kind: \"human\" | \"model_judge\" }>): ImmutableAssetRef {\n const contentHash = sha256(grader.rubric);\n const sizeBytes = new TextEncoder().encode(grader.rubric).byteLength;\n const reference = grader.metadata.portableRubricRef;\n if (reference !== undefined) {\n const asset = ImmutableAssetRefSchema.parse(reference);\n if (asset.contentHash !== contentHash || asset.sizeBytes !== sizeBytes || asset.visibility === \"policy\") throw new Error(\"Taskset rubric differs from its published private source.\");\n return asset;\n }\n return { id: `rubric-${grader.id}`, path: `graders/${segment(grader.id)}/rubric.md`, contentHash, sizeBytes, mediaType: \"text/markdown\", visibility: \"verifier\" };\n}\n\nfunction hash(value: string): string {\n return /^[a-f0-9]{64}$/.test(value) ? value : contentHash(value);\n}\n\nfunction segment(value: string): string {\n const normalized = value.trim().replace(/[^a-zA-Z0-9._-]+/g, \"-\")\n .replace(/^-+|-+$/g, \"\");\n return normalized || \"asset\";\n}\n"],
5
+ "mappings": ";;;;;;;;;;;AAKA;AAAA,EACE;AAAA,EACA,oBAAoB;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAKK;AAYP,SAAS,sCAAsC;AAC/C,SAAS,qBAAqB,qBAAqB,2BAAmE;AACtH,SAAS,kCAAkC;AAIpC,SAAS,sCAAsC,SAAkB,UAAkE;AACxI,QAAM,WAAW,QAAQ,SAAS,aAAa,SAAY,OAAO,+BAA+B,MAAM,QAAQ,SAAS,QAAQ;AAChI,QAAM,WAAW,QAAQ,SAAS;AAClC,QAAM,YAAY,aAAa,WAAW;AAAA,IACxC,SAAS,oBAAoB,MAAM,SAAS,OAAO;AAAA,IACnD,SAAS,oBAAoB,MAAM,EAAE,MAAM,SAAS,OAAO;AAAA,EAC7D,IAAI;AACJ,MAAI,QAAQ,SAAS,kBAAkB,QAAW;AAChD,UAAM,YAAY,QAAQ,SAAS;AACnC,QAAI,CAAC,aAAa,CAAC,aAAa,UAAU,OAAO,UAAU,QAAQ,MAC9D,UAAU,aAAa,UAAU,QAAQ,YAAY,UAAU,gBAAgB,UAAU,QAAQ,aAAa;AACjH,YAAM,IAAI,MAAM,+DAA+D;AAAA,IACjF;AAAA,EACF;AACA,MAAI,UAAW,qBAAoB,UAAU,SAAS,UAAU,OAAO;AACvE,SAAO,YAAY,EAAE,SAAS,UAAU,SAAS,SAAS,UAAU,QAAQ,IAAI;AAClF;AAEO,SAAS,kCAAkC,OAUhD;AACA,QAAM,cAAc,oBAAoB,MAAM,OAAO;AACrD,QAAM,QAAQ,cAAc,MAAM,OAAO;AACzC,QAAM,WAAW,MAAM,QAAQ,SAAS,aAAa,SAAY,OAAO,+BAA+B,MAAM,MAAM,QAAQ,SAAS,QAAQ;AAC5I,QAAM,WAAW,MAAM,QAAQ,SAAS;AACxC,QAAM,kBAAkB,sCAAsC,MAAM,SAAS,MAAM,eAAe;AAClG,QAAM,UAAU,kBAAkB,oBAAoB,gBAAgB,SAAS,gBAAgB,OAAO,IAAI,MAAM,QAAQ,QAAQ,IAAI,cAAc;AAClJ,QAAM,QAAQ,MAAM,eAAe,SAC/B,MAAM,gBACN,MAAM,QAAQ;AAClB,MAAI,CAAC,MAAM,OAAQ,OAAM,IAAI,MAAM,wDAAwD;AAC3F,QAAM,SAAS,MAAM,QAAQ,YAAY,SAAS;AAClD,MAAI,YAAY,eAAe,wCAAwC,CAAC,OAAQ,OAAM,IAAI,MAAM,mEAAmE;AACnK,QAAM,qBAAqB,SAAS,yBAAyB,MAAM,OAAO,WAAW,IAAI,yBAAyB;AAAA,IAChH,eAAe;AAAA,IACf,IAAI,uBAAuB,MAAM,QAAQ,EAAE,KAAK,MAAM,QAAQ,QAAQ;AAAA,IACtE,UAAU,MAAM,QAAQ;AAAA,IACxB,UAAU;AAAA,IACV,iBAAiB;AAAA,IACjB,sBAAsB;AAAA,IACtB,gBAAgB;AAAA,IAChB,oBAAoB;AAAA,MAClB,cAAc;AAAA,MACd,eAAe;AAAA,IACjB;AAAA,IACA,0BAA0B;AAAA,MACxB,CAAC,MAAM,SAAS,GAAG,YAAY,EAAE,WAAW,MAAM,WAAW,aAAa,MAAM,CAAC;AAAA,IACnF;AAAA,IACA,UAAU;AAAA,MACR,iBAAiB,MAAM,QAAQ;AAAA,MAC/B,mBAAmB,MAAM,QAAQ,SAAS,qBAAqB;AAAA,MAC/D,WAAW,MAAM,QAAQ,YAAY,aAAa,CAAC;AAAA,IACrD;AAAA,EACF,CAAC;AACD,QAAM,qBAAqB,QAAQ,gBAAgB,SAAY,yBAAyB,MAAM,OAAO,WAAW,IAAI,yBAAyB;AAAA,IAC3I,eAAe;AAAA,IACf,IAAI,wBAAwB,MAAM,QAAQ,EAAE,KAAK,MAAM,QAAQ,QAAQ;AAAA,IACvE,UAAU,MAAM,QAAQ;AAAA,IACxB;AAAA,IACA,WAAW;AAAA,MACT,iBAAiB;AAAA,MACjB,eAAe;AAAA,MACf,kBAAkB,KAAK,IAAI,MAAM,QAAQ,YAAY,kBAAkB,GAAO;AAAA,IAChF;AAAA,IACA,wBAAwB,CAAC;AAAA,IACzB,UAAU,EAAE,iBAAiB,MAAM,QAAQ,GAAG;AAAA,EAChD,CAAC;AACD,MAAI,CAAC,yBAAyB,kBAAkB,KAAK,CAAC,yBAAyB,kBAAkB,KAC7F,YAAY,mBAAmB,QAAQ,MAAM,YAAY,WAAW,KAAK,YAAY,mBAAmB,OAAO,MAAM,YAAY,OAAO,GAAG;AAC7I,UAAM,IAAI,MAAM,8EAA8E;AAAA,EAChG;AACA,QAAM,iBAAiB,4BAA4B,MAAM;AAAA,IACvD,eAAe;AAAA,IACf,IAAI,MAAM,QAAQ,SAAS,4BAA4B,SAAY,mBAAmB,MAAM,QAAQ,EAAE,KAAK,MAAM,QAAQ,QAAQ,KAAK,MAAM,QAAQ;AAAA,IACpJ,UAAU,MAAM,QAAQ;AAAA,IACxB,QAAQ;AAAA,MACN,qBAAqB,MAAM,QAAQ,OAAO;AAAA,MAC1C,kBAAkB,MAAM,QAAQ,OAAO;AAAA,MACvC,kBAAkB,MAAM,QAAQ,OAAO;AAAA,MACvC,oBAAoB,MAAM,QAAQ,OAAO;AAAA,IAC3C;AAAA,IACA;AAAA,IACA;AAAA,IACA,cAAc,qBAAqB,MAAM,OAAO;AAAA,IAChD,OAAO,MAAM,IAAI,yBAAyB;AAAA,IAC1C;AAAA,IACA,GAAI,MAAM,QAAQ,UAAU,EAAE,SAAS,MAAM,QAAQ,QAAQ,IAAI,CAAC;AAAA,IAClE,UAAU,MAAM,QAAQ,SAAS,2BAA2B;AAAA,MAC1D,iBAAiB,MAAM,QAAQ;AAAA,MAC/B,mBAAmB,MAAM,QAAQ;AAAA,MACjC,mBAAmB,MAAM,QAAQ,SAAS,qBAAqB;AAAA,MAC/D,sBAAsB,MAAM,QAAQ,YAAY,aAAa,CAAC;AAAA,MAC9D,mBAAmB;AAAA,QACjB,cAAc,MAAM,QAAQ;AAAA,QAC5B,gBAAgB,MAAM,QAAQ;AAAA,QAC9B,0BAA0B,OAAO,YAAY,MAAM,QAAQ,QACxD,OAAO,YAAU,OAAO,SAAS,aAAa,EAC9C,IAAI,YAAU,CAAC,OAAO,IAAI,OAAO,sBAAsB,CAAC,CAAC;AAAA,MAC9D;AAAA,MACA,GAAI,WAAW,EAAE,SAAS,IAAI,CAAC;AAAA;AAAA;AAAA,MAG/B,GAAI,mBAAmB,CAAC,aAAa,MAAM,mBAAmB,YAAY,EAAE,iBAAiB,EAAE,SAAS,gBAAgB,SAAS,SAAS,gBAAgB,QAAQ,EAAE,IAAI,CAAC;AAAA,IAC3K;AAAA,EACF,CAAC;AACD,QAAM,QAAQ,MAAM,yBAChB,qBAAqB,MAAM,MAAM,sBAAsB,IACvD,qBAAqB,MAAM;AAAA,IAC3B,GAAG;AAAA,IACH,aAAa,YAAY,cAAc;AAAA,EACzC,CAAC;AACH,QAAM,iBAAiB,MAAM,qBACzB,sBAAsB,EAAE,OAAO,oBAAoB,mBAAmB,CAAC,IACvE,6BAA6B;AAAA,IAC7B,SAAS;AAAA,IACT,aAAa;AAAA,IACb,aAAa;AAAA,EACf,CAAC;AACH,SAAO,EAAE,oBAAoB,oBAAoB,eAAe;AAClE;AAOO,SAAS,mCAAmC,OAGnB;AAC9B,MAAI,CAAC,kCAAkC,MAAM,oBAAoB,GAAG;AAClE,UAAM,IAAI,MAAM,sEAAsE;AAAA,EACxF;AACA,QAAM,UAAU,MAAM;AACtB,MACE,QAAQ,eAAe,OAAO,MAAM,eAAe,MAChD,QAAQ,eAAe,gBAAgB,MAAM,eAAe,aAC/D;AACA,UAAM,IAAI,MAAM,qFAAqF;AAAA,EACvG;AACA,SAAO;AACT;AAEO,SAAS,2BAA2B,SAAuC;AAChF,SAAO,oBAAoB,OAAO;AACpC;AAEO,SAAS,qBAAqB,SAAqC;AACxE,SAAO,cAAc,OAAO;AAC9B;AAGO,SAAS,0BAA0B,MAAsB;AAC9D,QAAM,WAAW,KAAK,SAAS;AAC/B,MAAI,aAAa,QAAW;AAC1B,UAAM,WAAW,iBAAiB,MAAM,QAAQ;AAChD,UAAM,YAAY,iBAAiB,MAAM;AAAA,MACvC,GAAG;AAAA,MACH,IAAI,KAAK;AAAA,MACT,YAAY,KAAK;AAAA,MACjB,OAAO,KAAK;AAAA,MACZ,OAAO,KAAK;AAAA,MACZ,gBAAgB,uBAAuB,IAAI;AAAA,MAC3C,sBAAsB,KAAK;AAAA,MAC3B,sBAAsB,KAAK;AAAA,MAC3B,MAAM,KAAK;AAAA,MACX,cAAc,KAAK,WAAW,SAAY,SAAS,eAAe,KAAK,OAAO,IAAI,CAAC,UAAU;AAC3F,cAAM,WAAW,SAAS,aAAa,KAAK,UAAQ,KAAK,OAAO,MAAM,EAAE;AACxE,eAAO;AAAA,UACL,IAAI,MAAM;AAAA,UACV,MAAM,UAAU,QAAQ,SAAS,QAAQ,KAAK,EAAE,CAAC,IAAI,QAAQ,MAAM,QAAQ,CAAC;AAAA,UAC5E,aAAa,KAAK,MAAM,MAAM;AAAA,UAC9B,WAAW,MAAM;AAAA,UACjB,WAAW,MAAM;AAAA,UACjB,YAAY,UAAU,cAAc;AAAA,QACtC;AAAA,MACF,CAAC;AAAA,MACD,iBAAiB,KAAK,oBAAoB,SAAY,SAAS,kBAAkB,KAAK,gBAAgB,IAAI,CAAC,WAAW;AACpH,cAAM,WAAW,SAAS,iBAAiB,KAAK,UAAQ,KAAK,SAAS,OAAO,IAAI;AACjF,eAAO;AAAA,UACL,MAAM,OAAO;AAAA,UACb,WAAW,OAAO;AAAA,UAClB,WAAW,UAAU,aAAa,SAAS,UAAU,OAAO,OAAO,YAAY,SAAS,YAAY;AAAA,UACpG,UAAU,OAAO,YAAY;AAAA,UAC7B,UAAU;AAAA,YACR,GAAG,OAAO;AAAA,YACV,GAAI,OAAO,aAAa,UAAU,WAAW,OAAO,OAAO,YACvD,EAAE,iBAAiB,OAAO,UAAU,IACpC,CAAC;AAAA,UACP;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AACD,QAAI,UAAU,oBAAoB,OAAW,QAAO,UAAU;AAC9D,WAAO;AAAA,EACT;AACA,SAAO;AAAA,IACL,IAAI,KAAK;AAAA,IACT,YAAY,KAAK;AAAA,IACjB,OAAO,KAAK;AAAA,IACZ,OAAO,KAAK;AAAA,IACZ,gBAAgB,uBAAuB,IAAI;AAAA,IAC3C,sBAAsB,KAAK;AAAA,IAC3B,sBAAsB,KAAK;AAAA,IAC3B,eAAe,KAAK,UAAU,CAAC,GAAG,IAAI,CAAC,UAAU;AAAA,MAC/C,IAAI,KAAK;AAAA,MACT,MAAM,SAAS,QAAQ,KAAK,EAAE,CAAC,IAAI,QAAQ,KAAK,QAAQ,CAAC;AAAA,MACzD,aAAa,KAAK,KAAK,MAAM;AAAA,MAC7B,WAAW,KAAK;AAAA,MAChB,WAAW,KAAK;AAAA,MAChB,YAAY;AAAA,IACd,EAAE;AAAA,IACF,kBAAkB,KAAK,mBAAmB,CAAC,GAAG,IAAI,CAAC,YAAY;AAAA,MAC7D,MAAM,OAAO;AAAA,MACb,WAAW,OAAO;AAAA,MAClB,WAAW;AAAA,MACX,UAAU,OAAO,YAAY;AAAA,MAC7B,UAAU;AAAA,QACR,GAAG,OAAO;AAAA,QACV,iBAAiB,OAAO,aAAa;AAAA,MACvC;AAAA,IACF,EAAE;AAAA,IACF,MAAM,KAAK;AAAA,EACb;AACF;AAEA,SAAS,uBACP,MACgC;AAChC,MAAI,CAAC,KAAK,eAAgB,QAAO;AACjC,MAAI,sBAAsB,KAAK,gBAAgB;AAC7C,UAAM,IAAI;AAAA,MACR,QAAQ,KAAK,EAAE;AAAA,IACjB;AAAA,EACF;AACA,SAAO,KAAK;AACd;AAEA,SAAS,oBAAoB,SAAuC;AAClE,QAAM,OAAoC,QAAQ,YAAY,SAAS,SACnE,SACA,QAAQ,YAAY,SAAS,SAAS,SACpC,QAAQ,YAAY,SAAS,YAAY,mBAAmB;AAClE,SAAO;AAAA,IACL,iBAAiB;AAAA,IACjB;AAAA,IACA,YAAY,QAAQ,YAAY;AAAA,IAChC,UAAU,QAAQ,YAAY;AAAA,IAC9B,oBAAoB,QAAQ,YAAY;AAAA,IACxC,WAAW,CAAC,UAAU,SAAS,QAAQ,WAAW,SAAS;AAAA,IAC3D,eAAe,QAAQ,YAAY;AAAA,IACnC,kBAAkB,QAAQ,YAAY;AAAA,EACxC;AACF;AAEA,SAAS,cAAc,SAAqC;AAC1D,QAAM,WAAW,QAAQ,YAAY,SAAS;AAC9C,MAAI,aAAa,QAAW;AAC1B,WAAO,sBAAsB,MAAM,EAAE,IAAI,GAAG,EAAE,MAAM,QAAQ;AAAA,EAC9D;AACA,QAAM,WAAW,QAAQ,YAAY,kBAAkB,CAAC;AACxD,MAAI,SAAS,OAAQ,QAAO,SAAS,IAAI,CAAC,aAAa;AAAA,IACrD,MAAM,QAAQ;AAAA,IACd,aAAa,QAAQ;AAAA,IACrB,aAAa,QAAQ;AAAA,IACrB,iBAAiB,KAAK,QAAQ,gBAAgB;AAAA,IAC9C,YAAY,QAAQ;AAAA,IACpB,WAAW,QAAQ;AAAA,EACrB,EAAE;AACF,SAAO,QAAQ,YAAY,UAAU,IAAI,CAAC,UAAU;AAAA,IAClD;AAAA,IACA,aAAa,iBAAiB,IAAI;AAAA,IAClC,aAAa,CAAC;AAAA,IACd,iBAAiB,YAAY,CAAC,CAAC;AAAA,IAC/B,YAAY;AAAA,IACZ,WAAW,QAAQ,YAAY;AAAA,EACjC,EAAE;AACJ;AAEA,SAAS,eAAe,QAAwC;AAC9D,QAAM,OAAO;AAAA,IACX,IAAI,OAAO;AAAA,IACX,SAAS,OAAO;AAAA,IAChB,QAAQ,OAAO;AAAA,IACf,UAAU,OAAO;AAAA,IACjB,gBAAgB,OAAO;AAAA,IACvB,YAAY,OAAO;AAAA,EACrB;AACA,MAAI,OAAO,SAAS,cAAe,QAAO;AAAA,IACxC,GAAG;AAAA,IACH,MAAM;AAAA,IACN,WAAW,YAAY,MAAM;AAAA,IAC7B,OAAO,cAAc,MAAM;AAAA,IAC3B,aAAa,OAAO;AAAA,IACpB,mBAAmB,OAAO;AAAA,EAC5B;AACA,MAAI,OAAO,SAAS,mBAAmB;AACrC,QAAI,OAAO,SAAS,wBAAwB,QAAW;AACrD,YAAM,IAAI,MAAM,mBAAmB,OAAO,EAAE,8DAA8D;AAAA,IAC5G;AACA,UAAM,WAAW,yBAAyB,UAAU,OAAO,SAAS,cAAc;AAGlF,UAAM,kBAAkB,SAAS,WAAW,SAAS,KAAK,SAAS,qBAC9D,SAAS,KAAK,eAAe,UAAa,OAAO,eAAe;AACrE,WAAO;AAAA,MACL,GAAG;AAAA,MACH,MAAM;AAAA,MACN,GAAI,OAAO,YAAY,SAAY,CAAC,IAAI,EAAE,SAAS,OAAO,QAAQ;AAAA,MAClE,aAAa,wBAAwB,MAAM,OAAO,SAAS,mBAAmB;AAAA,MAC9E,WAAW,OAAO;AAAA,MAClB,GAAI,kBAAkB,CAAC,IAAI,EAAE,YAAY,OAAO,WAAW;AAAA,MAC3D,eAAe;AAAA,IACjB;AAAA,EACF;AACA,MAAI,OAAO,SAAS,QAAS,QAAO;AAAA,IAClC,GAAG;AAAA,IACH,MAAM;AAAA,IACN,WAAW,YAAY,MAAM;AAAA,IAC7B,cAAc,OAAO;AAAA,IACrB,GAAI,OAAO,OAAO,EAAE,MAAM,OAAO,KAAK,IAAI,CAAC;AAAA,EAC7C;AACA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG,2BAA2B,MAAM;AAAA,EACtC;AACF;AAEA,SAAS,qBAAqB,SAAkB;AAC9C,QAAM,WAAW,QAAQ,SAAS;AAClC,MAAI,aAAa,QAAW;AAC1B,WAAO,4BAA4B,MAAM,EAAE,IAAI,GAAG,EAAE,MAAM,QAAQ;AAAA,EACpE;AACA,SAAO;AAAA,IACL,GAAI,QAAQ,aAAa,gBACrB,CAAC,EAAE,IAAI,SAAS,UAAU,MAAM,QAAQ,QAAQ,YAAY,UAAU,CAAC,IACvE,CAAC;AAAA,IACL,GAAI,QAAQ,aAAa,gBACrB,CAAC,EAAE,IAAI,eAAe,UAAU,MAAM,QAAQ,CAAC,EAAE,CAAC,IAClD,CAAC;AAAA,IACL,GAAI,QAAQ,aAAa,4BACrB,CAAC,EAAE,IAAI,oBAAoB,UAAU,MAAM,QAAQ,QAAQ,OAAO,iBAAiB,CAAC,IACpF,CAAC;AAAA,IACL,GAAG,QAAQ,OAAO,mBAAmB,IAAI,CAAC,WAAW;AAAA,MACnD,IAAI,iBAAiB,QAAQ,KAAK,CAAC;AAAA,MACnC,UAAU;AAAA,MACV,QAAQ,CAAC,KAAK;AAAA,IAChB,EAAE;AAAA,EACJ,EAAE,IAAI,CAAC,iBAAiB;AAAA,IACtB,GAAG;AAAA,IACH,aAAa,YAAY,OAAO,gBAAgB,iBAA0B;AAAA,EAC5E,EAAE;AACJ;AAEA,SAAS,sBAAsB,OAIZ;AACjB,MACE,MAAM,MAAM,oBAAoB,OAAO,MAAM,mBAAmB,MAC7D,MAAM,MAAM,mBAAmB,gBAAgB,MAAM,mBAAmB,aAC3E;AACA,UAAM,IAAI,MAAM,iEAAiE;AAAA,EACnF;AACA,MACE,MAAM,MAAM,oBAAoB,OAAO,MAAM,mBAAmB,MAC7D,MAAM,MAAM,mBAAmB,gBAAgB,MAAM,mBAAmB,aAC3E;AACA,UAAM,IAAI,MAAM,kEAAkE;AAAA,EACpF;AACA,MAAI,YAAY,MAAM,MAAM,WAAW,MAAM,YAAY,MAAM,mBAAmB,QAAQ,GAAG;AAC3F,UAAM,IAAI,MAAM,0EAA0E;AAAA,EAC5F;AACA,MAAI,YAAY,MAAM,MAAM,OAAO,MAAM,YAAY,MAAM,mBAAmB,OAAO,GAAG;AACtF,UAAM,IAAI,MAAM,sEAAsE;AAAA,EACxF;AACA,SAAO,MAAM;AACf;AAEA,SAAS,cAAc,QAAsD;AAC3E,QAAM,WAAW,OAAO,SAAS,mBAAmB,SAAY,OAAO,yBAAyB,MAAM,OAAO,SAAS,cAAc;AACpI,QAAM,WAAW,UAAU,SAAS,iBAAiB,SAAS,OAAO,eAAe,OAAO,MAAM,cAAc,SAAS,MAAM,YAAY,OAAO,MAAM,UAAU,SAAS,MAAM,WAAW;AAC3L,SAAO,EAAE,GAAG,OAAO,OAAO,SAAS;AACrC;AAEA,SAAS,YAAY,QAAmF;AACtG,QAAMA,eAAc,OAAO,OAAO,MAAM;AACxC,QAAM,YAAY,IAAI,YAAY,EAAE,OAAO,OAAO,MAAM,EAAE;AAC1D,QAAM,YAAY,OAAO,SAAS;AAClC,MAAI,cAAc,QAAW;AAC3B,UAAM,QAAQ,wBAAwB,MAAM,SAAS;AACrD,QAAI,MAAM,gBAAgBA,gBAAe,MAAM,cAAc,aAAa,MAAM,eAAe,SAAU,OAAM,IAAI,MAAM,2DAA2D;AACpL,WAAO;AAAA,EACT;AACA,SAAO,EAAE,IAAI,UAAU,OAAO,EAAE,IAAI,MAAM,WAAW,QAAQ,OAAO,EAAE,CAAC,cAAc,aAAAA,cAAa,WAAW,WAAW,iBAAiB,YAAY,WAAW;AAClK;AAEA,SAAS,KAAK,OAAuB;AACnC,SAAO,iBAAiB,KAAK,KAAK,IAAI,QAAQ,YAAY,KAAK;AACjE;AAEA,SAAS,QAAQ,OAAuB;AACtC,QAAM,aAAa,MAAM,KAAK,EAAE,QAAQ,qBAAqB,GAAG,EAC7D,QAAQ,YAAY,EAAE;AACzB,SAAO,cAAc;AACvB;",
6
6
  "names": ["contentHash"]
7
7
  }
@@ -3,16 +3,16 @@ import {
3
3
  publishTasksetDraft,
4
4
  renderTasksetDraftManifests,
5
5
  validateTasksetDraftWorkspace
6
- } from "./chunk-R3M6BIOK.js";
6
+ } from "./chunk-JEUHIQWF.js";
7
7
  import {
8
8
  materializePortableTasksetRelease,
9
9
  portableTasksetEnvironment,
10
10
  projectPortableTaskRecord
11
- } from "./chunk-CSWVE3E6.js";
11
+ } from "./chunk-MW2N3BX5.js";
12
12
  import {
13
13
  TasksetSchema,
14
14
  computeTasksetHash
15
- } from "./chunk-XJDWHTH5.js";
15
+ } from "./chunk-CPEOFPPF.js";
16
16
  import {
17
17
  MAX_TASKSET_PACKAGE_BYTES,
18
18
  ModelStarterExecutionSchema,
@@ -28,7 +28,7 @@ import {
28
28
  resolveTasksetPackageExecution,
29
29
  resolveTasksetPackageInstructions,
30
30
  validateTasksetPackage
31
- } from "./chunk-JA3KFK3U.js";
31
+ } from "./chunk-LFH4EKWH.js";
32
32
  import {
33
33
  ModelTasksetAuthoringOwnerSchema,
34
34
  ModelTasksetDraftPreparationSchema,
@@ -199,7 +199,7 @@ import { z } from "zod";
199
199
 
200
200
  // src/taskset-authored-tool-environment.ts
201
201
  import { createEnvironmentRelease } from "@openpond/evals";
202
- import { JavaScriptEnvironmentDefinitionSchema } from "@openpond/evals/javascript-environment";
202
+ import { JavaScriptEnvironmentDefinitionSchema } from "@openpond/evals/javascript-environment/contracts";
203
203
  import { learningRef as learningRef3, sealLearningContent as sealLearningContent3 } from "@openpond/evals/learning";
204
204
  function prepareAuthoredToolEnvironment(taskset, bytes, inventory, adapterId) {
205
205
  if (taskset.environment.entrypoint !== "openpond.javascript-environment.v1") return { taskset, inventory, generatedFiles: [] };
@@ -382,4 +382,4 @@ export {
382
382
  compileTasksetDraftWorkspace,
383
383
  compileModelTasksetDraftWorkspace
384
384
  };
385
- //# sourceMappingURL=chunk-IXBSFJCX.js.map
385
+ //# sourceMappingURL=chunk-QVCMFQKA.js.map