openpond-sdk 0.11.5 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. package/TASKSETS.md +13 -0
  2. package/dist/advanced-refiner-evaluations.js +6 -6
  3. package/dist/candidate-evaluations.js +5 -5
  4. package/dist/{chunk-2G4WBMYI.js → chunk-32GJS7FV.js} +6 -6
  5. package/dist/{chunk-Z4OLAEPL.js → chunk-644E3NM2.js} +10 -3
  6. package/dist/chunk-644E3NM2.js.map +7 -0
  7. package/dist/{chunk-YGLTO26A.js → chunk-7L4NIEW2.js} +2 -2
  8. package/dist/{chunk-VEU3IXAQ.js → chunk-7MISLCN2.js} +2 -2
  9. package/dist/{chunk-WTHJ3H4M.js → chunk-7WUJBFCH.js} +2 -2
  10. package/dist/{chunk-PHETIB6R.js → chunk-AV5JV26B.js} +2 -2
  11. package/dist/{chunk-Z4JJS6KE.js → chunk-B7VYE7YQ.js} +2 -2
  12. package/dist/{chunk-AQGFJLIV.js → chunk-BDDT6VN6.js} +5 -5
  13. package/dist/{chunk-DUJXF7YI.js → chunk-CK3ONRRC.js} +71 -59
  14. package/dist/chunk-CK3ONRRC.js.map +7 -0
  15. package/dist/{chunk-PMBBNQ2J.js → chunk-D4WTE6ZA.js} +2 -2
  16. package/dist/{chunk-ZOXHSJWU.js → chunk-DBRRQASP.js} +2 -2
  17. package/dist/{chunk-FZH2M4G6.js → chunk-DG5CRENU.js} +2 -2
  18. package/dist/{chunk-P3BRSSRD.js → chunk-FWX7SH7Y.js} +307 -258
  19. package/dist/chunk-FWX7SH7Y.js.map +7 -0
  20. package/dist/chunk-FZYLRL7H.js +100 -0
  21. package/dist/chunk-FZYLRL7H.js.map +7 -0
  22. package/dist/{chunk-JOKRT4CK.js → chunk-KV6JXPQH.js} +5 -2
  23. package/dist/{chunk-JOKRT4CK.js.map → chunk-KV6JXPQH.js.map} +2 -2
  24. package/dist/{chunk-HAOPRFYQ.js → chunk-L5PQPAU6.js} +2 -2
  25. package/dist/{chunk-DUPHBKVV.js → chunk-LHRHB5EJ.js} +2 -2
  26. package/dist/{chunk-5GMY4TTF.js → chunk-OEPYLZXK.js} +2 -2
  27. package/dist/chunk-SVBV2VEK.js +181 -0
  28. package/dist/chunk-SVBV2VEK.js.map +7 -0
  29. package/dist/{chunk-XYVPLV6Z.js → chunk-TTAFUUHZ.js} +3 -3
  30. package/dist/{chunk-2DLFHAGW.js → chunk-UK2KWJIQ.js} +12 -9
  31. package/dist/{chunk-2DLFHAGW.js.map → chunk-UK2KWJIQ.js.map} +3 -3
  32. package/dist/{chunk-K2OH56BH.js → chunk-UVREOAMH.js} +3 -3
  33. package/dist/{chunk-LQ5Q35IF.js → chunk-WYGBGCRO.js} +7 -5
  34. package/dist/chunk-WYGBGCRO.js.map +7 -0
  35. package/dist/{chunk-FDHIL2CV.js → chunk-X6J3VVYC.js} +9 -6
  36. package/dist/{chunk-FDHIL2CV.js.map → chunk-X6J3VVYC.js.map} +2 -2
  37. package/dist/{chunk-PXNHL3SH.js → chunk-YRTA3G6O.js} +11 -4
  38. package/dist/chunk-YRTA3G6O.js.map +7 -0
  39. package/dist/{chunk-35OVUYPI.js → chunk-YSKUXQ2N.js} +3 -3
  40. package/dist/connected-evidence.js +51 -26
  41. package/dist/dataset-workspaces.js +1136 -34
  42. package/dist/dataset-workspaces.js.map +4 -4
  43. package/dist/experiment-evaluation-schedules.js +18 -18
  44. package/dist/experiment-improvements.js +7 -7
  45. package/dist/experiments.js +19 -17
  46. package/dist/index.js +60 -35
  47. package/dist/index.js.map +1 -1
  48. package/dist/model-starter-attempts.js +1 -1
  49. package/dist/model-starter-catalog.js +9 -9
  50. package/dist/model-starters.js +9 -9
  51. package/dist/model-taskset-runs.js +2 -2
  52. package/dist/post-training.js +5 -5
  53. package/dist/taskset-drafts.js +117 -72
  54. package/dist/taskset-drafts.js.map +4 -4
  55. package/dist/taskset-packages.js +15 -15
  56. package/dist/training-bundle.js +17 -13
  57. package/dist/training-bundle.js.map +2 -2
  58. package/dist/training.js +7 -7
  59. package/dist/types/packages/sdk/src/advanced-refiner-evaluations.d.ts +3 -3
  60. package/dist/types/packages/sdk/src/candidate-evaluation-client.d.ts +24 -3
  61. package/dist/types/packages/sdk/src/candidate-evaluation-client.d.ts.map +1 -1
  62. package/dist/types/packages/sdk/src/candidate-evaluations.d.ts +26 -2
  63. package/dist/types/packages/sdk/src/candidate-evaluations.d.ts.map +1 -1
  64. package/dist/types/packages/sdk/src/codex-experiment-runtime.d.ts +17 -0
  65. package/dist/types/packages/sdk/src/codex-experiment-runtime.d.ts.map +1 -0
  66. package/dist/types/packages/sdk/src/connected-dataset-source.d.ts +1 -0
  67. package/dist/types/packages/sdk/src/connected-dataset-source.d.ts.map +1 -1
  68. package/dist/types/packages/sdk/src/connected-evidence-client.d.ts +80 -9
  69. package/dist/types/packages/sdk/src/connected-evidence-client.d.ts.map +1 -1
  70. package/dist/types/packages/sdk/src/connected-evidence-contracts.d.ts +3 -2
  71. package/dist/types/packages/sdk/src/connected-evidence-contracts.d.ts.map +1 -1
  72. package/dist/types/packages/sdk/src/connected-evidence.d.ts +3 -0
  73. package/dist/types/packages/sdk/src/connected-evidence.d.ts.map +1 -1
  74. package/dist/types/packages/sdk/src/connected-starting-assets.d.ts +98 -0
  75. package/dist/types/packages/sdk/src/connected-starting-assets.d.ts.map +1 -0
  76. package/dist/types/packages/sdk/src/connected-sync.d.ts +138 -8
  77. package/dist/types/packages/sdk/src/connected-sync.d.ts.map +1 -1
  78. package/dist/types/packages/sdk/src/dataset-preparation-assembly.d.ts +11 -0
  79. package/dist/types/packages/sdk/src/dataset-preparation-assembly.d.ts.map +1 -0
  80. package/dist/types/packages/sdk/src/dataset-preparation-authoring-contracts.d.ts +1357 -0
  81. package/dist/types/packages/sdk/src/dataset-preparation-authoring-contracts.d.ts.map +1 -0
  82. package/dist/types/packages/sdk/src/dataset-preparation-client.d.ts +831 -0
  83. package/dist/types/packages/sdk/src/dataset-preparation-client.d.ts.map +1 -0
  84. package/dist/types/packages/sdk/src/dataset-preparation-contracts.d.ts +860 -0
  85. package/dist/types/packages/sdk/src/dataset-preparation-contracts.d.ts.map +1 -0
  86. package/dist/types/packages/sdk/src/dataset-preparation-qualification-contracts.d.ts +89 -0
  87. package/dist/types/packages/sdk/src/dataset-preparation-qualification-contracts.d.ts.map +1 -0
  88. package/dist/types/packages/sdk/src/dataset-preparation-research-contracts.d.ts +203 -0
  89. package/dist/types/packages/sdk/src/dataset-preparation-research-contracts.d.ts.map +1 -0
  90. package/dist/types/packages/sdk/src/dataset-preparation-starting-state.d.ts +76 -0
  91. package/dist/types/packages/sdk/src/dataset-preparation-starting-state.d.ts.map +1 -0
  92. package/dist/types/packages/sdk/src/dataset-preparation-workspace.d.ts +630 -0
  93. package/dist/types/packages/sdk/src/dataset-preparation-workspace.d.ts.map +1 -0
  94. package/dist/types/packages/sdk/src/dataset-workspace-client.d.ts +58 -14
  95. package/dist/types/packages/sdk/src/dataset-workspace-client.d.ts.map +1 -1
  96. package/dist/types/packages/sdk/src/dataset-workspace-contracts.d.ts +12 -0
  97. package/dist/types/packages/sdk/src/dataset-workspace-contracts.d.ts.map +1 -1
  98. package/dist/types/packages/sdk/src/dataset-workspace-operations.d.ts +12 -0
  99. package/dist/types/packages/sdk/src/dataset-workspace-operations.d.ts.map +1 -1
  100. package/dist/types/packages/sdk/src/dataset-workspaces.d.ts +7 -0
  101. package/dist/types/packages/sdk/src/dataset-workspaces.d.ts.map +1 -1
  102. package/dist/types/packages/sdk/src/experiment-client.d.ts +88 -11
  103. package/dist/types/packages/sdk/src/experiment-client.d.ts.map +1 -1
  104. package/dist/types/packages/sdk/src/experiment-contracts.d.ts +40 -4
  105. package/dist/types/packages/sdk/src/experiment-contracts.d.ts.map +1 -1
  106. package/dist/types/packages/sdk/src/experiment-evaluation-schedules.d.ts +71 -7
  107. package/dist/types/packages/sdk/src/experiment-evaluation-schedules.d.ts.map +1 -1
  108. package/dist/types/packages/sdk/src/experiment-run-contracts.d.ts +13 -1
  109. package/dist/types/packages/sdk/src/experiment-run-contracts.d.ts.map +1 -1
  110. package/dist/types/packages/sdk/src/experiment-run-details.d.ts +60 -5
  111. package/dist/types/packages/sdk/src/experiment-run-details.d.ts.map +1 -1
  112. package/dist/types/packages/sdk/src/experiments.d.ts +1 -0
  113. package/dist/types/packages/sdk/src/experiments.d.ts.map +1 -1
  114. package/dist/types/packages/sdk/src/harness-experiment-policy.d.ts +1 -1
  115. package/dist/types/packages/sdk/src/learning-batch-assets.d.ts +1 -0
  116. package/dist/types/packages/sdk/src/learning-batch-assets.d.ts.map +1 -1
  117. package/dist/types/packages/sdk/src/model-batch-review-contracts.d.ts +5 -0
  118. package/dist/types/packages/sdk/src/model-batch-review-contracts.d.ts.map +1 -1
  119. package/dist/types/packages/sdk/src/model-batch-review-preparation.d.ts +1 -0
  120. package/dist/types/packages/sdk/src/model-batch-review-preparation.d.ts.map +1 -1
  121. package/dist/types/packages/sdk/src/model-batch-review.d.ts +7 -4
  122. package/dist/types/packages/sdk/src/model-batch-review.d.ts.map +1 -1
  123. package/dist/types/packages/sdk/src/model-starter-attempts.d.ts +102 -4
  124. package/dist/types/packages/sdk/src/model-starter-attempts.d.ts.map +1 -1
  125. package/dist/types/packages/sdk/src/model-starter-catalog.d.ts +9 -0
  126. package/dist/types/packages/sdk/src/model-starter-catalog.d.ts.map +1 -1
  127. package/dist/types/packages/sdk/src/model-starter-execution.d.ts +4 -0
  128. package/dist/types/packages/sdk/src/model-starter-execution.d.ts.map +1 -1
  129. package/dist/types/packages/sdk/src/model-starters.d.ts +18 -0
  130. package/dist/types/packages/sdk/src/model-starters.d.ts.map +1 -1
  131. package/dist/types/packages/sdk/src/model-taskset-derivation.d.ts +13 -0
  132. package/dist/types/packages/sdk/src/model-taskset-derivation.d.ts.map +1 -1
  133. package/dist/types/packages/sdk/src/model-taskset-resources.d.ts +4 -0
  134. package/dist/types/packages/sdk/src/model-taskset-resources.d.ts.map +1 -1
  135. package/dist/types/packages/sdk/src/model-taskset-runs-contracts.d.ts +52 -4
  136. package/dist/types/packages/sdk/src/model-taskset-runs-contracts.d.ts.map +1 -1
  137. package/dist/types/packages/sdk/src/model-taskset-runs.d.ts +32 -4
  138. package/dist/types/packages/sdk/src/model-taskset-runs.d.ts.map +1 -1
  139. package/dist/types/packages/sdk/src/post-training.d.ts +60 -5
  140. package/dist/types/packages/sdk/src/post-training.d.ts.map +1 -1
  141. package/dist/types/packages/sdk/src/profile-external-dataset-package.d.ts +19 -4
  142. package/dist/types/packages/sdk/src/profile-external-dataset-package.d.ts.map +1 -1
  143. package/dist/types/packages/sdk/src/task-design-contracts.d.ts +367 -0
  144. package/dist/types/packages/sdk/src/task-design-contracts.d.ts.map +1 -0
  145. package/dist/types/packages/sdk/src/taskset-authored-contracts.d.ts +6 -0
  146. package/dist/types/packages/sdk/src/taskset-authored-contracts.d.ts.map +1 -1
  147. package/dist/types/packages/sdk/src/taskset-authored-files.d.ts +9 -3
  148. package/dist/types/packages/sdk/src/taskset-authored-files.d.ts.map +1 -1
  149. package/dist/types/packages/sdk/src/taskset-authored-portable-release.d.ts.map +1 -1
  150. package/dist/types/packages/sdk/src/taskset-calibration-fixtures.d.ts +5 -0
  151. package/dist/types/packages/sdk/src/taskset-calibration-fixtures.d.ts.map +1 -1
  152. package/dist/types/packages/sdk/src/taskset-draft-api-contracts.d.ts +12 -0
  153. package/dist/types/packages/sdk/src/taskset-draft-api-contracts.d.ts.map +1 -1
  154. package/dist/types/packages/sdk/src/taskset-draft-client.d.ts +48 -12
  155. package/dist/types/packages/sdk/src/taskset-draft-client.d.ts.map +1 -1
  156. package/dist/types/packages/sdk/src/taskset-draft-core.d.ts +11 -0
  157. package/dist/types/packages/sdk/src/taskset-draft-core.d.ts.map +1 -1
  158. package/dist/types/packages/sdk/src/taskset-draft-document.d.ts +7 -0
  159. package/dist/types/packages/sdk/src/taskset-draft-document.d.ts.map +1 -1
  160. package/dist/types/packages/sdk/src/taskset-draft-files.d.ts.map +1 -1
  161. package/dist/types/packages/sdk/src/taskset-draft-package-compiler.d.ts +38 -8
  162. package/dist/types/packages/sdk/src/taskset-draft-package-compiler.d.ts.map +1 -1
  163. package/dist/types/packages/sdk/src/taskset-draft-source.d.ts +14 -2
  164. package/dist/types/packages/sdk/src/taskset-draft-source.d.ts.map +1 -1
  165. package/dist/types/packages/sdk/src/taskset-draft-workspace.d.ts +12 -0
  166. package/dist/types/packages/sdk/src/taskset-draft-workspace.d.ts.map +1 -1
  167. package/dist/types/packages/sdk/src/taskset-drafts.d.ts +2 -0
  168. package/dist/types/packages/sdk/src/taskset-drafts.d.ts.map +1 -1
  169. package/dist/types/packages/sdk/src/taskset-package-client.d.ts +68 -0
  170. package/dist/types/packages/sdk/src/taskset-package-client.d.ts.map +1 -1
  171. package/dist/types/packages/sdk/src/taskset-package-contracts.d.ts +35 -0
  172. package/dist/types/packages/sdk/src/taskset-package-contracts.d.ts.map +1 -1
  173. package/dist/types/packages/sdk/src/taskset-package-files.d.ts.map +1 -1
  174. package/dist/types/packages/sdk/src/taskset-package-grader-projection.d.ts +5 -1
  175. package/dist/types/packages/sdk/src/taskset-package-grader-projection.d.ts.map +1 -1
  176. package/dist/types/packages/sdk/src/taskset-package-learning.d.ts +10 -4
  177. package/dist/types/packages/sdk/src/taskset-package-learning.d.ts.map +1 -1
  178. package/dist/types/packages/sdk/src/taskset-package-projection.d.ts +34 -12
  179. package/dist/types/packages/sdk/src/taskset-package-projection.d.ts.map +1 -1
  180. package/dist/types/packages/sdk/src/training-bundle.d.ts.map +1 -1
  181. package/dist/types/packages/sdk/src/training-learning-batch.d.ts +26 -6
  182. package/dist/types/packages/sdk/src/training-learning-batch.d.ts.map +1 -1
  183. package/dist/types/packages/sdk/src/training.d.ts +8 -1
  184. package/dist/types/packages/sdk/src/training.d.ts.map +1 -1
  185. package/package.json +3 -3
  186. package/dist/chunk-4IWDOYKR.js +0 -65
  187. package/dist/chunk-4IWDOYKR.js.map +0 -7
  188. package/dist/chunk-DUJXF7YI.js.map +0 -7
  189. package/dist/chunk-LQ5Q35IF.js.map +0 -7
  190. package/dist/chunk-P3BRSSRD.js.map +0 -7
  191. package/dist/chunk-PXNHL3SH.js.map +0 -7
  192. package/dist/chunk-Z4OLAEPL.js.map +0 -7
  193. /package/dist/{chunk-2G4WBMYI.js.map → chunk-32GJS7FV.js.map} +0 -0
  194. /package/dist/{chunk-YGLTO26A.js.map → chunk-7L4NIEW2.js.map} +0 -0
  195. /package/dist/{chunk-VEU3IXAQ.js.map → chunk-7MISLCN2.js.map} +0 -0
  196. /package/dist/{chunk-WTHJ3H4M.js.map → chunk-7WUJBFCH.js.map} +0 -0
  197. /package/dist/{chunk-PHETIB6R.js.map → chunk-AV5JV26B.js.map} +0 -0
  198. /package/dist/{chunk-Z4JJS6KE.js.map → chunk-B7VYE7YQ.js.map} +0 -0
  199. /package/dist/{chunk-AQGFJLIV.js.map → chunk-BDDT6VN6.js.map} +0 -0
  200. /package/dist/{chunk-PMBBNQ2J.js.map → chunk-D4WTE6ZA.js.map} +0 -0
  201. /package/dist/{chunk-ZOXHSJWU.js.map → chunk-DBRRQASP.js.map} +0 -0
  202. /package/dist/{chunk-FZH2M4G6.js.map → chunk-DG5CRENU.js.map} +0 -0
  203. /package/dist/{chunk-HAOPRFYQ.js.map → chunk-L5PQPAU6.js.map} +0 -0
  204. /package/dist/{chunk-DUPHBKVV.js.map → chunk-LHRHB5EJ.js.map} +0 -0
  205. /package/dist/{chunk-5GMY4TTF.js.map → chunk-OEPYLZXK.js.map} +0 -0
  206. /package/dist/{chunk-XYVPLV6Z.js.map → chunk-TTAFUUHZ.js.map} +0 -0
  207. /package/dist/{chunk-K2OH56BH.js.map → chunk-UVREOAMH.js.map} +0 -0
  208. /package/dist/{chunk-35OVUYPI.js.map → chunk-YSKUXQ2N.js.map} +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/connected-recorded-execution.ts", "../src/connected-evidence-client.ts", "../src/connected-dataset-publication.ts", "../src/connected-collection-status.ts", "../src/connected-sync.ts", "../src/connected-evidence.ts"],
4
+ "sourcesContent": ["import { z } from \"zod\";\nimport { ImmutableReleaseRefSchema, contentHash } from \"@openpond/harness\";\nimport { ExperimentManifestSchema } from \"@openpond/evals/experiments\";\nimport { TaskRecordSchema } from \"@openpond/evals/tasksets\";\nimport { ConnectedCaseRefSchema } from \"./connected-evidence-contracts.js\";\n\nconst Id = z.string().min(1).max(200), Hash = z.string().regex(/^[a-f0-9]{64}$/);\nexport const ConnectedRecordedExecutionRequestSchema = z.object({ operationId: Id, name: z.string().trim().min(1).max(500),\n projectId: Id, dataset: ImmutableReleaseRefSchema.extend({ revision: z.number().int().positive() }).strict(),\n caseIds: z.array(Id).min(1).max(10_000) }).strict().superRefine((value, ctx) => {\n if (new Set(value.caseIds).size !== value.caseIds.length) ctx.addIssue({ code: \"custom\", message: \"Select each case once.\" });\n});\nexport const ConnectedRecordedSourceSchema = ConnectedCaseRefSchema.extend({ inputHash: Hash, outputHash: Hash.nullable(),\n task: TaskRecordSchema, taskHash: Hash }).strict();\nexport const ConnectedRecordedExecutionSchema = z.object({ schemaVersion: z.literal(\"openpond.connectedRecordedExecution.v1\"),\n id: Id, teamId: Id, ownerUserId: Id, request: ConnectedRecordedExecutionRequestSchema,\n manifest: ExperimentManifestSchema, sources: z.array(ConnectedRecordedSourceSchema).min(1).max(10_000), contentHash: Hash }).strict();\nexport type ConnectedRecordedExecution = z.infer<typeof ConnectedRecordedExecutionSchema>;\nexport function verifyConnectedRecordedExecution(raw: unknown) {\n const value = ConnectedRecordedExecutionSchema.parse(raw), { contentHash: actual, ...body } = value;\n const { contentHash: manifestHash, ...manifest } = value.manifest;\n if (contentHash(body) !== actual || contentHash(manifest) !== manifestHash || value.manifest.teamId !== value.teamId\n || value.manifest.id !== value.id || value.manifest.operationId !== value.request.operationId\n || contentHash(value.manifest.dataset) !== contentHash(value.request.dataset)\n || value.sources.length !== value.request.caseIds.length || value.sources.length !== value.manifest.population.length\n || value.sources.some((source, index) => source.taskHash !== contentHash(source.task) || source.task.id !== value.request.caseIds[index]\n || source.boundaryId !== source.task.id || value.manifest.population[index]?.caseId !== source.boundaryId))\n throw new Error(\"Recorded execution identity or population integrity failed.\");\n return value;\n}\n\nexport const ConnectedRecordedListRequestSchema = z.object({ projectId: Id.optional(), cursor: Id.optional(), limit: z.number().int().min(1).max(50).default(20) }).strict();\nexport const ConnectedRecordedSummarySchema = z.object({ id: Id, teamId: Id, ownerUserId: Id, projectId: Id,\n name: z.string().min(1).max(500), dataset: ConnectedRecordedExecutionRequestSchema.shape.dataset,\n manifestHash: Hash, contentHash: Hash, caseCount: z.number().int().min(1).max(10_000), createdAt: z.string().datetime() }).strict();\nexport const ConnectedRecordedListSchema = z.object({ teamId: Id, items: z.array(ConnectedRecordedSummarySchema).max(50), nextCursor: Id.nullable() }).strict();\n", "import { z } from \"zod\";\nimport { contentHash } from \"@openpond/harness\";\nimport { ConnectedBoundarySchema, ConnectedEventSchema, ConnectedUsageSummarySchema } from \"@openpond/evals/connected-evidence\";\nimport { ConnectedCaptureRequestSchema, ConnectedCaseRefSchema, ConnectedSourceSummarySchema,\n AgentImportUploadPartSchema, AgentImportPreviewRequestSchema, AgentImportCommitRequestSchema } from \"./connected-evidence-contracts.js\";\nimport { ConnectedRecordedExecutionRequestSchema, ConnectedRecordedListSchema, ConnectedRecordedListRequestSchema, verifyConnectedRecordedExecution } from \"./connected-recorded-execution.js\";\nimport { ConnectedDatasetPublicationSchema, type ConnectedDatasetPublication } from \"./connected-dataset-publication.js\";\nimport { DatasetWorkspaceReceiptSchema } from \"./dataset-workspace-contracts.js\";\nimport { fetchConnectedJson } from \"./connected-evidence-http.js\";\nimport { ConnectedCollectionStatusSchema } from \"./connected-collection-status.js\";\nimport { ConnectedStartingAssetsRequestSchema, verifyConnectedStartingAssetsReceipt } from \"./connected-starting-assets.js\";\n\nconst Id = z.string().min(1).max(500), Hash = z.string().regex(/^[a-f0-9]{64}$/);\nexport const ConnectedCollectionSchema = z.object({ teamId: Id, projectId: Id.nullable(), status: z.enum([\"active\", \"paused\", \"archived\"]), revision: z.number().int().nonnegative() }).strict();\nexport const ConnectedCaptureReceiptSchema = z.object({ teamId: Id, operationId: Id, projectId: Id.nullable(),\n outcomes: z.array(z.object({ conversationId: Id, state: z.enum([\"captured\", \"unchanged\", \"pending\", \"paused\", \"excluded\", \"failed\"]),\n sourceId: Id.optional(), snapshotHash: Hash.optional(), reason: z.string().optional() }).strict()).max(50), nextCursor: Id.nullable() }).strict();\nexport const ConnectedCaseReadbackSchema = z.object({ teamId: Id, ref: ConnectedCaseRefSchema, origin: ConnectedSourceSummarySchema.shape.source,\n sessionId: Id, projectId: Id, capturedAt: z.string().datetime(), unmappedEvidence: z.object({ count: z.number().int().nonnegative().max(100_000), contentHash: Hash }).strict(),\n evidence: z.object({ input: z.array(ConnectedEventSchema), observed: z.array(ConnectedEventSchema), answer: z.json(), boundary: ConnectedBoundarySchema }).strict() }).strict();\nexport const ConnectedUnmappedEventsSchema = z.object({ teamId: Id, sourceId: Id, snapshotHash: Hash, contentHash: Hash,\n count: z.number().int().nonnegative(), offset: z.number().int().nonnegative(), events: z.array(ConnectedEventSchema).max(50), nextOffset: z.number().int().nonnegative().nullable() }).strict();\nexport const AgentImportPreviewSchema = z.object({ teamId: Id, source: AgentImportPreviewRequestSchema.shape.source, sourceHash: Hash, previewHash: Hash,\n destination: AgentImportPreviewRequestSchema.shape.destination, issues: z.array(z.object({ file: z.string(), message: z.string() }).strict()).max(100),\n sessions: z.array(z.object({ sessionHash: Hash, sessionId: Id, origin: ConnectedSourceSummarySchema.shape.source, exporterVersion: z.string().nullable(),\n eventCount: z.number().int().nonnegative(), boundaries: z.array(z.object({ id: Id, projection: z.enum([\"turn\", \"conversation\"]), answer: z.boolean(),\n process: z.enum([\"retained\", \"partial\", \"absent\"]), terminal: z.enum([\"completed\", \"failed\", \"cancelled\", \"unknown\"]) }).strict()).max(5_001),\n warnings: z.array(z.string()).max(100), sample: z.array(z.object({ role: z.enum([\"user\", \"assistant\", \"system\", \"tool\"]).nullable(), text: z.string().max(4_000) }).strict()).max(3),\n }).strict()).max(1_000) }).strict();\nexport const AgentImportReceiptSchema = z.object({ teamId: Id, operationId: Id, requestHash: Hash, previewHash: Hash, projectId: Id.optional(),\n state: z.enum([\"admitting\", \"publishing\", \"completed\", \"failed\"]), outcomes: z.array(z.object({ sessionHash: Hash, sourceId: Id,\n status: z.enum([\"imported\", \"already_present\"]), datasets: z.array(z.object({ datasetId: Id, revision: z.number().int().positive(), changed: z.boolean() }).strict()).max(2) }).strict()).max(1_000),\n error: z.string().optional() }).strict();\n\nexport class ConnectedEvidenceError extends Error {\n constructor(readonly status: number, readonly code: string, message: string) { super(message); this.name = \"ConnectedEvidenceError\"; }\n}\nexport class ConnectedEvidenceClient {\n private readonly baseUrl: string;\n constructor(private readonly options: { apiKey: string; baseUrl: string; teamId: string; fetch?: typeof fetch }) {\n const url = new URL(options.baseUrl);\n if (![\"http:\", \"https:\"].includes(url.protocol) || url.username || url.password || url.search || url.hash || !options.apiKey.trim() || !options.teamId.trim())\n throw new Error(\"A clean API origin and workspace credentials are required.\");\n this.baseUrl = url.toString().replace(/\\/+$/, \"\");\n }\n async capture(raw: z.input<typeof ConnectedCaptureRequestSchema>, signal?: AbortSignal) {\n const request = ConnectedCaptureRequestSchema.parse(raw), result = ConnectedCaptureReceiptSchema.parse(await this.request(\"/capture\", \"POST\", request, signal));\n this.scope(result.teamId);\n if (result.operationId !== request.operationId || result.outcomes.length > request.limit || request.conversationId && result.outcomes.some(item => item.conversationId !== request.conversationId))\n throw new Error(\"Capture receipt differs from its requested source or operation.\");\n return result;\n }\n async retainStartingAssets(raw: z.input<typeof ConnectedStartingAssetsRequestSchema>, signal?: AbortSignal) {\n const request = ConnectedStartingAssetsRequestSchema.parse(raw);\n const result = verifyConnectedStartingAssetsReceipt(await this.request(\"/starting-assets\", \"POST\", request, signal));\n this.scope(result.teamId);\n if (result.operationId !== request.operationId || result.requestHash !== contentHash(request)\n || contentHash(result.source) !== contentHash(request.source)\n || result.assets.length !== request.proofs.length\n || result.assets.some((asset, index) => asset.path !== request.proofs[index]!.path))\n throw new Error(\"Starting assets differ from the exact source, operation or selected paths.\");\n return result;\n }\n async startingAssets(id: string, signal?: AbortSignal) {\n const result = verifyConnectedStartingAssetsReceipt(await this.request(`/starting-assets/${encodeURIComponent(Id.parse(id))}`, \"GET\", undefined, signal));\n this.scope(result.teamId);\n if (result.id !== id) throw new Error(\"Starting assets identity mismatch.\");\n return result;\n }\n async list(input: { projectId?: string; cursor?: string; limit?: number } = {}, signal?: AbortSignal) {\n const query = z.object({ projectId: Id.optional(), cursor: Id.optional(), limit: z.number().int().min(1).max(50).default(20) }).strict().parse(input);\n const params = new URLSearchParams(Object.entries(query).filter(([, value]) => value !== undefined).map(([key, value]) => [key, String(value)]));\n const page = z.object({ teamId: Id, items: z.array(ConnectedSourceSummarySchema).max(50), nextCursor: Id.nullable() }).strict().parse(await this.request(`?${params}`, \"GET\", undefined, signal));\n this.scope(page.teamId);\n if (page.items.length > query.limit || new Set(page.items.map(item => item.sourceId)).size !== page.items.length || page.nextCursor !== null && page.nextCursor === query.cursor\n || query.projectId && page.items.some(item => item.projectId !== query.projectId)) throw new Error(\"Connected source page differs from its requested scope.\");\n return page;\n }\n async read(raw: z.input<typeof ConnectedCaseRefSchema>, signal?: AbortSignal) {\n const ref = ConnectedCaseRefSchema.parse(raw);\n const result = ConnectedCaseReadbackSchema.parse(await this.request(`/${encodeURIComponent(ref.id)}/cases/${encodeURIComponent(ref.boundaryId)}?snapshotHash=${ref.snapshotHash}&revisionHash=${ref.boundaryRevisionHash}`, \"GET\", undefined, signal));\n this.scope(result.teamId);\n if (contentHash(result.ref) !== contentHash(ref) || result.evidence.boundary.id !== ref.boundaryId || result.evidence.boundary.revisionHash !== ref.boundaryRevisionHash\n || contentHash(result.evidence.input) !== result.evidence.boundary.inputHash || contentHash(result.evidence.observed) !== ref.boundaryRevisionHash\n || result.evidence.boundary.outputHash !== null && contentHash(result.evidence.answer) !== result.evidence.boundary.outputHash)\n throw new Error(\"Connected case readback differs from its exact snapshot or cutoff.\");\n return result;\n }\n async setCollection(paused: boolean, signal?: AbortSignal) {\n const result = ConnectedCollectionSchema.parse(await this.request(\"/collection\", \"PUT\", z.object({ paused: z.boolean() }).strict().parse({ paused }), signal));\n this.scope(result.teamId); return result;\n }\n async collection(signal?: AbortSignal) { const result = ConnectedCollectionSchema.parse(await this.request(\"/collection\", \"GET\", undefined, signal)); this.scope(result.teamId); return result; }\n async collectionStatus(signal?: AbortSignal) {\n const result = ConnectedCollectionStatusSchema.parse(await this.request(\"/collection/status\", \"GET\", undefined, signal));\n this.scope(result.teamId);\n return result;\n }\n async unmappedEvents(input: { id: string; snapshotHash: string; contentHash: string; offset?: number; limit?: number }, signal?: AbortSignal) {\n const request = z.object({ id: Id, snapshotHash: Hash, contentHash: Hash, offset: z.number().int().nonnegative().default(0), limit: z.number().int().min(1).max(50).default(20) }).strict().parse(input);\n const result = ConnectedUnmappedEventsSchema.parse(await this.request(`/${encodeURIComponent(request.id)}/unmapped-events?snapshotHash=${request.snapshotHash}&offset=${request.offset}&limit=${request.limit}`, \"GET\", undefined, signal));\n this.scope(result.teamId);\n if (result.sourceId !== request.id || result.snapshotHash !== request.snapshotHash || result.contentHash !== request.contentHash || result.offset !== request.offset\n || result.events.length > request.limit || result.events.some((event, index) => event.sequence !== request.offset + index)\n || result.nextOffset !== null && result.nextOffset !== request.offset + result.events.length) throw new Error(\"Unmapped source event page differs from its pinned snapshot.\");\n return result;\n }\n async homeSummary(raw: { from: string; to: string; projectId?: string }, signal?: AbortSignal) {\n const querySchema = z.object({ from: z.string().datetime(), to: z.string().datetime(), projectId: Id.optional() }).strict(), query = querySchema.parse(raw);\n const params = new URLSearchParams(Object.entries(query));\n const result = z.object({ teamId: Id, range: querySchema, activity: z.object({ conversations: z.number().int().nonnegative(), turns: z.number().int().nonnegative(),\n chatTurns: z.number().int().nonnegative(), workTurns: z.number().int().nonnegative() }).strict(), accounting: z.object({ contextSnapshots: z.number().int().nonnegative() }).strict(), usage: ConnectedUsageSummarySchema }).strict()\n .parse(await this.request(`/summary?${params}`, \"GET\", undefined, signal));\n this.scope(result.teamId);\n if (contentHash(result.range) !== contentHash(query) || result.activity.chatTurns + result.activity.workTurns !== result.activity.turns) throw new Error(\"Activity summary differs from its requested range.\");\n for (const groups of [result.usage.days, result.usage.modes, result.usage.models]) {\n if (new Set(groups.map(row => row.key)).size !== groups.length) throw new Error(\"Duplicate usage summary group.\");\n for (const key of Object.keys(result.usage.total) as (keyof typeof result.usage.total)[])\n if (groups.reduce((sum, row) => sum + row[key], 0) !== result.usage.total[key]) throw new Error(\"Usage totals differ from their displayed groups.\");\n }\n return result;\n }\n async uploadPart(raw: z.input<typeof AgentImportUploadPartSchema>, signal?: AbortSignal) {\n const body = AgentImportUploadPartSchema.parse(raw), result = z.object({ teamId: Id, hash: Hash, parts: z.number().int(), index: z.number().int() }).strict().parse(await this.request(\"/imports/upload\", \"POST\", body, signal));\n this.scope(result.teamId);\n if (result.hash !== body.hash || result.parts !== body.parts || result.index !== body.index) throw new Error(\"Upload receipt differs from its part identity.\");\n return result;\n }\n async preview(raw: z.input<typeof AgentImportPreviewRequestSchema>, signal?: AbortSignal) {\n const request = AgentImportPreviewRequestSchema.parse(raw), result = AgentImportPreviewSchema.parse(await this.request(\"/imports/preview\", \"POST\", request, signal));\n this.scope(result.teamId);\n if (result.source !== request.source || contentHash(result.destination) !== contentHash(request.destination) || result.sessions.some(session => session.origin !== request.source)\n || new Set(result.sessions.map(session => session.sessionHash)).size !== result.sessions.length) throw new Error(\"Import preview differs from its source or destination.\");\n return result;\n }\n async commit(raw: z.input<typeof AgentImportCommitRequestSchema>, signal?: AbortSignal) {\n const request = AgentImportCommitRequestSchema.parse(raw), result = AgentImportReceiptSchema.parse(await this.request(\"/imports/commit\", \"POST\", request, signal));\n this.scope(result.teamId);\n if (result.operationId !== request.operationId || result.previewHash !== request.previewHash || result.requestHash !== contentHash(request)\n || result.outcomes.some(item => !request.selection.some(selection => selection.sessionHash === item.sessionHash))\n || result.state === \"completed\" && result.outcomes.length !== request.selection.length) throw new Error(\"Import receipt differs from its exact selection or operation.\");\n return result;\n }\n async readImport(operationId: string, signal?: AbortSignal) {\n const id = Id.parse(operationId), result = AgentImportReceiptSchema.parse(await this.request(`/imports/${encodeURIComponent(id)}`, \"GET\", undefined, signal));\n this.scope(result.teamId); if (result.operationId !== id) throw new Error(\"Import identity mismatch.\"); return result;\n }\n async prepareRecorded(raw: z.input<typeof ConnectedRecordedExecutionRequestSchema>, signal?: AbortSignal) {\n const request = ConnectedRecordedExecutionRequestSchema.parse(raw), result = verifyConnectedRecordedExecution(await this.request(\"/recorded-executions\", \"POST\", request, signal));\n this.scope(result.teamId); if (contentHash(result.request) !== contentHash(request)) throw new Error(\"Recorded admission differs from its selected Dataset/cases.\"); return result;\n }\n async listRecordedExecutions(input: z.input<typeof ConnectedRecordedListRequestSchema> = {}, signal?: AbortSignal) {\n const query = ConnectedRecordedListRequestSchema.parse(input);\n const params = new URLSearchParams(Object.entries(query).filter(([, value]) => value !== undefined).map(([key, value]) => [key, String(value)]));\n const page = ConnectedRecordedListSchema.parse(await this.request(`/recorded-executions?${params}`, \"GET\", undefined, signal));\n this.scope(page.teamId);\n if (page.items.length > query.limit || page.items.some((row, index) => row.teamId !== page.teamId || query.projectId && row.projectId !== query.projectId\n || query.cursor && row.id <= query.cursor || index > 0 && row.id <= page.items[index - 1]!.id)\n || page.items.some(row => row.ownerUserId !== page.items[0]?.ownerUserId)\n || page.nextCursor !== null && (query.cursor !== undefined && page.nextCursor <= query.cursor || page.items.length > 0 && page.nextCursor < page.items.at(-1)!.id))\n throw new Error(\"Recorded execution page differs from its requested scope or cursor.\");\n return page;\n }\n async recordedExecution(id: string, signal?: AbortSignal) {\n const result = verifyConnectedRecordedExecution(await this.request(`/recorded-executions/${encodeURIComponent(Id.parse(id))}`, \"GET\", undefined, signal));\n this.scope(result.teamId); if (result.id !== id) throw new Error(\"Recorded execution identity mismatch.\"); return result;\n }\n async publishDataset(input: ConnectedDatasetPublication, signal?: AbortSignal) {\n const request = ConnectedDatasetPublicationSchema.parse(input);\n const result = DatasetWorkspaceReceiptSchema.parse(await this.request(\"/datasets/publish\", \"POST\", request, signal));\n this.scope(result.teamId);\n const frozen = result.workspace.draft.metadata.connectedPublication;\n if (result.datasetId !== request.datasetId || !result.publication || !frozen || typeof frozen !== \"object\" || !(\"requestHash\" in frozen) || frozen.requestHash !== contentHash(request)) throw new Error(\"Published Dataset identity or original selection mismatch.\"); return result;\n }\n async createSelection(input: { operationId: string; projectId: string; name: string; cases: z.input<typeof ConnectedCaseRefSchema>[] }, signal?: AbortSignal) {\n const request = z.object({ operationId: Id.max(240), projectId: Id.max(240), name: z.string().trim().min(1).max(200), cases: z.array(ConnectedCaseRefSchema).min(1).max(500) }).strict().parse(input);\n const result = DatasetWorkspaceReceiptSchema.parse(await this.request(\"/datasets/selection\", \"POST\", request, signal));\n this.scope(result.teamId);\n if (result.originProjectId !== request.projectId || result.workspace.draft.tasks.length !== request.cases.length\n || result.workspace.draft.tasks.some((task, index) => contentHash(task.input && typeof task.input === \"object\" && !Array.isArray(task.input) ? task.input.connectedEvidenceRef : null) !== contentHash(request.cases[index])))\n throw new Error(\"Selected Dataset differs from its exact source population.\");\n return result;\n }\n private scope(teamId: string) { if (teamId !== this.options.teamId) throw new Error(\"Connected evidence workspace mismatch.\"); }\n private async request(path: string, method: string, body?: unknown, signal?: AbortSignal) {\n const { response, value } = await fetchConnectedJson(this.options.fetch ?? fetch, `${this.baseUrl}/v1/connected-evidence${path}`, { method, signal, redirect: \"error\",\n headers: { Authorization: `Bearer ${this.options.apiKey}`, \"X-OpenPond-Team-Id\": this.options.teamId, \"Content-Type\": \"application/json\", Accept: \"application/json\" },\n ...(body === undefined ? {} : { body: JSON.stringify(body) }) }, (status, code, message) => new ConnectedEvidenceError(status, code, message));\n if (!response.ok) { const error = z.object({ code: z.string(), message: z.string() }).safeParse(value);\n throw new ConnectedEvidenceError(response.status, error.success ? error.data.code : \"connected_request_failed\", error.success ? error.data.message : \"Connected evidence request failed.\"); }\n return value;\n }\n}\n", "import { z } from \"zod\";\nimport { RewardReleaseRefSchema } from \"@openpond/evals/rewards\";\n\n/** Publication freezes the owner-selected Dataset revision and exact grader\n * releases. Capture never infers a correctness reference from an answer. */\nexport const ConnectedDatasetPublicationSchema = z.object({\n datasetId: z.string().trim().min(1).max(240),\n expectedRevision: z.number().int().positive(),\n operationId: z.string().trim().min(1).max(240),\n graders: z.array(RewardReleaseRefSchema).min(1).max(100).optional(),\n}).strict().superRefine((request, context) => {\n if (request.graders && new Set(request.graders.map(ref => ref.id)).size !== request.graders.length)\n context.addIssue({ code: \"custom\", path: [\"graders\"], message: \"Choose one exact revision of each grader.\" });\n});\nexport type ConnectedDatasetPublication = z.infer<typeof ConnectedDatasetPublicationSchema>;\n", "import { z } from \"zod\";\n\nconst Id = z.string().min(1).max(500);\nconst Count = z.number().int().nonnegative();\n\n/** Hosted collection health is server reconciliation, never a local heartbeat. */\nexport const ConnectedCollectionStatusSchema = z.object({\n teamId: Id,\n ownerUserId: Id,\n projectId: Id.nullable(),\n status: z.enum([\"active\", \"paused\", \"archived\"]),\n revision: Count,\n state: z.enum([\"collecting\", \"pending\", \"attention\", \"paused\", \"archived\"]),\n lastReconciledAt: z.string().datetime().nullable(),\n lastCapturedAt: z.string().datetime().nullable(),\n historyDays: z.number().int().positive(),\n sources: Count,\n tasks: Count,\n datasets: z.array(z.object({\n datasetId: Id,\n projection: z.enum([\"turn\", \"conversation\"]),\n revision: Count,\n }).strict()).max(2),\n latestBatch: z.object({\n operationId: Id,\n updatedAt: z.string().datetime(),\n scanned: Count,\n captured: Count,\n unchanged: Count,\n pending: Count,\n failed: Count,\n excluded: Count,\n paused: Count,\n hasMore: z.boolean(),\n }).strict().nullable(),\n}).strict();\n\nexport type ConnectedCollectionStatus = z.infer<typeof ConnectedCollectionStatusSchema>;\n", "import { z } from \"zod\";\nimport {\n AgentImportCommitRequestSchema,\n AgentImportPreviewRequestSchema,\n} from \"./connected-evidence-contracts.js\";\nimport { fetchConnectedJson } from \"./connected-evidence-http.js\";\nimport {\n CollectorCoverageManifestSchema,\n CollectorCoverageSummarySchema,\n summarizeCollectorCoverage,\n} from \"@openpond/evals/connected-evidence\";\nconst Id = z.string().trim().min(1).max(240);\nexport const ConnectedSyncCoveragePublishSchema = z\n .object({\n id: Id,\n expectedRevision: z.number().int().positive(),\n manifest: CollectorCoverageManifestSchema,\n })\n .strict()\n .refine(\n (value) =>\n value.id === value.manifest.connectionId &&\n value.expectedRevision === value.manifest.connectionRevision,\n \"Collector coverage scope differs from its connection.\",\n );\nexport const ConnectedSyncCoverageReadSchema = z\n .object({ id: Id, cutoff: z.iso.datetime().optional() })\n .strict();\nexport const ConnectedSyncCoverageReceiptSchema = z\n .object({\n schemaVersion: z.literal(\"openpond.connectedSyncCoverageReceipt.v1\"),\n id: Id,\n teamId: Id,\n ownerUserId: Id,\n connectionId: Id,\n connectionRevision: z.number().int().positive(),\n receivedAt: z.iso.datetime(),\n summary: CollectorCoverageSummarySchema,\n })\n .strict();\nexport const ConnectedSyncRegistrationSchema = z\n .object({\n id: Id,\n source: AgentImportPreviewRequestSchema.shape.source,\n machineId: Id,\n sourceInstanceId: Id,\n sourceLabel: z.string().trim().min(1).max(200),\n sourceRoot: z.string().min(1).max(2000),\n destination: AgentImportPreviewRequestSchema.shape.destination,\n since: z.string().datetime().nullable(),\n keepSyncing: z.boolean(),\n expectedRevision: z.number().int().nonnegative(),\n })\n .strict();\nexport const ConnectedSyncControlSchema = z\n .object({\n id: Id,\n expectedRevision: z.number().int().positive(),\n action: z.enum([\"pause\", \"resume\", \"disconnect\"]),\n })\n .strict();\nexport const ConnectedSyncRequestSchema = z\n .object({\n id: Id,\n operationId: Id,\n expectedRevision: z.number().int().positive(),\n })\n .strict();\nexport const ConnectedSyncHeartbeatSchema = z\n .object({\n id: Id,\n expectedRevision: z.number().int().positive(),\n pendingOperations: z.number().int().min(0).max(10000),\n error: z.string().max(500).nullable(),\n completedSyncRevision: z.number().int().nonnegative().default(0),\n })\n .strict();\nexport const ConnectedSyncConnectionSchema = z\n .object({\n teamId: Id,\n id: Id,\n revision: z.number().int().positive(),\n source: AgentImportPreviewRequestSchema.shape.source,\n sourceLabel: z.string(),\n sourceRoot: z.string(),\n taskDatasetId: Id.nullable(),\n conversationDatasetId: Id.nullable(),\n machineId: Id,\n sourceInstanceId: Id,\n projectId: Id,\n datasetIds: z.array(Id).max(2),\n since: z.string().datetime().nullable(),\n keepSyncing: z.boolean(),\n state: z.enum([\"active\", \"paused\", \"disconnected\"]),\n health: z.enum([\"online\", \"offline\"]),\n lastHeartbeatAt: z.string().datetime().nullable(),\n lastAdmissionAt: z.string().datetime().nullable(),\n pendingOperations: z.number().int().nonnegative(),\n admittedTasks: z.number().int().nonnegative(),\n error: z.string().nullable(),\n requestedSyncRevision: z.number().int().nonnegative().default(0),\n completedSyncRevision: z.number().int().nonnegative().default(0),\n syncRequestedAt: z.string().datetime().nullable().default(null),\n syncCompletedAt: z.string().datetime().nullable().default(null),\n })\n .strict()\n .refine(\n (value) =>\n value.completedSyncRevision <= value.requestedSyncRevision &&\n value.requestedSyncRevision <= value.revision,\n \"Invalid sync acknowledgement generation.\",\n );\nexport const ConnectedSyncCommitSchema = z\n .object({\n connectionId: Id,\n expectedRevision: z.number().int().positive(),\n request: AgentImportCommitRequestSchema,\n })\n .strict();\nexport type ConnectedSyncConnection = z.infer<\n typeof ConnectedSyncConnectionSchema\n>;\nexport class ConnectedSyncClient {\n constructor(\n private readonly options: {\n apiKey: string;\n baseUrl: string;\n teamId: string;\n fetch?: typeof fetch;\n },\n ) {\n const url = new URL(options.baseUrl);\n if (\n ![\"http:\", \"https:\"].includes(url.protocol) ||\n url.username ||\n url.password ||\n url.search ||\n url.hash\n )\n throw new Error(\"Invalid connected-sync API origin.\");\n }\n async list(signal?: AbortSignal) {\n const result = z\n .object({\n teamId: Id,\n items: z.array(ConnectedSyncConnectionSchema).max(100),\n })\n .strict()\n .parse(await this.request(\"\", \"GET\", undefined, signal));\n if (\n result.teamId !== this.options.teamId ||\n result.items.some((item) => item.teamId !== result.teamId)\n )\n throw new Error(\"Sync workspace mismatch.\");\n return result;\n }\n async register(\n raw: z.input<typeof ConnectedSyncRegistrationSchema>,\n signal?: AbortSignal,\n ) {\n return this.connection(\n await this.request(\n \"\",\n \"POST\",\n ConnectedSyncRegistrationSchema.parse(raw),\n signal,\n ),\n raw.id,\n );\n }\n async control(\n raw: z.input<typeof ConnectedSyncControlSchema>,\n signal?: AbortSignal,\n ) {\n return this.connection(\n await this.request(\n \"/control\",\n \"POST\",\n ConnectedSyncControlSchema.parse(raw),\n signal,\n ),\n raw.id,\n );\n }\n async heartbeat(\n raw: z.input<typeof ConnectedSyncHeartbeatSchema>,\n signal?: AbortSignal,\n ) {\n return this.connection(\n await this.request(\n \"/heartbeat\",\n \"POST\",\n ConnectedSyncHeartbeatSchema.parse(raw),\n signal,\n ),\n raw.id,\n );\n }\n async requestSync(\n raw: z.input<typeof ConnectedSyncRequestSchema>,\n signal?: AbortSignal,\n ) {\n return this.connection(\n await this.request(\n \"/sync-now\",\n \"POST\",\n ConnectedSyncRequestSchema.parse(raw),\n signal,\n ),\n raw.id,\n );\n }\n async commit(\n raw: z.input<typeof ConnectedSyncCommitSchema>,\n signal?: AbortSignal,\n ) {\n return this.request(\n \"/commit\",\n \"POST\",\n ConnectedSyncCommitSchema.parse(raw),\n signal,\n );\n }\n async publishCoverage(\n raw: z.input<typeof ConnectedSyncCoveragePublishSchema>,\n signal?: AbortSignal,\n ) {\n const request = ConnectedSyncCoveragePublishSchema.parse(raw);\n const receipt = this.coverageReceipt(\n await this.request(\n \"/coverage\",\n \"POST\",\n { action: \"publish\", ...request },\n signal,\n ),\n request.id,\n );\n if (\n !receipt ||\n receipt.connectionRevision !== request.expectedRevision ||\n receipt.summary.manifestHash !==\n summarizeCollectorCoverage(request.manifest).manifestHash\n )\n throw new Error(\n \"Collector coverage acknowledgement differs from the retained manifest.\",\n );\n return receipt;\n }\n async readCoverage(\n raw: z.input<typeof ConnectedSyncCoverageReadSchema>,\n signal?: AbortSignal,\n ) {\n const request = ConnectedSyncCoverageReadSchema.parse(raw);\n const query = new URLSearchParams(\n request.cutoff ? { cutoff: request.cutoff } : {},\n );\n return this.coverageReceipt(\n await this.request(\n `/${encodeURIComponent(request.id)}/coverage?${query}`,\n \"GET\",\n undefined,\n signal,\n ),\n request.id,\n );\n }\n private coverageReceipt(value: unknown, connectionId: string) {\n if (value === null) return null;\n const receipt = ConnectedSyncCoverageReceiptSchema.parse(value);\n if (\n receipt.teamId !== this.options.teamId ||\n receipt.connectionId !== connectionId\n )\n throw new Error(\"Collector coverage workspace mismatch.\");\n return receipt;\n }\n private connection(raw: unknown, id: string) {\n const result = ConnectedSyncConnectionSchema.parse(raw);\n if (result.teamId !== this.options.teamId || result.id !== id)\n throw new Error(\"Sync connection identity mismatch.\");\n return result;\n }\n private async request(\n path: string,\n method: string,\n body?: unknown,\n signal?: AbortSignal,\n ) {\n const { response, value } = await fetchConnectedJson(\n this.options.fetch ?? fetch,\n `${this.options.baseUrl.replace(/\\/+$/u, \"\")}/v1/connected-evidence/sync/connections${path}`,\n {\n method,\n signal,\n redirect: \"error\",\n headers: {\n Authorization: `Bearer ${this.options.apiKey}`,\n \"X-OpenPond-Team-Id\": this.options.teamId,\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n },\n ...(body === undefined ? {} : { body: JSON.stringify(body) }),\n },\n (_status, _code, message) => new Error(message),\n );\n if (!response.ok)\n throw Object.assign(\n new Error(`Sync request failed (${response.status}).`),\n { status: response.status },\n );\n return value;\n }\n}\n", "export * from \"./connected-evidence-contracts.js\";\nexport * from \"./connected-dataset-source.js\";\nexport * from \"./connected-recorded-execution.js\";\nexport * from \"./connected-evidence-client.js\";\nexport * from \"./connected-dataset-publication.js\";\nexport * from \"./connected-collection-status.js\";\nexport * from \"./connected-starting-assets.js\";\n\nexport * from \"./connected-sync.js\";\nexport { CollectorCoverageManifestSchema, CollectorCoverageSessionSchema, CollectorCoverageSummarySchema,\n summarizeCollectorCoverage, hashCollectorEligibleBoundaries } from \"@openpond/evals/connected-evidence\";\nexport type { CollectorCoverageManifest, CollectorCoverageSession, CollectorCoverageSummary } from \"@openpond/evals/connected-evidence\";\n"],
5
+ "mappings": "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",
6
+ "names": ["z", "z", "z", "Id", "Id", "z", "Hash", "z", "Id", "z", "CollectorCoverageManifestSchema", "CollectorCoverageSummarySchema", "summarizeCollectorCoverage"]
7
+ }
@@ -0,0 +1,100 @@
1
+ import {
2
+ GeneratedTaskFileSchema,
3
+ TasksetReadinessReportSchema,
4
+ TrainingPathRecommendationSchema
5
+ } from "./chunk-X6J3VVYC.js";
6
+ import {
7
+ GraderFixtureLabelSchema,
8
+ GraderSpecSchema,
9
+ TaskPolicyBoundarySchema,
10
+ TasksetCapabilityManifestSchema,
11
+ TasksetSplitSchema
12
+ } from "./chunk-644E3NM2.js";
13
+
14
+ // src/task-design-contracts.ts
15
+ import { z } from "zod";
16
+ var Id = z.string().trim().min(1).max(240);
17
+ var Text = z.string().trim().min(1).max(5e3);
18
+ var TrainingTacticSchema = z.enum([
19
+ "no_training",
20
+ "prompting",
21
+ "retrieval",
22
+ "sft",
23
+ "preference",
24
+ "grpo_rft",
25
+ "sdft_opsd",
26
+ "sdpo",
27
+ "agentic_rl"
28
+ ]);
29
+ var TaskDesignFixtureTemplateSchema = z.object({
30
+ id: Id,
31
+ taskIndex: z.number().int().nonnegative(),
32
+ label: GraderFixtureLabelSchema,
33
+ output: z.record(z.string(), z.unknown()),
34
+ infrastructureError: z.string().trim().min(1).max(1e4).nullable(),
35
+ expectedPassed: z.boolean(),
36
+ expectedRewardEligible: z.boolean(),
37
+ metadata: z.record(z.string(), z.unknown()).default({})
38
+ });
39
+ var CapabilityDiagnosisSchema = z.object({
40
+ schemaVersion: z.literal("openpond.capabilityDiagnosis.v1"),
41
+ summary: z.string().trim().min(1).max(1e4),
42
+ stableBehavior: z.array(Text).max(100).default([]),
43
+ changingKnowledge: z.array(Text).max(100).default([]),
44
+ requiredContext: z.array(Text).max(100).default([]),
45
+ requiredTools: z.array(Id).max(100).default([]),
46
+ intervention: TrainingTacticSchema,
47
+ trainingEligible: z.boolean(),
48
+ rationale: z.array(Text).min(1).max(100),
49
+ confidence: z.number().min(0).max(1)
50
+ });
51
+ var TaskExampleProposalSchema = z.object({
52
+ id: Id,
53
+ sourceId: Id,
54
+ sourceTurnId: Id.nullable(),
55
+ split: TasksetSplitSchema,
56
+ origin: z.enum(["extracted", "corrected", "synthetic", "expert_authored"]),
57
+ inputPrompt: z.string().trim().min(1).max(1e5),
58
+ expectedOutputText: z.string().trim().min(1).max(2e5).nullable(),
59
+ rationale: Text
60
+ });
61
+ var TaskDesignProposalSchema = z.object({
62
+ schemaVersion: z.literal("openpond.taskDesignProposal.v1"),
63
+ id: Id,
64
+ name: z.string().trim().min(1).max(500),
65
+ objective: z.string().trim().min(1).max(2e4),
66
+ diagnosis: CapabilityDiagnosisSchema.default({
67
+ schemaVersion: "openpond.capabilityDiagnosis.v1",
68
+ summary: "Reproduce the selected approved behavior.",
69
+ stableBehavior: [],
70
+ changingKnowledge: [],
71
+ requiredContext: [],
72
+ requiredTools: [],
73
+ intervention: "sft",
74
+ trainingEligible: true,
75
+ rationale: ["The selected examples were supplied as demonstrations."],
76
+ confidence: 0.5
77
+ }),
78
+ taskKind: TasksetCapabilityManifestSchema.shape.taskKind,
79
+ sourceIds: z.array(Id).min(1).max(1e5),
80
+ assumptions: z.array(Text).max(1e3),
81
+ successCriteria: z.array(Text).min(1).max(1e3),
82
+ proposedGraders: z.array(GraderSpecSchema).max(1e3).default([]),
83
+ graderFixtures: z.array(TaskDesignFixtureTemplateSchema).max(1e5).default([]),
84
+ generatedFiles: z.array(GeneratedTaskFileSchema).max(1e3).default([]),
85
+ proposedExamples: z.array(TaskExampleProposalSchema).max(1e5).default([]),
86
+ proposedMethod: TasksetReadinessReportSchema.shape.recommendedMethod,
87
+ trainingPath: TrainingPathRecommendationSchema.nullable().default(null),
88
+ policy: TaskPolicyBoundarySchema,
89
+ warnings: z.array(z.string().trim().min(1)).default([]),
90
+ createdAt: z.string().trim().min(1)
91
+ });
92
+
93
+ export {
94
+ TrainingTacticSchema,
95
+ TaskDesignFixtureTemplateSchema,
96
+ CapabilityDiagnosisSchema,
97
+ TaskExampleProposalSchema,
98
+ TaskDesignProposalSchema
99
+ };
100
+ //# sourceMappingURL=chunk-FZYLRL7H.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/task-design-contracts.ts"],
4
+ "sourcesContent": ["import { z } from \"zod\";\nimport {\n TasksetSplitSchema,\n TasksetCapabilityManifestSchema,\n TaskPolicyBoundarySchema,\n GraderSpecSchema,\n GraderFixtureLabelSchema,\n} from \"./taskset-draft-core.js\";\nimport {\n GeneratedTaskFileSchema,\n TasksetReadinessReportSchema,\n TrainingPathRecommendationSchema,\n} from \"./taskset-authored-contracts.js\";\n\nconst Id = z.string().trim().min(1).max(240);\nconst Text = z.string().trim().min(1).max(5_000);\nexport const TrainingTacticSchema = z.enum([\n \"no_training\",\n \"prompting\",\n \"retrieval\",\n \"sft\",\n \"preference\",\n \"grpo_rft\",\n \"sdft_opsd\",\n \"sdpo\",\n \"agentic_rl\",\n]);\nexport const TaskDesignFixtureTemplateSchema = z.object({\n id: Id,\n taskIndex: z.number().int().nonnegative(),\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: z.record(z.string(), z.unknown()).default({}),\n});\nexport const CapabilityDiagnosisSchema = z.object({\n schemaVersion: z.literal(\"openpond.capabilityDiagnosis.v1\"),\n summary: z.string().trim().min(1).max(10_000),\n stableBehavior: z.array(Text).max(100).default([]),\n changingKnowledge: z.array(Text).max(100).default([]),\n requiredContext: z.array(Text).max(100).default([]),\n requiredTools: z.array(Id).max(100).default([]),\n intervention: TrainingTacticSchema,\n trainingEligible: z.boolean(),\n rationale: z.array(Text).min(1).max(100),\n confidence: z.number().min(0).max(1),\n});\nexport const TaskExampleProposalSchema = z.object({\n id: Id,\n sourceId: Id,\n sourceTurnId: Id.nullable(),\n split: TasksetSplitSchema,\n origin: z.enum([\"extracted\", \"corrected\", \"synthetic\", \"expert_authored\"]),\n inputPrompt: z.string().trim().min(1).max(100_000),\n expectedOutputText: z.string().trim().min(1).max(200_000).nullable(),\n rationale: Text,\n});\nexport const TaskDesignProposalSchema = z.object({\n schemaVersion: z.literal(\"openpond.taskDesignProposal.v1\"),\n id: Id,\n name: z.string().trim().min(1).max(500),\n objective: z.string().trim().min(1).max(20_000),\n diagnosis: CapabilityDiagnosisSchema.default({\n schemaVersion: \"openpond.capabilityDiagnosis.v1\",\n summary: \"Reproduce the selected approved behavior.\",\n stableBehavior: [],\n changingKnowledge: [],\n requiredContext: [],\n requiredTools: [],\n intervention: \"sft\",\n trainingEligible: true,\n rationale: [\"The selected examples were supplied as demonstrations.\"],\n confidence: 0.5,\n }),\n taskKind: TasksetCapabilityManifestSchema.shape.taskKind,\n sourceIds: z.array(Id).min(1).max(100_000),\n assumptions: z.array(Text).max(1_000),\n successCriteria: z.array(Text).min(1).max(1_000),\n proposedGraders: z.array(GraderSpecSchema).max(1_000).default([]),\n graderFixtures: z.array(TaskDesignFixtureTemplateSchema).max(100_000).default([]),\n generatedFiles: z.array(GeneratedTaskFileSchema).max(1_000).default([]),\n proposedExamples: z.array(TaskExampleProposalSchema).max(100_000).default([]),\n proposedMethod: TasksetReadinessReportSchema.shape.recommendedMethod,\n trainingPath: TrainingPathRecommendationSchema.nullable().default(null),\n policy: TaskPolicyBoundarySchema,\n warnings: z.array(z.string().trim().min(1)).default([]),\n createdAt: z.string().trim().min(1),\n});\nexport type TaskDesignFixtureTemplate = z.infer<typeof TaskDesignFixtureTemplateSchema>;\nexport type CapabilityDiagnosis = z.infer<typeof CapabilityDiagnosisSchema>;\nexport type TaskExampleProposal = z.infer<typeof TaskExampleProposalSchema>;\nexport type TaskDesignProposal = z.infer<typeof TaskDesignProposalSchema>;\nexport type TrainingTactic = z.infer<typeof TrainingTacticSchema>;\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -280,7 +280,10 @@ function decode(base64) {
280
280
  }
281
281
  if (btoa(binary) !== base64)
282
282
  throw new Error("Harness source file is not canonical base64.");
283
- return Uint8Array.from(binary, (character) => character.charCodeAt(0));
283
+ const bytes = new Uint8Array(binary.length);
284
+ for (let index = 0; index < binary.length; index++)
285
+ bytes[index] = binary.charCodeAt(index);
286
+ return bytes;
284
287
  }
285
288
 
286
289
  export {
@@ -293,4 +296,4 @@ export {
293
296
  validateHarnessPolicySourcePackage,
294
297
  validateHarnessSourcePackage
295
298
  };
296
- //# sourceMappingURL=chunk-JOKRT4CK.js.map
299
+ //# sourceMappingURL=chunk-KV6JXPQH.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../harness/dist/source-package.js", "../../harness/dist/harness.js", "../../harness/dist/tools.js"],
4
- "sourcesContent": ["import { z } from \"zod\";\nimport { assertContentHash, contentHash, ImmutableAssetRefSchema, ImmutableReleaseRefSchema, ReleaseHashSchema, sha256, } from \"./common.js\";\nimport { AgentSnapshotSchema, HarnessReleaseSchema } from \"./harness.js\";\nexport const MAX_HARNESS_SOURCE_PACKAGE_BYTES = 25 * 1024 * 1024;\nconst HarnessSourceFileSchema = z.object({\n path: ImmutableAssetRefSchema.shape.path,\n base64: z.string().max(Math.ceil(MAX_HARNESS_SOURCE_PACKAGE_BYTES / 3) * 4),\n}).strict();\nconst HarnessSourcePackageContentSchema = z.object({\n schemaVersion: z.literal(\"openpond.harnessSourcePackage.v1\"),\n agentSnapshot: AgentSnapshotSchema,\n harnessRelease: HarnessReleaseSchema,\n files: z.array(HarnessSourceFileSchema).max(10_000),\n}).strict();\nexport const HarnessSourcePackageSchema = HarnessSourcePackageContentSchema.extend({\n contentHash: ReleaseHashSchema,\n}).strict();\n/** The guest receives only policy bytes while retaining the complete release\n * manifest and identity. Verifier and host-private source remains on the host. */\nexport const HarnessPolicySourcePackageSchema = HarnessSourcePackageContentSchema.extend({\n schemaVersion: z.literal(\"openpond.harnessPolicySourcePackage.v1\"),\n contentHash: ReleaseHashSchema,\n}).strict();\nexport const HarnessSourceSelectionSchema = z.object({\n schemaVersion: z.literal(\"openpond.harnessSourceSelection.v1\"),\n mode: z.enum([\"taskset_owned\", \"selected_release\"]),\n harnessRelease: ImmutableReleaseRefSchema,\n sourcePackageHash: ReleaseHashSchema.nullable(),\n}).strict().superRefine((selection, context) => {\n if ((selection.mode === \"selected_release\") !== (selection.sourcePackageHash !== null)) {\n context.addIssue({ code: \"custom\", path: [\"sourcePackageHash\"], message: \"Only a selected release binds a source package.\" });\n }\n});\n/** Resolve the source selected by a captured bundle; missing source cannot be\n * interpreted as Taskset-owned execution when the bundle selected a release. */\nexport function resolveHarnessSourceSelection(input) {\n const selection = HarnessSourceSelectionSchema.parse(input.selection);\n if (selection.harnessRelease.id !== input.expectedRelease.id\n || selection.harnessRelease.contentHash !== input.expectedRelease.contentHash) {\n throw new Error(\"Harness source selection differs from its run manifest.\");\n }\n if (selection.mode === \"taskset_owned\") {\n if (input.sourcePackage !== undefined && input.sourcePackage !== null)\n throw new Error(\"Taskset-owned execution cannot include a selected Harness source package.\");\n return { selection, sourcePackage: null };\n }\n const sourcePackage = validateHarnessSourcePackage(input.sourcePackage, selection.harnessRelease);\n if (sourcePackage.contentHash !== selection.sourcePackageHash)\n throw new Error(\"Harness source selection differs from its captured package.\");\n return { selection, sourcePackage };\n}\n/** Capture the full released source. Runtime admission separately authorizes\n * export and capabilities; a source package never makes private files visible\n * to a policy merely by transporting them. */\nexport function createHarnessSourcePackage(input) {\n if ([...input.files.values()].reduce((total, bytes) => total + bytes.byteLength, 0) > MAX_HARNESS_SOURCE_PACKAGE_BYTES) {\n throw new Error(\"Harness source package exceeds its byte limit.\");\n }\n const content = HarnessSourcePackageContentSchema.parse({\n schemaVersion: \"openpond.harnessSourcePackage.v1\",\n agentSnapshot: input.agentSnapshot,\n harnessRelease: input.harnessRelease,\n files: [...input.files].sort(([a], [b]) => a.localeCompare(b)).map(([path, bytes]) => ({\n path,\n base64: encode(bytes),\n })),\n });\n return validateHarnessSourcePackage({ ...content, contentHash: contentHash(content) });\n}\nexport function createHarnessPolicySourcePackage(value, expected) {\n const source = validateHarnessSourcePackage(value, expected);\n const assets = new Map(source.harnessRelease.files.map((asset) => [asset.path, asset]));\n const content = {\n schemaVersion: \"openpond.harnessPolicySourcePackage.v1\",\n agentSnapshot: source.agentSnapshot,\n harnessRelease: source.harnessRelease,\n files: source.files.filter((file) => assets.get(file.path)?.visibility === \"policy\"),\n };\n return validateHarnessPolicySourcePackage({ ...content, contentHash: contentHash(content) }, expected);\n}\nexport function validateHarnessPolicySourcePackage(value, expected) {\n const source = HarnessPolicySourcePackageSchema.parse(value);\n assertContentHash(source, \"Harness policy source package\");\n assertContentHash(source.agentSnapshot, \"Harness policy source Agent snapshot\");\n assertContentHash(source.harnessRelease, \"Harness policy source release\");\n const { agentSnapshot, harnessRelease } = source;\n if (expected && (expected.id !== harnessRelease.id || expected.contentHash !== harnessRelease.contentHash)) {\n throw new Error(\"Harness policy source package differs from the selected release.\");\n }\n if (harnessRelease.agentSnapshot.id !== agentSnapshot.id\n || harnessRelease.agentSnapshot.contentHash !== agentSnapshot.contentHash) {\n throw new Error(\"Harness policy source release does not bind its Agent snapshot.\");\n }\n const assets = new Map();\n for (const asset of harnessRelease.files) {\n if (assets.has(asset.path))\n throw new Error(\"Harness policy source contains duplicate asset paths.\");\n assets.set(asset.path, asset);\n }\n for (const asset of [harnessRelease.program, agentSnapshot.dependencyLock,\n ...agentSnapshot.instructions, ...agentSnapshot.skills, ...agentSnapshot.agents]) {\n if (contentHash(assets.get(asset.path) ?? null) !== contentHash(asset)) {\n throw new Error(`Harness policy source dependency ${asset.path} is absent or differs from its release inventory.`);\n }\n }\n for (const asset of [harnessRelease.program, agentSnapshot.dependencyLock,\n ...agentSnapshot.instructions, ...agentSnapshot.skills]) {\n if (asset.visibility !== \"policy\")\n throw new Error(`Harness policy source dependency ${asset.path} is private.`);\n }\n const expectedPaths = new Set(harnessRelease.files.filter((asset) => asset.visibility === \"policy\").map((asset) => asset.path));\n const paths = new Set();\n let totalBytes = 0;\n for (const file of source.files) {\n if (paths.has(file.path))\n throw new Error(\"Harness policy source contains duplicate files.\");\n paths.add(file.path);\n const asset = assets.get(file.path);\n if (!asset || asset.visibility !== \"policy\")\n throw new Error(`Harness policy source file ${file.path} is not policy-visible.`);\n const bytes = decode(file.base64);\n totalBytes += bytes.byteLength;\n if (totalBytes > MAX_HARNESS_SOURCE_PACKAGE_BYTES)\n throw new Error(\"Harness policy source exceeds its byte limit.\");\n if (bytes.byteLength !== asset.sizeBytes || sha256(bytes) !== asset.contentHash) {\n throw new Error(`Harness policy source file ${file.path} differs from its immutable bytes.`);\n }\n }\n if (paths.size !== expectedPaths.size || [...expectedPaths].some((path) => !paths.has(path))) {\n throw new Error(\"Harness policy source is missing released policy files.\");\n }\n return source;\n}\nexport function harnessPolicySourcePackageFiles(value, expected) {\n const source = validateHarnessPolicySourcePackage(value, expected);\n return new Map(source.files.map((file) => [file.path, decode(file.base64)]));\n}\n/** Validate both release objects, their complete asset closure and exact bytes.\n * Rehashing the outer package cannot bless a substituted instruction or file. */\nexport function validateHarnessSourcePackage(value, expected) {\n const source = HarnessSourcePackageSchema.parse(value);\n assertContentHash(source, \"Harness source package\");\n assertContentHash(source.agentSnapshot, \"Harness source Agent snapshot\");\n assertContentHash(source.harnessRelease, \"Harness source release\");\n const { agentSnapshot, harnessRelease } = source;\n if (expected && (expected.id !== harnessRelease.id || expected.contentHash !== harnessRelease.contentHash)) {\n throw new Error(\"Harness source package differs from the selected release.\");\n }\n if (harnessRelease.agentSnapshot.id !== agentSnapshot.id\n || harnessRelease.agentSnapshot.contentHash !== agentSnapshot.contentHash) {\n throw new Error(\"Harness source release does not bind its Agent snapshot.\");\n }\n const assets = new Map();\n const ids = new Set();\n for (const asset of harnessRelease.files) {\n if (asset.path.includes(\"\\\\\") || asset.path.includes(\":\"))\n throw new Error(\"Harness source requires portable relative file paths.\");\n if (assets.has(asset.path) || ids.has(asset.id))\n throw new Error(\"Harness source contains duplicate asset paths or identities.\");\n assets.set(asset.path, asset);\n ids.add(asset.id);\n }\n for (const asset of [harnessRelease.program, agentSnapshot.dependencyLock,\n ...agentSnapshot.instructions, ...agentSnapshot.skills, ...agentSnapshot.agents]) {\n if (contentHash(assets.get(asset.path) ?? null) !== contentHash(asset)) {\n throw new Error(`Harness source dependency ${asset.path} is absent or differs from its release inventory.`);\n }\n }\n for (const asset of [...agentSnapshot.instructions, ...agentSnapshot.skills]) {\n if (asset.visibility !== \"policy\")\n throw new Error(`Harness policy source ${asset.path} is private.`);\n }\n const paths = new Set();\n let totalBytes = 0;\n for (const file of source.files) {\n if (paths.has(file.path))\n throw new Error(\"Harness source package contains duplicate files.\");\n paths.add(file.path);\n const asset = assets.get(file.path);\n if (!asset)\n throw new Error(`Harness source file ${file.path} is not declared by its release.`);\n const bytes = decode(file.base64);\n totalBytes += bytes.byteLength;\n if (totalBytes > MAX_HARNESS_SOURCE_PACKAGE_BYTES)\n throw new Error(\"Harness source package exceeds its byte limit.\");\n if (bytes.byteLength !== asset.sizeBytes || sha256(bytes) !== asset.contentHash) {\n throw new Error(`Harness source file ${file.path} differs from its immutable bytes.`);\n }\n }\n if (paths.size !== assets.size)\n throw new Error(\"Harness source package is missing released files.\");\n return source;\n}\n/** Return an owned byte snapshot, including visibility in the release inventory.\n * A runtime must select policy assets explicitly rather than expose this map. */\nexport function harnessSourcePackageFiles(value, expected) {\n const source = validateHarnessSourcePackage(value, expected);\n return new Map(source.files.map(file => [file.path, decode(file.base64)]));\n}\nfunction encode(bytes) {\n let binary = \"\";\n for (let offset = 0; offset < bytes.length; offset += 8_192) {\n binary += String.fromCharCode(...bytes.subarray(offset, offset + 8_192));\n }\n return btoa(binary);\n}\nfunction decode(base64) {\n let binary;\n try {\n binary = atob(base64);\n }\n catch {\n throw new Error(\"Harness source file is not valid base64.\");\n }\n if (btoa(binary) !== base64)\n throw new Error(\"Harness source file is not canonical base64.\");\n return Uint8Array.from(binary, character => character.charCodeAt(0));\n}\n", "import { z } from \"zod\";\nimport { FailureClassSchema, ImmutableArtifactRefSchema, ImmutableAssetRefSchema, ImmutableReleaseRefSchema, MetadataSchema, ReleaseHashSchema, ReleaseIdSchema, contentHash, } from \"./common.js\";\nimport { CapabilityRequirementSchema, ToolDeclarationSchema, } from \"./tools.js\";\nexport const PortabilityReportSchema = z.object({\n portable: z.boolean(),\n blockers: z.array(z.string().trim().min(1).max(2_000)).max(1_000),\n localOnlyAssetRefs: z.array(ReleaseIdSchema).max(10_000),\n hostPrivateAssetRefs: z.array(ReleaseIdSchema).max(10_000),\n}).strict();\nexport const AgentSnapshotContentSchema = z.object({\n schemaVersion: z.literal(\"openpond.agentSnapshot.v2\"),\n id: ReleaseIdSchema,\n sourceRelease: ImmutableReleaseRefSchema.nullable(),\n instructions: z.array(ImmutableAssetRefSchema).max(10_000),\n skills: z.array(ImmutableAssetRefSchema).max(10_000),\n agents: z.array(ImmutableAssetRefSchema).max(10_000),\n toolDeclarations: z.array(ToolDeclarationSchema).max(200),\n capabilityRequirements: z.array(CapabilityRequirementSchema).max(200),\n dependencyLock: ImmutableAssetRefSchema,\n portability: PortabilityReportSchema,\n metadata: MetadataSchema,\n}).strict();\nexport const AgentSnapshotSchema = AgentSnapshotContentSchema.extend({ contentHash: ReleaseHashSchema }).strict();\nexport const LifecycleContractSchema = z.object({\n create: z.literal(true),\n reset: z.literal(true),\n step: z.literal(true),\n collect: z.literal(true),\n destroy: z.literal(true),\n resetScope: z.enum([\"task\", \"attempt\"]),\n}).strict();\nexport const GraderInterfaceContractSchema = z.object({\n visibleEvidence: z.array(ReleaseIdSchema).max(1_000),\n privilegedEvidence: z.array(ReleaseIdSchema).max(1_000),\n privateVerifierIsolation: z.boolean(),\n}).strict();\nexport const HarnessReleaseContentSchema = z.object({\n schemaVersion: z.literal(\"openpond.harnessRelease.v2\"),\n id: ReleaseIdSchema,\n agentSnapshot: ImmutableReleaseRefSchema,\n program: ImmutableAssetRefSchema,\n tools: z.array(ToolDeclarationSchema).max(200),\n lifecycle: LifecycleContractSchema,\n graderInterface: GraderInterfaceContractSchema,\n files: z.array(ImmutableAssetRefSchema).max(100_000),\n metadata: MetadataSchema,\n}).strict();\nexport const HarnessReleaseSchema = HarnessReleaseContentSchema.extend({ contentHash: ReleaseHashSchema }).strict();\nexport const ModelActionSchema = z.object({\n id: ReleaseIdSchema,\n turn: z.number().int().nonnegative(),\n kind: z.enum([\"message\", \"tool_call\", \"terminal\"]),\n name: ReleaseIdSchema.nullable(),\n arguments: z.record(z.string(), z.unknown()),\n content: z.string().max(1_000_000).nullable(),\n}).strict();\nexport const ToolObservationSchema = z.object({\n actionId: ReleaseIdSchema,\n turn: z.number().int().nonnegative(),\n terminal: z.boolean(),\n output: z.record(z.string(), z.unknown()),\n artifactRefs: z.array(ImmutableArtifactRefSchema).max(100_000),\n}).strict();\nexport function createAgentSnapshot(input) {\n const content = AgentSnapshotContentSchema.parse(input);\n return AgentSnapshotSchema.parse({ ...content, contentHash: contentHash(content) });\n}\nexport function createHarnessRelease(input) {\n const content = HarnessReleaseContentSchema.parse(input);\n return HarnessReleaseSchema.parse({ ...content, contentHash: contentHash(content) });\n}\nexport const HarnessLifecycleEventSchema = z.object({\n sequence: z.number().int().nonnegative(),\n type: z.enum([\"created\", \"reset\", \"action\", \"observation\", \"terminal\", \"failure\", \"collected\", \"destroyed\"]),\n payloadHash: ReleaseHashSchema,\n metadata: MetadataSchema,\n}).strict();\nexport const HarnessTraceSchema = z.object({\n schemaVersion: z.literal(\"openpond.harnessTrace.v1\"),\n manifest: ImmutableReleaseRefSchema,\n taskId: ReleaseIdSchema,\n seed: z.string().trim().min(1).max(500),\n events: z.array(HarnessLifecycleEventSchema).max(1_000_000),\n actions: z.array(ModelActionSchema).max(100_000),\n observations: z.array(ToolObservationSchema).max(100_000),\n terminal: z.boolean(),\n failureClass: FailureClassSchema.nullable(),\n output: z.record(z.string(), z.unknown()),\n contentHash: ReleaseHashSchema,\n}).strict();\n", "import { z } from \"zod\";\nimport { ReleaseHashSchema, ReleaseIdSchema } from \"./common.js\";\nexport const ToolDeclarationSchema = z.object({\n name: z.string().trim().min(1).max(64).regex(/^[a-zA-Z][a-zA-Z0-9_-]*$/),\n description: z.string().trim().min(1).max(2_000),\n inputSchema: z.record(z.string(), z.unknown()),\n inputSchemaHash: ReleaseHashSchema,\n sideEffect: z.enum([\"read\", \"write\"]),\n timeoutMs: z.number().int().positive().max(3_600_000),\n}).strict();\nexport const CapabilityRequirementSchema = z.object({\n id: ReleaseIdSchema,\n required: z.boolean(),\n scopes: z.array(z.string().trim().min(1).max(500)).max(100).default([]),\n portability: z.enum([\"portable\", \"host_adapter\", \"local_only\", \"hosted_only\"]),\n}).strict();\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { z } from \"zod\";\nimport { assertContentHash, contentHash, ImmutableAssetRefSchema, ImmutableReleaseRefSchema, ReleaseHashSchema, sha256, } from \"./common.js\";\nimport { AgentSnapshotSchema, HarnessReleaseSchema } from \"./harness.js\";\nexport const MAX_HARNESS_SOURCE_PACKAGE_BYTES = 25 * 1024 * 1024;\nconst HarnessSourceFileSchema = z.object({\n path: ImmutableAssetRefSchema.shape.path,\n base64: z.string().max(Math.ceil(MAX_HARNESS_SOURCE_PACKAGE_BYTES / 3) * 4),\n}).strict();\nconst HarnessSourcePackageContentSchema = z.object({\n schemaVersion: z.literal(\"openpond.harnessSourcePackage.v1\"),\n agentSnapshot: AgentSnapshotSchema,\n harnessRelease: HarnessReleaseSchema,\n files: z.array(HarnessSourceFileSchema).max(10_000),\n}).strict();\nexport const HarnessSourcePackageSchema = HarnessSourcePackageContentSchema.extend({\n contentHash: ReleaseHashSchema,\n}).strict();\n/** The guest receives only policy bytes while retaining the complete release\n * manifest and identity. Verifier and host-private source remains on the host. */\nexport const HarnessPolicySourcePackageSchema = HarnessSourcePackageContentSchema.extend({\n schemaVersion: z.literal(\"openpond.harnessPolicySourcePackage.v1\"),\n contentHash: ReleaseHashSchema,\n}).strict();\nexport const HarnessSourceSelectionSchema = z.object({\n schemaVersion: z.literal(\"openpond.harnessSourceSelection.v1\"),\n mode: z.enum([\"taskset_owned\", \"selected_release\"]),\n harnessRelease: ImmutableReleaseRefSchema,\n sourcePackageHash: ReleaseHashSchema.nullable(),\n}).strict().superRefine((selection, context) => {\n if ((selection.mode === \"selected_release\") !== (selection.sourcePackageHash !== null)) {\n context.addIssue({ code: \"custom\", path: [\"sourcePackageHash\"], message: \"Only a selected release binds a source package.\" });\n }\n});\n/** Resolve the source selected by a captured bundle; missing source cannot be\n * interpreted as Taskset-owned execution when the bundle selected a release. */\nexport function resolveHarnessSourceSelection(input) {\n const selection = HarnessSourceSelectionSchema.parse(input.selection);\n if (selection.harnessRelease.id !== input.expectedRelease.id\n || selection.harnessRelease.contentHash !== input.expectedRelease.contentHash) {\n throw new Error(\"Harness source selection differs from its run manifest.\");\n }\n if (selection.mode === \"taskset_owned\") {\n if (input.sourcePackage !== undefined && input.sourcePackage !== null)\n throw new Error(\"Taskset-owned execution cannot include a selected Harness source package.\");\n return { selection, sourcePackage: null };\n }\n const sourcePackage = validateHarnessSourcePackage(input.sourcePackage, selection.harnessRelease);\n if (sourcePackage.contentHash !== selection.sourcePackageHash)\n throw new Error(\"Harness source selection differs from its captured package.\");\n return { selection, sourcePackage };\n}\n/** Capture the full released source. Runtime admission separately authorizes\n * export and capabilities; a source package never makes private files visible\n * to a policy merely by transporting them. */\nexport function createHarnessSourcePackage(input) {\n if ([...input.files.values()].reduce((total, bytes) => total + bytes.byteLength, 0) > MAX_HARNESS_SOURCE_PACKAGE_BYTES) {\n throw new Error(\"Harness source package exceeds its byte limit.\");\n }\n const content = HarnessSourcePackageContentSchema.parse({\n schemaVersion: \"openpond.harnessSourcePackage.v1\",\n agentSnapshot: input.agentSnapshot,\n harnessRelease: input.harnessRelease,\n files: [...input.files].sort(([a], [b]) => a.localeCompare(b)).map(([path, bytes]) => ({\n path,\n base64: encode(bytes),\n })),\n });\n return validateHarnessSourcePackage({ ...content, contentHash: contentHash(content) });\n}\nexport function createHarnessPolicySourcePackage(value, expected) {\n const source = validateHarnessSourcePackage(value, expected);\n const assets = new Map(source.harnessRelease.files.map((asset) => [asset.path, asset]));\n const content = {\n schemaVersion: \"openpond.harnessPolicySourcePackage.v1\",\n agentSnapshot: source.agentSnapshot,\n harnessRelease: source.harnessRelease,\n files: source.files.filter((file) => assets.get(file.path)?.visibility === \"policy\"),\n };\n return validateHarnessPolicySourcePackage({ ...content, contentHash: contentHash(content) }, expected);\n}\nexport function validateHarnessPolicySourcePackage(value, expected) {\n const source = HarnessPolicySourcePackageSchema.parse(value);\n assertContentHash(source, \"Harness policy source package\");\n assertContentHash(source.agentSnapshot, \"Harness policy source Agent snapshot\");\n assertContentHash(source.harnessRelease, \"Harness policy source release\");\n const { agentSnapshot, harnessRelease } = source;\n if (expected && (expected.id !== harnessRelease.id || expected.contentHash !== harnessRelease.contentHash)) {\n throw new Error(\"Harness policy source package differs from the selected release.\");\n }\n if (harnessRelease.agentSnapshot.id !== agentSnapshot.id\n || harnessRelease.agentSnapshot.contentHash !== agentSnapshot.contentHash) {\n throw new Error(\"Harness policy source release does not bind its Agent snapshot.\");\n }\n const assets = new Map();\n for (const asset of harnessRelease.files) {\n if (assets.has(asset.path))\n throw new Error(\"Harness policy source contains duplicate asset paths.\");\n assets.set(asset.path, asset);\n }\n for (const asset of [harnessRelease.program, agentSnapshot.dependencyLock,\n ...agentSnapshot.instructions, ...agentSnapshot.skills, ...agentSnapshot.agents]) {\n if (contentHash(assets.get(asset.path) ?? null) !== contentHash(asset)) {\n throw new Error(`Harness policy source dependency ${asset.path} is absent or differs from its release inventory.`);\n }\n }\n for (const asset of [harnessRelease.program, agentSnapshot.dependencyLock,\n ...agentSnapshot.instructions, ...agentSnapshot.skills]) {\n if (asset.visibility !== \"policy\")\n throw new Error(`Harness policy source dependency ${asset.path} is private.`);\n }\n const expectedPaths = new Set(harnessRelease.files.filter((asset) => asset.visibility === \"policy\").map((asset) => asset.path));\n const paths = new Set();\n let totalBytes = 0;\n for (const file of source.files) {\n if (paths.has(file.path))\n throw new Error(\"Harness policy source contains duplicate files.\");\n paths.add(file.path);\n const asset = assets.get(file.path);\n if (!asset || asset.visibility !== \"policy\")\n throw new Error(`Harness policy source file ${file.path} is not policy-visible.`);\n const bytes = decode(file.base64);\n totalBytes += bytes.byteLength;\n if (totalBytes > MAX_HARNESS_SOURCE_PACKAGE_BYTES)\n throw new Error(\"Harness policy source exceeds its byte limit.\");\n if (bytes.byteLength !== asset.sizeBytes || sha256(bytes) !== asset.contentHash) {\n throw new Error(`Harness policy source file ${file.path} differs from its immutable bytes.`);\n }\n }\n if (paths.size !== expectedPaths.size || [...expectedPaths].some((path) => !paths.has(path))) {\n throw new Error(\"Harness policy source is missing released policy files.\");\n }\n return source;\n}\nexport function harnessPolicySourcePackageFiles(value, expected) {\n const source = validateHarnessPolicySourcePackage(value, expected);\n return new Map(source.files.map((file) => [file.path, decode(file.base64)]));\n}\n/** Validate both release objects, their complete asset closure and exact bytes.\n * Rehashing the outer package cannot bless a substituted instruction or file. */\nexport function validateHarnessSourcePackage(value, expected) {\n const source = HarnessSourcePackageSchema.parse(value);\n assertContentHash(source, \"Harness source package\");\n assertContentHash(source.agentSnapshot, \"Harness source Agent snapshot\");\n assertContentHash(source.harnessRelease, \"Harness source release\");\n const { agentSnapshot, harnessRelease } = source;\n if (expected && (expected.id !== harnessRelease.id || expected.contentHash !== harnessRelease.contentHash)) {\n throw new Error(\"Harness source package differs from the selected release.\");\n }\n if (harnessRelease.agentSnapshot.id !== agentSnapshot.id\n || harnessRelease.agentSnapshot.contentHash !== agentSnapshot.contentHash) {\n throw new Error(\"Harness source release does not bind its Agent snapshot.\");\n }\n const assets = new Map();\n const ids = new Set();\n for (const asset of harnessRelease.files) {\n if (asset.path.includes(\"\\\\\") || asset.path.includes(\":\"))\n throw new Error(\"Harness source requires portable relative file paths.\");\n if (assets.has(asset.path) || ids.has(asset.id))\n throw new Error(\"Harness source contains duplicate asset paths or identities.\");\n assets.set(asset.path, asset);\n ids.add(asset.id);\n }\n for (const asset of [harnessRelease.program, agentSnapshot.dependencyLock,\n ...agentSnapshot.instructions, ...agentSnapshot.skills, ...agentSnapshot.agents]) {\n if (contentHash(assets.get(asset.path) ?? null) !== contentHash(asset)) {\n throw new Error(`Harness source dependency ${asset.path} is absent or differs from its release inventory.`);\n }\n }\n for (const asset of [...agentSnapshot.instructions, ...agentSnapshot.skills]) {\n if (asset.visibility !== \"policy\")\n throw new Error(`Harness policy source ${asset.path} is private.`);\n }\n const paths = new Set();\n let totalBytes = 0;\n for (const file of source.files) {\n if (paths.has(file.path))\n throw new Error(\"Harness source package contains duplicate files.\");\n paths.add(file.path);\n const asset = assets.get(file.path);\n if (!asset)\n throw new Error(`Harness source file ${file.path} is not declared by its release.`);\n const bytes = decode(file.base64);\n totalBytes += bytes.byteLength;\n if (totalBytes > MAX_HARNESS_SOURCE_PACKAGE_BYTES)\n throw new Error(\"Harness source package exceeds its byte limit.\");\n if (bytes.byteLength !== asset.sizeBytes || sha256(bytes) !== asset.contentHash) {\n throw new Error(`Harness source file ${file.path} differs from its immutable bytes.`);\n }\n }\n if (paths.size !== assets.size)\n throw new Error(\"Harness source package is missing released files.\");\n return source;\n}\n/** Return an owned byte snapshot, including visibility in the release inventory.\n * A runtime must select policy assets explicitly rather than expose this map. */\nexport function harnessSourcePackageFiles(value, expected) {\n const source = validateHarnessSourcePackage(value, expected);\n return new Map(source.files.map(file => [file.path, decode(file.base64)]));\n}\nfunction encode(bytes) {\n let binary = \"\";\n for (let offset = 0; offset < bytes.length; offset += 8_192) {\n binary += String.fromCharCode(...bytes.subarray(offset, offset + 8_192));\n }\n return btoa(binary);\n}\nfunction decode(base64) {\n let binary;\n try {\n binary = atob(base64);\n }\n catch {\n throw new Error(\"Harness source file is not valid base64.\");\n }\n if (btoa(binary) !== base64)\n throw new Error(\"Harness source file is not canonical base64.\");\n const bytes = new Uint8Array(binary.length);\n for (let index = 0; index < binary.length; index++)\n bytes[index] = binary.charCodeAt(index);\n return bytes;\n}\n", "import { z } from \"zod\";\nimport { FailureClassSchema, ImmutableArtifactRefSchema, ImmutableAssetRefSchema, ImmutableReleaseRefSchema, MetadataSchema, ReleaseHashSchema, ReleaseIdSchema, contentHash, } from \"./common.js\";\nimport { CapabilityRequirementSchema, ToolDeclarationSchema, } from \"./tools.js\";\nexport const PortabilityReportSchema = z.object({\n portable: z.boolean(),\n blockers: z.array(z.string().trim().min(1).max(2_000)).max(1_000),\n localOnlyAssetRefs: z.array(ReleaseIdSchema).max(10_000),\n hostPrivateAssetRefs: z.array(ReleaseIdSchema).max(10_000),\n}).strict();\nexport const AgentSnapshotContentSchema = z.object({\n schemaVersion: z.literal(\"openpond.agentSnapshot.v2\"),\n id: ReleaseIdSchema,\n sourceRelease: ImmutableReleaseRefSchema.nullable(),\n instructions: z.array(ImmutableAssetRefSchema).max(10_000),\n skills: z.array(ImmutableAssetRefSchema).max(10_000),\n agents: z.array(ImmutableAssetRefSchema).max(10_000),\n toolDeclarations: z.array(ToolDeclarationSchema).max(200),\n capabilityRequirements: z.array(CapabilityRequirementSchema).max(200),\n dependencyLock: ImmutableAssetRefSchema,\n portability: PortabilityReportSchema,\n metadata: MetadataSchema,\n}).strict();\nexport const AgentSnapshotSchema = AgentSnapshotContentSchema.extend({ contentHash: ReleaseHashSchema }).strict();\nexport const LifecycleContractSchema = z.object({\n create: z.literal(true),\n reset: z.literal(true),\n step: z.literal(true),\n collect: z.literal(true),\n destroy: z.literal(true),\n resetScope: z.enum([\"task\", \"attempt\"]),\n}).strict();\nexport const GraderInterfaceContractSchema = z.object({\n visibleEvidence: z.array(ReleaseIdSchema).max(1_000),\n privilegedEvidence: z.array(ReleaseIdSchema).max(1_000),\n privateVerifierIsolation: z.boolean(),\n}).strict();\nexport const HarnessReleaseContentSchema = z.object({\n schemaVersion: z.literal(\"openpond.harnessRelease.v2\"),\n id: ReleaseIdSchema,\n agentSnapshot: ImmutableReleaseRefSchema,\n program: ImmutableAssetRefSchema,\n tools: z.array(ToolDeclarationSchema).max(200),\n lifecycle: LifecycleContractSchema,\n graderInterface: GraderInterfaceContractSchema,\n files: z.array(ImmutableAssetRefSchema).max(100_000),\n metadata: MetadataSchema,\n}).strict();\nexport const HarnessReleaseSchema = HarnessReleaseContentSchema.extend({ contentHash: ReleaseHashSchema }).strict();\nexport const ModelActionSchema = z.object({\n id: ReleaseIdSchema,\n turn: z.number().int().nonnegative(),\n kind: z.enum([\"message\", \"tool_call\", \"terminal\"]),\n name: ReleaseIdSchema.nullable(),\n arguments: z.record(z.string(), z.unknown()),\n content: z.string().max(1_000_000).nullable(),\n}).strict();\nexport const ToolObservationSchema = z.object({\n actionId: ReleaseIdSchema,\n turn: z.number().int().nonnegative(),\n terminal: z.boolean(),\n output: z.record(z.string(), z.unknown()),\n artifactRefs: z.array(ImmutableArtifactRefSchema).max(100_000),\n}).strict();\nexport function createAgentSnapshot(input) {\n const content = AgentSnapshotContentSchema.parse(input);\n return AgentSnapshotSchema.parse({ ...content, contentHash: contentHash(content) });\n}\nexport function createHarnessRelease(input) {\n const content = HarnessReleaseContentSchema.parse(input);\n return HarnessReleaseSchema.parse({ ...content, contentHash: contentHash(content) });\n}\nexport const HarnessLifecycleEventSchema = z.object({\n sequence: z.number().int().nonnegative(),\n type: z.enum([\"created\", \"reset\", \"action\", \"observation\", \"terminal\", \"failure\", \"collected\", \"destroyed\"]),\n payloadHash: ReleaseHashSchema,\n metadata: MetadataSchema,\n}).strict();\nexport const HarnessTraceSchema = z.object({\n schemaVersion: z.literal(\"openpond.harnessTrace.v1\"),\n manifest: ImmutableReleaseRefSchema,\n taskId: ReleaseIdSchema,\n seed: z.string().trim().min(1).max(500),\n events: z.array(HarnessLifecycleEventSchema).max(1_000_000),\n actions: z.array(ModelActionSchema).max(100_000),\n observations: z.array(ToolObservationSchema).max(100_000),\n terminal: z.boolean(),\n failureClass: FailureClassSchema.nullable(),\n output: z.record(z.string(), z.unknown()),\n contentHash: ReleaseHashSchema,\n}).strict();\n", "import { z } from \"zod\";\nimport { ReleaseHashSchema, ReleaseIdSchema } from \"./common.js\";\nexport const ToolDeclarationSchema = z.object({\n name: z.string().trim().min(1).max(64).regex(/^[a-zA-Z][a-zA-Z0-9_-]*$/),\n description: z.string().trim().min(1).max(2_000),\n inputSchema: z.record(z.string(), z.unknown()),\n inputSchemaHash: ReleaseHashSchema,\n sideEffect: z.enum([\"read\", \"write\"]),\n timeoutMs: z.number().int().positive().max(3_600_000),\n}).strict();\nexport const CapabilityRequirementSchema = z.object({\n id: ReleaseIdSchema,\n required: z.boolean(),\n scopes: z.array(z.string().trim().min(1).max(500)).max(100).default([]),\n portability: z.enum([\"portable\", \"host_adapter\", \"local_only\", \"hosted_only\"]),\n}).strict();\n"],
5
+ "mappings": "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",
6
6
  "names": ["z", "z", "z", "z"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  HarnessExperimentPolicySchema,
3
3
  ModelTasksetRunRequestSchema
4
- } from "./chunk-WTHJ3H4M.js";
4
+ } from "./chunk-7WUJBFCH.js";
5
5
  import {
6
6
  contentHash
7
7
  } from "./chunk-COPVBJPL.js";
@@ -168,4 +168,4 @@ export {
168
168
  verifyExperimentDefinition,
169
169
  experimentDefinitionRef
170
170
  };
171
- //# sourceMappingURL=chunk-HAOPRFYQ.js.map
171
+ //# sourceMappingURL=chunk-L5PQPAU6.js.map
@@ -6,7 +6,7 @@ import {
6
6
  TasksetPackageSchema,
7
7
  tasksetPackageRewardBinding,
8
8
  validateTasksetPackage
9
- } from "./chunk-Z4OLAEPL.js";
9
+ } from "./chunk-644E3NM2.js";
10
10
  import {
11
11
  HostedModelProjectSummarySchema,
12
12
  HostedModelProjectSyncSchema,
@@ -186,4 +186,4 @@ export {
186
186
  OpenPondTasksetPackageError,
187
187
  OpenPondTasksetPackageClient
188
188
  };
189
- //# sourceMappingURL=chunk-DUPHBKVV.js.map
189
+ //# sourceMappingURL=chunk-LHRHB5EJ.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  RunExperimentSchema
3
- } from "./chunk-35OVUYPI.js";
3
+ } from "./chunk-YSKUXQ2N.js";
4
4
  import {
5
5
  HostedModelProjectSummarySchema,
6
6
  OpenPondProtocolError,
@@ -291,4 +291,4 @@ export {
291
291
  HostedTrainingPolicyControlSchema,
292
292
  TrainingHandoffOriginSchema2 as TrainingHandoffOriginSchema
293
293
  };
294
- //# sourceMappingURL=chunk-5GMY4TTF.js.map
294
+ //# sourceMappingURL=chunk-OEPYLZXK.js.map