openpond-sdk 0.9.7 → 0.9.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-SR55WVPK.js → chunk-4HZORGK3.js} +2 -2
- package/dist/{chunk-CNGJF6AM.js → chunk-4JRSH2TT.js} +4 -4
- package/dist/chunk-4JRSH2TT.js.map +7 -0
- package/dist/{chunk-XR6CLSCS.js → chunk-BGXWHDYM.js} +3 -2
- package/dist/chunk-BGXWHDYM.js.map +7 -0
- package/dist/{chunk-A4ZDOZKP.js → chunk-K3JCP4FO.js} +11 -5
- package/dist/chunk-K3JCP4FO.js.map +7 -0
- package/dist/{chunk-TQ5ASK7D.js → chunk-XMKEFQ62.js} +2 -2
- package/dist/{chunk-62LWLACP.js → chunk-YYJ4T4U4.js} +2 -2
- package/dist/dataset-marketplace.js +11 -0
- package/dist/dataset-marketplace.js.map +2 -2
- package/dist/dataset-workspaces.js +78 -25
- package/dist/dataset-workspaces.js.map +4 -4
- package/dist/experiments.js +92 -5
- package/dist/experiments.js.map +4 -4
- package/dist/index.js +4 -4
- package/dist/learning.js +8 -0
- package/dist/learning.js.map +3 -3
- package/dist/model-starter-attempts.js +1 -1
- package/dist/model-taskset-runs.js +2 -2
- package/dist/taskset-catalog.js +1 -1
- package/dist/taskset-drafts.js +2 -2
- package/dist/taskset-packages.js +2 -2
- package/dist/types/packages/sdk/src/dataset-grader-selection.d.ts +24 -0
- package/dist/types/packages/sdk/src/dataset-grader-selection.d.ts.map +1 -0
- package/dist/types/packages/sdk/src/dataset-marketplace.d.ts +9 -0
- package/dist/types/packages/sdk/src/dataset-marketplace.d.ts.map +1 -1
- package/dist/types/packages/sdk/src/dataset-workspace-client.d.ts +1099 -34
- package/dist/types/packages/sdk/src/dataset-workspace-client.d.ts.map +1 -1
- package/dist/types/packages/sdk/src/dataset-workspace-contracts.d.ts +23 -12
- package/dist/types/packages/sdk/src/dataset-workspace-contracts.d.ts.map +1 -1
- package/dist/types/packages/sdk/src/dataset-workspace-operations.d.ts +1617 -0
- package/dist/types/packages/sdk/src/dataset-workspace-operations.d.ts.map +1 -0
- package/dist/types/packages/sdk/src/dataset-workspaces.d.ts +1 -0
- package/dist/types/packages/sdk/src/dataset-workspaces.d.ts.map +1 -1
- package/dist/types/packages/sdk/src/experiment-client.d.ts.map +1 -1
- package/dist/types/packages/sdk/src/experiment-history.d.ts +266 -0
- package/dist/types/packages/sdk/src/experiment-history.d.ts.map +1 -0
- package/dist/types/packages/sdk/src/experiments.d.ts +2 -0
- package/dist/types/packages/sdk/src/experiments.d.ts.map +1 -1
- package/dist/types/packages/sdk/src/grader-feedback-key.d.ts +3 -0
- package/dist/types/packages/sdk/src/grader-feedback-key.d.ts.map +1 -0
- package/dist/types/packages/sdk/src/learning-batch-assets.d.ts +2 -2
- package/dist/types/packages/sdk/src/learning-client.d.ts +1 -1
- package/dist/types/packages/sdk/src/learning.d.ts +1 -0
- package/dist/types/packages/sdk/src/learning.d.ts.map +1 -1
- package/dist/types/packages/sdk/src/model-batch-review-preparation.d.ts +3 -3
- package/dist/types/packages/sdk/src/model-batch-review.d.ts +7 -7
- package/dist/types/packages/sdk/src/model-learning-policy.d.ts +2 -2
- package/dist/types/packages/sdk/src/model-starter-attempts.d.ts +2 -1
- package/dist/types/packages/sdk/src/model-starter-attempts.d.ts.map +1 -1
- package/dist/types/packages/sdk/src/model-starter-catalog.d.ts +1 -1
- package/dist/types/packages/sdk/src/model-starters.d.ts +1 -1
- package/dist/types/packages/sdk/src/task-inventory.d.ts +1 -1
- package/dist/types/packages/sdk/src/taskset-authored-contracts.d.ts +6 -6
- package/dist/types/packages/sdk/src/taskset-authored-files.d.ts +6 -6
- package/dist/types/packages/sdk/src/taskset-authored-portable-release.d.ts +2 -2
- package/dist/types/packages/sdk/src/taskset-catalog.d.ts +7 -0
- package/dist/types/packages/sdk/src/taskset-catalog.d.ts.map +1 -1
- package/dist/types/packages/sdk/src/taskset-draft-api-contracts.d.ts +12 -12
- package/dist/types/packages/sdk/src/taskset-draft-client.d.ts +36 -36
- package/dist/types/packages/sdk/src/taskset-draft-core.d.ts +6 -6
- package/dist/types/packages/sdk/src/taskset-draft-dataset-artifacts.d.ts +11 -11
- package/dist/types/packages/sdk/src/taskset-draft-document.d.ts +8 -8
- package/dist/types/packages/sdk/src/taskset-draft-package-compiler.d.ts +10 -10
- package/dist/types/packages/sdk/src/taskset-draft-source.d.ts +12 -12
- package/dist/types/packages/sdk/src/taskset-draft-workspace.d.ts +12 -12
- package/dist/types/packages/sdk/src/taskset-package-learning.d.ts +4 -4
- package/dist/types/packages/sdk/src/taskset-package-projection.d.ts +11 -11
- package/dist/types/packages/sdk/src/training-learning-batch.d.ts +14 -14
- package/dist/types/packages/sdk/src/training-project-client.d.ts +8 -8
- package/dist/types/packages/sdk/src/training-project-contracts.d.ts +11 -11
- package/package.json +1 -1
- package/dist/chunk-A4ZDOZKP.js.map +0 -7
- package/dist/chunk-CNGJF6AM.js.map +0 -7
- package/dist/chunk-XR6CLSCS.js.map +0 -7
- /package/dist/{chunk-SR55WVPK.js.map → chunk-4HZORGK3.js.map} +0 -0
- /package/dist/{chunk-TQ5ASK7D.js.map → chunk-XMKEFQ62.js.map} +0 -0
- /package/dist/{chunk-62LWLACP.js.map → chunk-YYJ4T4U4.js.map} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ModelTasksetRunRequestSchema
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-YYJ4T4U4.js";
|
|
4
4
|
import {
|
|
5
5
|
contentHash
|
|
6
6
|
} from "./chunk-QUOW6URQ.js";
|
|
@@ -155,4 +155,4 @@ export {
|
|
|
155
155
|
verifyExperimentDefinition,
|
|
156
156
|
experimentDefinitionRef
|
|
157
157
|
};
|
|
158
|
-
//# sourceMappingURL=chunk-
|
|
158
|
+
//# sourceMappingURL=chunk-4HZORGK3.js.map
|
|
@@ -9,11 +9,11 @@ import {
|
|
|
9
9
|
StartExperimentSchema,
|
|
10
10
|
experimentDefinitionRef,
|
|
11
11
|
verifyExperimentDefinition
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-4HZORGK3.js";
|
|
13
13
|
import {
|
|
14
14
|
verifyHarnessExperimentManifest,
|
|
15
15
|
verifyModelTasksetRunDetails
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-YYJ4T4U4.js";
|
|
17
17
|
import {
|
|
18
18
|
ImmutableReleaseRefSchema,
|
|
19
19
|
contentHash
|
|
@@ -125,7 +125,7 @@ var OpenPondExperimentsClient = class {
|
|
|
125
125
|
}
|
|
126
126
|
async list(value = {}, signal) {
|
|
127
127
|
const query = ExperimentListQuerySchema.parse(value);
|
|
128
|
-
const params = new URLSearchParams(Object.entries(query).map(([key, value2]) => [key, String(value2)]));
|
|
128
|
+
const params = new URLSearchParams(Object.entries(query).filter(([, value2]) => value2 !== void 0).map(([key, value2]) => [key, String(value2)]));
|
|
129
129
|
const page = z2.object({ items: z2.array(z2.unknown()).max(100), nextCursor: Id2.nullable() }).strict().parse(await this.request(`?${params}`, "GET", void 0, signal));
|
|
130
130
|
const items = page.items.map((value2) => this.definition(value2));
|
|
131
131
|
if (items.length > query.limit || new Set(items.map((item) => item.id)).size !== items.length || items.some((item) => query.projectId && item.request.project?.id !== query.projectId || query.datasetHash && item.request.taskset.contentHash !== query.datasetHash))
|
|
@@ -253,4 +253,4 @@ export {
|
|
|
253
253
|
OpenPondExperimentError,
|
|
254
254
|
OpenPondExperimentsClient
|
|
255
255
|
};
|
|
256
|
-
//# sourceMappingURL=chunk-
|
|
256
|
+
//# sourceMappingURL=chunk-4JRSH2TT.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/experiment-scoring-contracts.ts", "../src/experiment-client.ts"],
|
|
4
|
+
"sourcesContent": ["import { z } from \"zod\";\nimport { contentHash, ImmutableReleaseRefSchema } from \"@openpond/harness\";\nimport { RewardReleaseRefSchema } from \"@openpond/evals/rewards\";\nimport { ExperimentGraderPinSchema } from \"./experiment-contracts.js\";\nimport { ExperimentFieldMappingsSchema } from \"./experiment-field-mappings.js\";\n\nconst Id = z.string().trim().min(1).max(200);\nexport const ExperimentScoringRequestSchema = z.object({\n operationId: Id,\n execution: ImmutableReleaseRefSchema,\n graders: z.array(RewardReleaseRefSchema).min(1).max(100),\n maximumCostUsd: z.number().finite().min(0.000001).max(10_000),\n mappings: z.array(z.object({ graderId: Id, fields: ExperimentFieldMappingsSchema }).strict()).max(100).optional(),\n}).strict().superRefine((value, context) => {\n if (new Set(value.graders.map(grader => grader.id)).size !== value.graders.length)\n context.addIssue({ code: \"custom\", path: [\"graders\"], message: \"Select each grader once.\" });\n if (value.mappings && (new Set(value.mappings.map(mapping => mapping.graderId)).size !== value.mappings.length\n || value.mappings.some(mapping => !value.graders.some(grader => grader.id === mapping.graderId))))\n context.addIssue({ code: \"custom\", path: [\"mappings\"], message: \"Map each selected grader at most once.\" });\n});\nexport type ExperimentScoringRequest = z.infer<typeof ExperimentScoringRequestSchema>;\n\nconst ScoringPassContent = z.object({\n schemaVersion: z.literal(\"openpond.experimentScoringPass.v1\"),\n id: Id, teamId: Id, revision: z.number().int().positive(),\n request: ExperimentScoringRequestSchema,\n graders: z.array(ExperimentGraderPinSchema).min(1).max(100),\n status: z.enum([\"queued\", \"running\", \"cancelling\", \"completed\", \"failed\", \"cancelled\"]),\n totalCount: z.number().int().min(1).max(10_000),\n counts: z.object({ pending: z.number().int().nonnegative(), running: z.number().int().nonnegative(),\n scored: z.number().int().nonnegative(), unavailable: z.number().int().nonnegative(),\n failed: z.number().int().nonnegative(), cancelled: z.number().int().nonnegative() }).strict(),\n resultAvailable: z.boolean(), createdAt: z.iso.datetime(), startedAt: z.iso.datetime().nullable(),\n completedAt: z.iso.datetime().nullable(),\n error: z.object({ code: Id, message: z.string().max(2_000) }).strict().nullable(),\n}).strict();\nexport const ExperimentScoringPassSchema = ScoringPassContent.extend({ contentHash: z.string().regex(/^[a-f0-9]{64}$/) });\nexport type ExperimentScoringPass = z.infer<typeof ExperimentScoringPassSchema>;\n\n/** A pass grades owned output and carries no model-execution authority. */\nexport function verifyExperimentScoringPass(value: unknown) {\n const pass = ExperimentScoringPassSchema.parse(value);\n const { contentHash: actual, ...content } = pass;\n if (contentHash(content) !== actual || Object.values(pass.counts).reduce((sum, count) => sum + count, 0) !== pass.totalCount)\n throw new Error(\"Scoring pass integrity or population accounting failed.\");\n const terminal = [\"completed\", \"failed\", \"cancelled\"].includes(pass.status);\n if (terminal && (!pass.completedAt || pass.counts.pending || pass.counts.running)\n || !terminal && (pass.completedAt !== null || pass.resultAvailable)\n || pass.status === \"completed\" && !pass.resultAvailable)\n throw new Error(\"Scoring pass lifecycle differs from its retained result.\");\n if (pass.graders.length !== pass.request.graders.length || new Set(pass.graders.map(grader => grader.feedbackKey)).size !== pass.graders.length\n || pass.graders.some((grader, index) => contentHash(grader.release) !== contentHash(pass.request.graders[index]!)\n || contentHash(grader.mappings ?? []) !== contentHash(pass.request.mappings?.find(mapping => mapping.graderId === grader.release?.id)?.fields ?? [])))\n throw new Error(\"Scoring pass graders differ from their exact admission.\");\n return pass;\n}\n", "import { z } from \"zod\";\nimport { contentHash } from \"@openpond/harness\";\nimport { compareExperiments, verifyExperimentEvidence } from \"@openpond/evals/experiments\";\nimport { ExperimentDefinitionRefSchema, ExperimentListQuerySchema, SaveExperimentSchema, StartExperimentSchema, experimentDefinitionRef,\n verifyExperimentDefinition, type ExperimentDefinitionRef } from \"./experiment-contracts.js\";\nimport { PrepareHarnessExperimentSchema, PreparedHarnessExperimentSchema } from \"./experiment-contracts.js\";\nimport { verifyHarnessExperimentManifest, verifyModelTasksetRunDetails } from \"./model-taskset-runs-contracts.js\";\nimport { ExperimentScoringRequestSchema, verifyExperimentScoringPass, type ExperimentScoringRequest } from \"./experiment-scoring-contracts.js\";\n\nconst Id = z.string().trim().min(1).max(200);\nexport class OpenPondExperimentError extends Error {\n constructor(readonly status: number, readonly code: string, message: string) { super(message); this.name = \"OpenPondExperimentError\"; }\n}\n\n/** Saved configuration and execution identities share the host's service. */\nexport class OpenPondExperimentsClient {\n private readonly baseUrl: string;\n constructor(private readonly options: { baseUrl: string; apiKey: 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 /** Resolves a released target without saving a definition or dispatching it. */\n async prepareHarness(value: z.input<typeof PrepareHarnessExperimentSchema>, signal?: AbortSignal) {\n const request = PrepareHarnessExperimentSchema.parse(value);\n const result = PreparedHarnessExperimentSchema.parse(await this.request(\"/harness-setup\", \"POST\", request, signal));\n verifyHarnessExperimentManifest(result.request, result.manifest);\n const policy = result.request.policy;\n if (result.request.teamId !== this.options.teamId || result.request.operationId !== request.operationId\n || policy.kind !== \"hosted_harness\" || policy.profileRepositoryId !== request.profileRepositoryId\n || policy.source.definitionId !== request.definitionId || policy.modelId !== request.modelId\n || policy.reasoningEffort !== request.reasoningEffort || result.maximumCostUsd !== request.maximumCostUsd\n || result.manifest.limits.maximumSpendUsd !== request.maximumCostUsd)\n throw new Error(\"Harness preparation differs from its requested scope or configuration.\");\n return result;\n }\n async save(value: z.input<typeof SaveExperimentSchema>, signal?: AbortSignal) {\n const request = SaveExperimentSchema.parse(value);\n if (request.request.teamId !== this.options.teamId) throw new Error(\"Experiment workspace mismatch.\");\n const result = this.definition(await this.request(\"\", \"POST\", request, signal), request.id);\n if (result.revision !== request.expectedRevision + 1 || contentHash(result.request) !== contentHash(request.request)\n || result.maximumCostUsd !== request.maximumCostUsd) throw new Error(\"Experiment save receipt differs from its submitted configuration.\");\n if (request.graders && contentHash(request.graders) !== contentHash(result.graders.map(grader => ({ id: grader.id, version: grader.version, contentHash: grader.contentHash, mappings: grader.mappings ?? [] }))))\n throw new Error(\"Experiment save receipt differs from its selected graders or mappings.\");\n return result;\n }\n async get(id: string, options: { reference?: ExperimentDefinitionRef; signal?: AbortSignal } = {}) {\n const reference = options.reference ? ExperimentDefinitionRefSchema.parse(options.reference) : undefined;\n if (reference && reference.id !== id) throw new Error(\"Experiment reference identity mismatch.\");\n const suffix = reference ? `?${new URLSearchParams({ revision: String(reference.revision), contentHash: reference.contentHash })}` : \"\";\n const result = this.definition(await this.request(`/${encodeURIComponent(Id.parse(id))}${suffix}`, \"GET\", undefined, options.signal), id);\n if (options.reference && contentHash(experimentDefinitionRef(result)) !== contentHash(options.reference)) throw new Error(\"Experiment revision mismatch.\");\n return result;\n }\n async list(value: z.input<typeof ExperimentListQuerySchema> = {}, signal?: AbortSignal) {\n const query = ExperimentListQuerySchema.parse(value);\n const params = new URLSearchParams(Object.entries(query).filter(([, value]) => value !== undefined).map(([key, value]) => [key, String(value)]));\n const page = z.object({ items: z.array(z.unknown()).max(100), nextCursor: Id.nullable() }).strict().parse(await this.request(`?${params}`, \"GET\", undefined, signal));\n const items = page.items.map(value => this.definition(value));\n if (items.length > query.limit || new Set(items.map(item => item.id)).size !== items.length\n || items.some(item => query.projectId && item.request.project?.id !== query.projectId || query.datasetHash && item.request.taskset.contentHash !== query.datasetHash))\n throw new Error(\"Experiment page differs from its selected scope.\");\n return { items, nextCursor: page.nextCursor };\n }\n async start(value: z.input<typeof StartExperimentSchema>, signal?: AbortSignal) {\n const request = StartExperimentSchema.parse(value);\n const response = z.object({ definition: z.unknown(), run: z.unknown() }).strict().parse(\n await this.request(`/${encodeURIComponent(request.definition.id)}/start`, \"POST\", request, signal));\n const definition = this.definition(response.definition, request.definition.id);\n if (contentHash(experimentDefinitionRef(definition)) !== contentHash(request.definition)) throw new Error(\"Experiment Start revision mismatch.\");\n const result = await verifyModelTasksetRunDetails(response.run);\n if (result.summary.teamId !== this.options.teamId || result.request.operationId !== request.operationId\n || contentHash(savedRequestPopulation(result.request))\n !== contentHash(savedRequestPopulation({ ...definition.request, operationId: request.operationId }))\n || contentHash(result.manifest.metadata.experimentDefinition) !== contentHash(request.definition)\n || result.manifest.metadata.experimentConfigurationHash !== contentHash({ definition: request.definition, maximumCostUsd: definition.maximumCostUsd, graders: definition.graders }))\n throw new Error(\"Experiment execution differs from its saved configuration.\");\n return result;\n }\n async result(executionId: string, signal?: AbortSignal) {\n const value = z.object({ executionId: Id, passId: Id.nullable(), manifest: z.unknown(), result: z.unknown() }).strict()\n .parse(await this.request(`/executions/${encodeURIComponent(Id.parse(executionId))}/result`, \"GET\", undefined, signal));\n const evidence = verifyExperimentEvidence(value);\n if (value.executionId !== executionId || evidence.manifest.teamId !== this.options.teamId\n || evidence.manifest.lineage?.execution.id !== executionId\n || evidence.manifest.lineage.scoringPassId !== value.passId) throw new Error(\"Experiment result identity mismatch.\");\n return { ...evidence, executionId, passId: value.passId };\n }\n async executions(definitionId: string, options: { afterId?: string; signal?: AbortSignal } = {}) {\n const params = new URLSearchParams(options.afterId ? { afterId: Id.parse(options.afterId) } : {});\n const page = z.object({ items: z.array(z.unknown()).max(30), nextCursor: Id.nullable() }).strict().parse(\n await this.request(`/${encodeURIComponent(Id.parse(definitionId))}/executions?${params}`, \"GET\", undefined, options.signal));\n const items = await Promise.all(page.items.map(value => verifyModelTasksetRunDetails(value)));\n if (items.some(item => item.summary.teamId !== this.options.teamId\n || ExperimentDefinitionRefSchema.parse(item.manifest.metadata.experimentDefinition).id !== definitionId)\n || new Set(items.map(item => item.summary.id)).size !== items.length)\n throw new Error(\"Experiment execution page has invalid ownership or repeated identities.\");\n return { items, nextCursor: page.nextCursor };\n }\n async execution(id: string, signal?: AbortSignal) {\n return this.executionDetails(await this.request(`/executions/${encodeURIComponent(Id.parse(id))}`, \"GET\", undefined, signal), id);\n }\n async cancel(id: string, signal?: AbortSignal) {\n return this.executionDetails(await this.request(`/executions/${encodeURIComponent(Id.parse(id))}/cancel`, \"POST\", {}, signal), id);\n }\n /** Retry intentionally creates another execution; a transport retry reuses the same operation id. */\n async retry(id: string, operationId: string, signal?: AbortSignal) {\n const result = await this.executionDetails(await this.request(`/executions/${encodeURIComponent(Id.parse(id))}/retry`, \"POST\", { operationId: Id.parse(operationId) }, signal));\n if (result.request.operationId !== operationId) throw new Error(\"Experiment retry operation mismatch.\");\n return result;\n }\n async score(value: ExperimentScoringRequest, signal?: AbortSignal) {\n const request = ExperimentScoringRequestSchema.parse(value);\n const pass = this.pass(await this.request(`/executions/${encodeURIComponent(request.execution.id)}/scoring-passes`, \"POST\", request, signal));\n if (contentHash(pass.request) !== contentHash(request)) throw new Error(\"Scoring admission differs from its submitted inputs.\");\n return pass;\n }\n async scoringPass(id: string, signal?: AbortSignal) {\n return this.pass(await this.request(`/scoring-passes/${encodeURIComponent(Id.parse(id))}`, \"GET\", undefined, signal), id);\n }\n async scoringPasses(executionId: string, options: { afterId?: string; signal?: AbortSignal } = {}) {\n const params = new URLSearchParams(options.afterId ? { afterId: Id.parse(options.afterId) } : {});\n const page = z.object({ items: z.array(z.unknown()).max(30), nextCursor: Id.nullable() }).strict().parse(\n await this.request(`/executions/${encodeURIComponent(Id.parse(executionId))}/scoring-passes?${params}`, \"GET\", undefined, options.signal));\n const items = page.items.map(value => this.pass(value));\n if (items.some(item => item.request.execution.id !== executionId) || new Set(items.map(item => item.id)).size !== items.length)\n throw new Error(\"Scoring pass page differs from its execution ownership.\");\n return { items, nextCursor: page.nextCursor };\n }\n async cancelScoringPass(id: string, signal?: AbortSignal) {\n return this.pass(await this.request(`/scoring-passes/${encodeURIComponent(Id.parse(id))}/cancel`, \"POST\", {}, signal), id);\n }\n async scoringResult(id: string, signal?: AbortSignal) {\n const value = z.object({ executionId: Id, passId: Id, manifest: z.unknown(), result: z.unknown() }).strict().parse(\n await this.request(`/scoring-passes/${encodeURIComponent(Id.parse(id))}/result`, \"GET\", undefined, signal));\n const evidence = verifyExperimentEvidence(value);\n if (value.passId !== id || evidence.manifest.teamId !== this.options.teamId || evidence.manifest.id !== id\n || evidence.manifest.lineage?.execution.id !== value.executionId || evidence.manifest.lineage.scoringPassId !== id)\n throw new Error(\"Scoring result identity mismatch.\");\n return { ...evidence, executionId: value.executionId, passId: id };\n }\n async compare(baselineId: string, candidateId: string, signal?: AbortSignal) {\n const read = (id: string) => id.startsWith(\"score_\") ? this.scoringResult(id, signal) : this.result(id, signal);\n const [baseline, candidate] = await Promise.all([read(baselineId), read(candidateId)]);\n return { baseline, candidate, comparison: compareExperiments(baseline, candidate) };\n }\n private definition(value: unknown, id?: string) {\n const result = verifyExperimentDefinition(value);\n if (result.teamId !== this.options.teamId || id && result.id !== id) throw new Error(\"Experiment identity mismatch.\");\n return result;\n }\n private async executionDetails(value: unknown, id?: string) {\n const details = await verifyModelTasksetRunDetails(value);\n if (details.summary.teamId !== this.options.teamId || id && details.summary.id !== id) throw new Error(\"Experiment execution identity mismatch.\");\n return details;\n }\n private pass(value: unknown, id?: string) {\n const pass = verifyExperimentScoringPass(value);\n if (pass.teamId !== this.options.teamId || id && pass.id !== id) throw new Error(\"Scoring pass identity mismatch.\");\n return pass;\n }\n private async request(path: string, method: string, body?: unknown, signal?: AbortSignal): Promise<unknown> {\n const response = await (this.options.fetch ?? fetch)(`${this.baseUrl}/v1/experiments${path}`, {\n method, signal, redirect: \"error\", 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) }),\n });\n const value = await response.json();\n if (!response.ok) {\n const parsed = z.object({ code: z.string(), message: z.string() }).safeParse(value);\n throw new OpenPondExperimentError(response.status, parsed.success ? parsed.data.code : \"experiment_request_failed\", parsed.success ? parsed.data.message : \"Experiment request failed.\");\n }\n return value;\n }\n}\n\n/** Native Harness assigns receipt IDs when sealing each new execution. Its\n * saved population still pins every task/seed; Model receipts stay exact. */\nfunction savedRequestPopulation(request: z.infer<typeof SaveExperimentSchema>[\"request\"]) {\n return request.policy.kind === \"hosted_harness\" ? {\n ...request, population: request.population.map(({ receiptId: _id, ...member }) => member),\n } : request;\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["z", "Id", "z", "value"]
|
|
7
|
+
}
|
|
@@ -30,6 +30,7 @@ var EvaluationMessagesSchema = z.array(z.object({
|
|
|
30
30
|
// src/model-starter-attempts.ts
|
|
31
31
|
import { RewardCompositionSchema } from "@openpond/evals/rewards";
|
|
32
32
|
import { TaskGradeSchema as TaskGradeSchema2 } from "@openpond/evals/graders";
|
|
33
|
+
import { TaskSplitSchema } from "@openpond/evals/tasksets";
|
|
33
34
|
|
|
34
35
|
// src/experiment-grading-contracts.ts
|
|
35
36
|
import { z as z2 } from "zod";
|
|
@@ -85,7 +86,7 @@ var ModelStarterAttemptChoicesSchema = z3.object({
|
|
|
85
86
|
available: z3.boolean(),
|
|
86
87
|
unavailableReason: z3.string().max(1e3).nullable(),
|
|
87
88
|
models: z3.array(z3.object({ id: IdSchema, name: z3.string().max(500) }).strict()).max(200),
|
|
88
|
-
tasks: z3.array(z3.object({ id: IdSchema, split:
|
|
89
|
+
tasks: z3.array(z3.object({ id: IdSchema, split: TaskSplitSchema, inputPreview: z3.string().max(500), fixtures: z3.array(z3.object({ id: IdSchema, label: z3.string().max(200) }).strict()).max(1e3) }).strict()).max(100),
|
|
89
90
|
nextCursor: IdSchema.nullable()
|
|
90
91
|
}).strict();
|
|
91
92
|
var ModelStarterAttemptSummarySchema = z3.object({
|
|
@@ -237,4 +238,4 @@ export {
|
|
|
237
238
|
OpenPondModelStarterAttemptError,
|
|
238
239
|
OpenPondModelStarterAttemptsClient
|
|
239
240
|
};
|
|
240
|
-
//# sourceMappingURL=chunk-
|
|
241
|
+
//# sourceMappingURL=chunk-BGXWHDYM.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/model-starter-attempts.ts", "../src/evaluation-project-context.ts", "../src/experiment-grading-contracts.ts"],
|
|
4
|
+
"sourcesContent": ["import { z } from \"zod\";\nimport { EvaluationProjectContextSchema, EvaluationMessagesSchema } from \"./evaluation-project-context.js\";\nexport { EvaluationProjectContextSchema, EvaluationMessagesSchema, type EvaluationProjectContext } from \"./evaluation-project-context.js\";\nimport { RewardCompositionSchema } from \"@openpond/evals/rewards\";\nimport { TaskGradeSchema } from \"@openpond/evals/graders\";\nimport { TaskSplitSchema } from \"@openpond/evals/tasksets\";\nimport { ExperimentAttemptGradeSchema } from \"./experiment-grading-contracts.js\";\nimport { ModelProjectVersionedRefSchema } from \"./model-projects.js\";\nimport { canonicalJson, canonicalSha256 } from \"./protocol.js\";\n\nconst IdSchema = z.string().trim().min(1).max(200);\nconst HashSchema = z.string().regex(/^[a-f0-9]{64}$/);\nexport const ModelStarterAttemptPolicySchema = z.discriminatedUnion(\"kind\", [\n z.object({ kind: z.literal(\"hosted_chat\"), modelId: IdSchema, messages: EvaluationMessagesSchema.optional(), maxOutputTokens: z.number().int().min(1).max(4_096).default(1_024), temperature: z.number().min(0).max(2).default(0), topP: z.number().gt(0).max(1).default(1) }).strict(),\n z.object({ kind: z.literal(\"fixture\"), fixtureId: IdSchema }).strict(),\n]);\n/** The server resolves task input, private state, verifier and fixture script.\n * A caller can select releases, but cannot submit replacement execution bytes. */\nexport const ModelStarterAttemptRequestSchema = z.object({\n schemaVersion: z.literal(\"openpond.modelStarterAttemptRequest.v1\"),\n operationId: IdSchema, teamId: IdSchema, modelProjectId: IdSchema.nullable(),\n project: EvaluationProjectContextSchema.optional(),\n taskset: ModelProjectVersionedRefSchema, taskId: IdSchema,\n environmentSeed: z.number().int().min(0).max(2_147_483_647).default(0),\n policy: ModelStarterAttemptPolicySchema,\n}).strict();\nexport type ModelStarterAttemptRequest = z.infer<typeof ModelStarterAttemptRequestSchema>;\nexport const ModelStarterAttemptChoicesQuerySchema = z.object({ modelProjectId: IdSchema.nullable(), taskset: ModelProjectVersionedRefSchema, afterTaskId: IdSchema.optional(), limit: z.number().int().min(1).max(100).default(25) }).strict();\nexport const ModelStarterAttemptChoicesSchema = z.object({\n modelProjectId: IdSchema.nullable(), taskset: ModelProjectVersionedRefSchema, available: z.boolean(), unavailableReason: z.string().max(1_000).nullable(),\n models: z.array(z.object({ id: IdSchema, name: z.string().max(500) }).strict()).max(200),\n tasks: z.array(z.object({ id: IdSchema, split: TaskSplitSchema, inputPreview: z.string().max(500), fixtures: z.array(z.object({ id: IdSchema, label: z.string().max(200) }).strict()).max(1_000) }).strict()).max(100),\n nextCursor: IdSchema.nullable(),\n}).strict();\nexport const ModelStarterAttemptSummarySchema = z.object({\n schemaVersion: z.literal(\"openpond.modelStarterAttemptSummary.v1\"),\n id: IdSchema, revision: z.number().int().positive(), request: ModelStarterAttemptRequestSchema,\n status: z.enum([\"queued\", \"running\", \"cancelling\", \"completed\", \"failed\", \"cancelled\"]),\n policySnapshot: z.object({ modelId: IdSchema, provider: IdSchema, upstreamModelId: z.string().min(1).max(500), configurationHash: HashSchema }).strict().nullable(),\n createdAt: z.iso.datetime(), startedAt: z.iso.datetime().nullable(), completedAt: z.iso.datetime().nullable(),\n cleanupComplete: z.boolean(), resultAvailable: z.boolean(), score: z.number().min(0).max(1).nullable(),\n gradingStatus: z.enum([\"not_started\", \"scored\", \"unscorable\", \"not_configured\"]).default(\"not_started\"),\n passed: z.boolean().nullable(), outputPreview: z.string().max(500).nullable(),\n error: z.object({ code: IdSchema, message: z.string().max(2_000) }).strict().nullable(),\n}).strict().superRefine((value, context) => {\n if ((value.request.policy.kind === \"fixture\") !== (value.policySnapshot === null)) context.addIssue({ code: \"custom\", path: [\"policySnapshot\"], message: \"Fixture execution must not claim a model identity.\" });\n if (value.status === \"completed\" && (!value.cleanupComplete || !value.resultAvailable || !value.completedAt)) context.addIssue({ code: \"custom\", message: \"Completed attempts require retained results and confirmed cleanup.\" });\n});\nexport type ModelStarterAttemptSummary = z.infer<typeof ModelStarterAttemptSummarySchema>;\nexport const ModelStarterAttemptListQuerySchema = z.object({ modelProjectId: IdSchema, afterId: IdSchema.optional(), limit: z.number().int().min(1).max(100).default(25) }).strict();\nexport const ModelStarterAttemptPageSchema = z.object({ items: z.array(ModelStarterAttemptSummarySchema).max(100), nextCursor: IdSchema.nullable() }).strict();\nexport const ModelStarterAttemptResultSchema = z.object({\n schemaVersion: z.literal(\"openpond.modelStarterAttemptResult.v1\"),\n attempt: ModelStarterAttemptSummarySchema,\n output: z.string().max(1_048_576).nullable(),\n // Only model-facing messages, never the private environment snapshot.\n messages: z.array(z.record(z.string(), z.unknown())).max(4_002),\n composition: RewardCompositionSchema.nullable(),\n // Ordinary Tasksets have no Reward binding. Absence preserves the hash of\n // already retained v1 results; new producers explicitly return null or a grade.\n grade: TaskGradeSchema.nullable().optional(),\n experimentGrade: ExperimentAttemptGradeSchema.nullable().optional(),\n environment: z.object({ status: z.enum([\"completed\", \"budget_exhausted\", \"cancelled\", \"timed_out\", \"policy_failure\", \"environment_failure\"]), collected: z.boolean(), definition: ModelProjectVersionedRefSchema, initialStateHash: HashSchema.nullable(), finalStateHash: HashSchema.nullable(), attemptHash: HashSchema }).strict(),\n providerRequestIds: z.array(IdSchema).max(1_001),\n contentHash: HashSchema,\n}).strict().superRefine((value, context) => {\n if (value.experimentGrade) {\n if (value.grade || value.composition) context.addIssue({ code: \"custom\", message: \"Selected Experiment grading cannot claim another grade population.\" });\n if (![\"completed\", \"failed\"].includes(value.attempt.status) || !value.attempt.resultAvailable || value.attempt.score !== value.experimentGrade.score\n || value.attempt.gradingStatus !== value.experimentGrade.gradingStatus || value.attempt.passed !== (value.experimentGrade.score === null ? null : value.experimentGrade.passed))\n context.addIssue({ code: \"custom\", message: \"Experiment grading differs from its retained attempt summary.\" });\n }\n if (!value.grade) return;\n if (value.composition) context.addIssue({ code: \"custom\", path: [\"grade\"], message: \"An ordinary grade cannot also claim a Reward composition.\" });\n if (![\"completed\", \"failed\"].includes(value.attempt.status) || !value.attempt.resultAvailable || value.attempt.score !== value.grade.score || value.attempt.gradingStatus !== value.grade.gradingStatus || value.attempt.passed !== (value.grade.score === null ? null : value.grade.passed)) context.addIssue({ code: \"custom\", path: [\"grade\"], message: \"Ordinary grade differs from its terminal attempt summary.\" });\n});\nexport type ModelStarterAttemptResult = z.infer<typeof ModelStarterAttemptResultSchema>;\n\nexport class OpenPondModelStarterAttemptError extends Error {\n constructor(readonly status: number, readonly code: string, message: string) { super(message); this.name = \"OpenPondModelStarterAttemptError\"; }\n}\n\nexport class OpenPondModelStarterAttemptsClient {\n readonly #options: { baseUrl: string; apiKey: string; teamId: string; fetch?: typeof globalThis.fetch };\n constructor(options: { baseUrl: string; apiKey: string; teamId: string; fetch?: typeof globalThis.fetch }) {\n const url = new URL(options.baseUrl);\n if (!options.apiKey.trim() || !options.teamId.trim() || ![\"https:\", \"http:\"].includes(url.protocol) || url.username || url.password || url.search || url.hash) throw new Error(\"Starter attempts require an HTTP(S) endpoint and workspace credentials.\");\n this.#options = { ...options, baseUrl: url.toString().replace(/\\/+$/, \"\") };\n }\n async create(value: z.input<typeof ModelStarterAttemptRequestSchema>, options: { signal?: AbortSignal } = {}) {\n const request = ModelStarterAttemptRequestSchema.parse(value);\n if (request.teamId !== this.#options.teamId) throw new Error(\"Attempt belongs to another workspace.\");\n const result = this.#summary(await this.#request(\"\", \"POST\", request, options.signal));\n if (canonicalJson(result.request) !== canonicalJson(request)) throw new OpenPondModelStarterAttemptError(502, \"attempt_request_mismatch\", \"Attempt receipt differs from the submitted request.\");\n return result;\n }\n async get(id: string, options: { signal?: AbortSignal } = {}) { return this.#summary(await this.#request(`/${encodeURIComponent(IdSchema.parse(id))}`, \"GET\", undefined, options.signal), id); }\n async choices(value: z.input<typeof ModelStarterAttemptChoicesQuerySchema>, options: { signal?: AbortSignal } = {}) {\n const query = ModelStarterAttemptChoicesQuerySchema.parse(value);\n const params = new URLSearchParams({ ...(query.modelProjectId ? { modelProjectId: query.modelProjectId } : {}), tasksetId: query.taskset.id, revision: String(query.taskset.revision), contentHash: query.taskset.contentHash, limit: String(query.limit) });\n if (query.afterTaskId) params.set(\"afterTaskId\", query.afterTaskId);\n const result = ModelStarterAttemptChoicesSchema.parse(await this.#request(`/choices?${params}`, \"GET\", undefined, options.signal));\n if (result.modelProjectId !== query.modelProjectId || canonicalJson(result.taskset) !== canonicalJson(query.taskset) || result.tasks.length > query.limit || new Set(result.tasks.map(task => task.id)).size !== result.tasks.length) throw new OpenPondModelStarterAttemptError(502, \"attempt_choices_mismatch\", \"Attempt choices differ from the selected model or Taskset.\");\n return result;\n }\n async cancel(id: string, options: { signal?: AbortSignal } = {}) { return this.#summary(await this.#request(`/${encodeURIComponent(IdSchema.parse(id))}/cancel`, \"POST\", undefined, options.signal), id); }\n async result(id: string, options: { signal?: AbortSignal } = {}) {\n const value = ModelStarterAttemptResultSchema.parse(await this.#request(`/${encodeURIComponent(IdSchema.parse(id))}/result`, \"GET\", undefined, options.signal));\n this.#summary(value.attempt, id);\n const { contentHash, ...content } = value;\n if (!value.attempt.resultAvailable || await canonicalSha256(content) !== contentHash) throw new OpenPondModelStarterAttemptError(502, \"attempt_result_integrity\", \"Attempt result integrity failed.\");\n return value;\n }\n async list(value: z.input<typeof ModelStarterAttemptListQuerySchema>, options: { signal?: AbortSignal } = {}) {\n const query = ModelStarterAttemptListQuerySchema.parse(value);\n const params = new URLSearchParams({ modelProjectId: query.modelProjectId, limit: String(query.limit) });\n if (query.afterId) params.set(\"afterId\", query.afterId);\n const page = ModelStarterAttemptPageSchema.parse(await this.#request(`?${params}`, \"GET\", undefined, options.signal));\n if (page.items.length > query.limit || new Set(page.items.map(item => item.id)).size !== page.items.length || page.items.some(item => this.#summary(item).request.modelProjectId !== query.modelProjectId)) throw new OpenPondModelStarterAttemptError(502, \"attempt_page_mismatch\", \"Attempt page differs from the selected model.\");\n return page;\n }\n #summary(value: unknown, id?: string): ModelStarterAttemptSummary {\n const result = ModelStarterAttemptSummarySchema.parse(value);\n if (result.request.teamId !== this.#options.teamId || (id && result.id !== id)) throw new OpenPondModelStarterAttemptError(502, \"attempt_identity_mismatch\", \"Attempt receipt belongs to another identity or workspace.\");\n return result;\n }\n async #request(path: string, method: string, body: unknown, signal?: AbortSignal): Promise<unknown> {\n const response = await (this.#options.fetch ?? globalThis.fetch)(`${this.#options.baseUrl}/v1/model-starter-attempts${path}`, { method, headers: { Authorization: `Bearer ${this.#options.apiKey}`, \"X-OpenPond-Team-Id\": this.#options.teamId, \"Content-Type\": \"application/json\", Accept: \"application/json\" }, ...(body === undefined ? {} : { body: JSON.stringify(body) }), signal, redirect: \"error\" });\n const reader = response.body?.getReader();\n if (!reader) throw new OpenPondModelStarterAttemptError(response.status, \"attempt_empty_response\", \"Attempt response was empty.\");\n let bytes = 0; let text = \"\"; const decoder = new TextDecoder();\n try {\n while (true) {\n const chunk = await reader.read(); if (chunk.done) break;\n bytes += chunk.value.byteLength;\n if (bytes > 16_777_216) throw new OpenPondModelStarterAttemptError(502, \"attempt_response_too_large\", \"Attempt response exceeded its byte limit.\");\n text += decoder.decode(chunk.value, { stream: true });\n }\n text += decoder.decode();\n } finally { await reader.cancel(); reader.releaseLock(); }\n const value: unknown = JSON.parse(text);\n if (!response.ok) {\n const error = z.object({ code: IdSchema, message: z.string().max(2_000) }).safeParse(value);\n throw new OpenPondModelStarterAttemptError(response.status, error.success ? error.data.code : \"attempt_request_failed\", error.success ? error.data.message : \"Attempt request failed.\");\n }\n return value;\n }\n}\n", "import { z } from \"zod\";\n\n/** The selected Project revision is retained independently of model artifacts.\n * Hosts resolve and authorize this reference before admitting execution. */\nexport const EvaluationProjectContextSchema = z.object({\n id: z.string().trim().min(1).max(240),\n revision: z.number().int().positive(),\n contentHash: z.string().regex(/^[a-f0-9]{64}$/),\n targetId: z.string().trim().min(1).max(240).nullable(),\n}).strict();\nexport type EvaluationProjectContext = z.infer<typeof EvaluationProjectContextSchema>;\n\nexport const EvaluationMessagesSchema = z.array(z.object({\n role: z.enum([\"system\", \"user\", \"assistant\"]),\n content: z.string().max(100_000),\n}).strict()).max(100).superRefine((messages, context) => {\n if (messages.reduce((total, message) => total + message.content.length, 0) > 100_000)\n context.addIssue({ code: \"custom\", message: \"Evaluation prompt exceeds 100,000 characters.\" });\n});\n", "import { z } from \"zod\";\nimport { FailureClassSchema, contentHash } from \"@openpond/harness\";\nimport { TaskGradeSchema } from \"@openpond/evals/graders\";\n\nexport const ExperimentAttemptGradeSchema = z.object({\n schemaVersion: z.literal(\"openpond.experimentAttemptGrade.v1\"), selectionHash: z.string().regex(/^[a-f0-9]{64}$/),\n grades: z.array(TaskGradeSchema).min(1).max(100), score: z.number().min(0).max(1).nullable(),\n passed: z.boolean(), rewardEligible: z.boolean(), gradingStatus: z.enum([\"scored\", \"unscorable\", \"not_configured\"]),\n failureClass: FailureClassSchema.nullable(), contentHash: z.string().regex(/^[a-f0-9]{64}$/),\n}).strict().superRefine((grade, context) => {\n const { contentHash: actual, ...body } = grade;\n if (contentHash(body) !== actual) context.addIssue({ code: \"custom\", message: \"Experiment grading integrity failed.\" });\n const components = grade.grades.flatMap(value => value.components);\n if (components.length !== grade.grades.length || new Set(components.map(component => component.graderId)).size !== components.length)\n context.addIssue({ code: \"custom\", message: \"Each selected criterion requires exactly one distinct grader result.\" });\n for (const item of grade.grades) {\n const { contentHash: itemHash, ...itemBody } = item;\n if (contentHash(itemBody) !== itemHash) context.addIssue({ code: \"custom\", message: \"A retained criterion changed.\" });\n for (const component of item.components) {\n const { contentHash: componentHash, ...componentBody } = component;\n if (contentHash(componentBody) !== componentHash) context.addIssue({ code: \"custom\", message: \"A retained grader result changed.\" });\n }\n }\n});\nexport type ExperimentAttemptGrade = z.infer<typeof ExperimentAttemptGradeSchema>;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["z", "TaskGradeSchema", "z", "z", "z", "TaskGradeSchema", "contentHash"]
|
|
7
|
+
}
|
|
@@ -18,13 +18,16 @@ var HostedTasksetSummarySchema = z.object({
|
|
|
18
18
|
createdAt: z.string().datetime({ offset: true })
|
|
19
19
|
}).strict();
|
|
20
20
|
var TasksetCatalogQuerySchema = z.object({
|
|
21
|
-
afterId:
|
|
21
|
+
afterId: z.string().trim().min(1).max(2e3).optional(),
|
|
22
22
|
limit: z.number().int().min(1).max(100).default(30),
|
|
23
|
-
modelProjectId: IdSchema.optional()
|
|
23
|
+
modelProjectId: IdSchema.optional(),
|
|
24
|
+
projectId: IdSchema.optional(),
|
|
25
|
+
search: z.string().trim().max(100).optional(),
|
|
26
|
+
sort: z.enum(["id", "name", "updated"]).default("id")
|
|
24
27
|
}).strict();
|
|
25
28
|
var TasksetCatalogPageSchema = z.object({
|
|
26
29
|
items: z.array(HostedTasksetSummarySchema).max(100),
|
|
27
|
-
nextCursor:
|
|
30
|
+
nextCursor: z.string().trim().min(1).max(2e3).nullable()
|
|
28
31
|
}).strict();
|
|
29
32
|
var TasksetCatalogErrorSchema = z.object({
|
|
30
33
|
code: z.string().min(1),
|
|
@@ -53,8 +56,11 @@ var OpenPondTasksetCatalogClient = class {
|
|
|
53
56
|
const search = new URLSearchParams({ limit: String(parsed.limit) });
|
|
54
57
|
if (parsed.afterId) search.set("afterId", parsed.afterId);
|
|
55
58
|
if (parsed.modelProjectId) search.set("modelProjectId", parsed.modelProjectId);
|
|
59
|
+
if (parsed.projectId) search.set("projectId", parsed.projectId);
|
|
60
|
+
if (parsed.search !== void 0) search.set("search", parsed.search);
|
|
61
|
+
search.set("sort", parsed.sort);
|
|
56
62
|
const page = TasksetCatalogPageSchema.parse(await this.#request(`?${search}`, options.signal));
|
|
57
|
-
if (page.items.length > parsed.limit || page.items.some((item) => item.teamId !== this.#options.teamId)) throw new OpenPondTasksetCatalogError(502, "catalog_scope_mismatch", "Taskset inventory did not match the requested workspace or page size.");
|
|
63
|
+
if (page.items.length > parsed.limit || new Set(page.items.map((item) => item.id)).size !== page.items.length || page.items.some((item) => item.teamId !== this.#options.teamId)) throw new OpenPondTasksetCatalogError(502, "catalog_scope_mismatch", "Taskset inventory did not match the requested workspace or page size.");
|
|
58
64
|
return page;
|
|
59
65
|
}
|
|
60
66
|
async get(id, options = {}) {
|
|
@@ -112,4 +118,4 @@ export {
|
|
|
112
118
|
OpenPondTasksetCatalogError,
|
|
113
119
|
OpenPondTasksetCatalogClient
|
|
114
120
|
};
|
|
115
|
-
//# sourceMappingURL=chunk-
|
|
121
|
+
//# sourceMappingURL=chunk-K3JCP4FO.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/taskset-catalog.ts"],
|
|
4
|
+
"sourcesContent": ["import { z } from \"zod\";\n\nconst IdSchema = z.string().trim().min(1).max(500);\nconst HashSchema = z.string().regex(/^[a-f0-9]{64}$/);\nexport const TasksetCatalogReleaseRefSchema = z.object({ id: IdSchema, revision: z.number().int().positive(), contentHash: HashSchema }).strict();\n\n/** Inventory metadata only. Task rows, evaluator source, and object locations\n * are resolved separately by an authorized package operation. */\nexport const HostedTasksetSummarySchema = z.object({\n schemaVersion: z.literal(\"openpond.hostedTasksetSummary.v1\"),\n id: IdSchema,\n teamId: IdSchema,\n release: TasksetCatalogReleaseRefSchema,\n name: z.string().min(1).max(500),\n description: z.string().max(20_000),\n taskCount: z.number().int().nonnegative(),\n buildIntent: z.string().min(1).max(100),\n methodHint: z.string().min(1).max(100).nullable(),\n packageBytes: z.number().int().nonnegative().nullable(),\n storedBytes: z.number().int().nonnegative().nullable(),\n createdAt: z.string().datetime({ offset: true }),\n}).strict();\nexport const TasksetCatalogQuerySchema = z.object({\n afterId: z.string().trim().min(1).max(2_000).optional(),\n limit: z.number().int().min(1).max(100).default(30),\n modelProjectId: IdSchema.optional(),\n projectId: IdSchema.optional(),\n search: z.string().trim().max(100).optional(),\n sort: z.enum([\"id\", \"name\", \"updated\"]).default(\"id\"),\n}).strict();\nexport const TasksetCatalogPageSchema = z.object({\n items: z.array(HostedTasksetSummarySchema).max(100),\n nextCursor: z.string().trim().min(1).max(2_000).nullable(),\n}).strict();\nexport const TasksetCatalogErrorSchema = z.object({\n code: z.string().min(1),\n message: z.string().min(1),\n}).strict();\nexport type HostedTasksetSummary = z.infer<typeof HostedTasksetSummarySchema>;\nexport type TasksetCatalogPage = z.infer<typeof TasksetCatalogPageSchema>;\n\nexport class OpenPondTasksetCatalogError extends Error {\n constructor(readonly status: number, readonly code: string, message: string) {\n super(message);\n this.name = \"OpenPondTasksetCatalogError\";\n }\n}\n\nexport interface TasksetCatalogClientOptions {\n baseUrl: string;\n apiKey: string;\n teamId: string;\n fetch?: typeof globalThis.fetch;\n}\n\nexport class OpenPondTasksetCatalogClient {\n readonly #options: TasksetCatalogClientOptions;\n constructor(options: TasksetCatalogClientOptions) {\n if (!options.apiKey.trim() || !options.teamId.trim()) throw new Error(\"Taskset API key and workspace are required.\");\n const url = new URL(options.baseUrl);\n if (![\"http:\", \"https:\"].includes(url.protocol) || url.username || url.password || url.search || url.hash) throw new Error(\"Taskset base URL must be an HTTP(S) endpoint without credentials, query, or fragment.\");\n this.#options = { ...options, baseUrl: url.toString().replace(/\\/+$/, \"\") };\n }\n\n async list(query: z.input<typeof TasksetCatalogQuerySchema> = {}, options: { signal?: AbortSignal } = {}): Promise<TasksetCatalogPage> {\n const parsed = TasksetCatalogQuerySchema.parse(query);\n const search = new URLSearchParams({ limit: String(parsed.limit) });\n if (parsed.afterId) search.set(\"afterId\", parsed.afterId);\n if (parsed.modelProjectId) search.set(\"modelProjectId\", parsed.modelProjectId);\n if (parsed.projectId) search.set(\"projectId\", parsed.projectId);\n if (parsed.search !== undefined) search.set(\"search\", parsed.search);\n search.set(\"sort\", parsed.sort);\n const page = TasksetCatalogPageSchema.parse(await this.#request(`?${search}`, options.signal));\n if (page.items.length > parsed.limit || new Set(page.items.map(item => item.id)).size !== page.items.length || page.items.some((item) => item.teamId !== this.#options.teamId)) throw new OpenPondTasksetCatalogError(502, \"catalog_scope_mismatch\", \"Taskset inventory did not match the requested workspace or page size.\");\n return page;\n }\n\n async get(id: string, options: { signal?: AbortSignal } = {}): Promise<HostedTasksetSummary> {\n const parsed = IdSchema.parse(id);\n const item = HostedTasksetSummarySchema.parse(await this.#request(`/${encodeURIComponent(parsed)}`, options.signal));\n if (item.id !== parsed || item.teamId !== this.#options.teamId) throw new OpenPondTasksetCatalogError(502, \"catalog_identity_mismatch\", \"Taskset metadata did not match the requested identity.\");\n return item;\n }\n\n /** Resolve a saved portable reference without scanning inventory pages. */\n async resolve(release: z.infer<typeof TasksetCatalogReleaseRefSchema>, options: { signal?: AbortSignal } = {}): Promise<HostedTasksetSummary> {\n const parsed = TasksetCatalogReleaseRefSchema.parse(release);\n const item = HostedTasksetSummarySchema.parse(await this.#request(`/releases/${encodeURIComponent(parsed.id)}/${parsed.revision}/${parsed.contentHash}`, options.signal));\n if (item.teamId !== this.#options.teamId || item.release.id !== parsed.id || item.release.revision !== parsed.revision || item.release.contentHash !== parsed.contentHash) throw new OpenPondTasksetCatalogError(502, \"catalog_release_mismatch\", \"Taskset metadata did not match the requested immutable release.\");\n return item;\n }\n\n async #request(path: string, signal?: AbortSignal): Promise<unknown> {\n const response = await (this.#options.fetch ?? globalThis.fetch)(`${this.#options.baseUrl}/v1/taskset-catalog${path}`, {\n headers: { Authorization: `Bearer ${this.#options.apiKey}`, \"X-OpenPond-Team-Id\": this.#options.teamId, Accept: \"application/json\" },\n signal, redirect: \"error\",\n });\n const reader = response.body?.getReader();\n if (!reader) throw new OpenPondTasksetCatalogError(response.status, \"empty_response\", \"Taskset catalog response was empty.\");\n const decoder = new TextDecoder();\n let bytes = 0;\n let text = \"\";\n try {\n while (true) {\n const chunk = await reader.read();\n if (chunk.done) break;\n bytes += chunk.value.byteLength;\n if (bytes > 4_194_304) throw new OpenPondTasksetCatalogError(response.status, \"response_too_large\", \"Taskset catalog response exceeded 4 MiB.\");\n text += decoder.decode(chunk.value, { stream: true });\n }\n text += decoder.decode();\n } finally { await reader.cancel(); reader.releaseLock(); }\n const payload: unknown = JSON.parse(text);\n if (!response.ok) {\n const error = TasksetCatalogErrorSchema.safeParse(payload);\n throw new OpenPondTasksetCatalogError(response.status, error.success ? error.data.code : \"invalid_error_response\", error.success ? error.data.message : `Taskset catalog request failed (${response.status}).`);\n }\n return payload;\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
TasksetCatalogReleaseRefSchema
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-K3JCP4FO.js";
|
|
4
4
|
import {
|
|
5
5
|
MAX_TASKSET_PACKAGE_BYTES,
|
|
6
6
|
TasksetPackageSchema,
|
|
@@ -168,4 +168,4 @@ export {
|
|
|
168
168
|
OpenPondTasksetPackageError,
|
|
169
169
|
OpenPondTasksetPackageClient
|
|
170
170
|
};
|
|
171
|
-
//# sourceMappingURL=chunk-
|
|
171
|
+
//# sourceMappingURL=chunk-XMKEFQ62.js.map
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
EvaluationProjectContextSchema,
|
|
3
3
|
ModelStarterAttemptPolicySchema,
|
|
4
4
|
ModelStarterAttemptSummarySchema
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-BGXWHDYM.js";
|
|
6
6
|
import {
|
|
7
7
|
ModelProjectVersionedRefSchema,
|
|
8
8
|
canonicalJson,
|
|
@@ -152,4 +152,4 @@ export {
|
|
|
152
152
|
verifyModelTasksetRunDetails,
|
|
153
153
|
verifyModelTasksetRunResult
|
|
154
154
|
};
|
|
155
|
-
//# sourceMappingURL=chunk-
|
|
155
|
+
//# sourceMappingURL=chunk-YYJ4T4U4.js.map
|
|
@@ -59,6 +59,8 @@ var CatalogSummarySchema = z.object({
|
|
|
59
59
|
graders: z.array(CatalogGraderSchema)
|
|
60
60
|
}).strict();
|
|
61
61
|
var CatalogBrowsePageSchema = z.object({ items: z.array(CatalogSummarySchema).max(100), nextCursor: z.string().max(3e3).nullable() }).strict();
|
|
62
|
+
var CatalogCategoriesQuerySchema = z.object({ publisher: CatalogSlug.optional() }).strict();
|
|
63
|
+
var CatalogCategoriesSchema = z.object({ categories: z.array(z.string().trim().min(1).max(100)).max(100) }).strict();
|
|
62
64
|
var CatalogDetailSchema = z.object({ summary: CatalogSummarySchema, versions: z.array(CatalogSummarySchema).max(100) }).strict();
|
|
63
65
|
var CatalogVisibilityReceiptSchema = z.object({ operationId: CatalogId, releaseId: CatalogId, visibility: z.enum(["private", "public"]), visibilityRevision: z.number().int().positive(), summary: CatalogSummarySchema }).strict();
|
|
64
66
|
var CatalogAdoptionReceiptSchema = z.object({ operationId: CatalogId, releaseId: CatalogId, teamId: CatalogId, tasksetId: CatalogId, release: CatalogReleaseRef, packageHash: CatalogHash, snapshotHash: CatalogHash, graders: z.array(CatalogGraderSchema), projectId: CatalogId.nullable() }).strict();
|
|
@@ -93,6 +95,13 @@ var OpenPondDatasetMarketplaceClient = class {
|
|
|
93
95
|
if (result.items.length > parsed.limit || parsed.publisher && result.items.some((item) => item.namespace !== parsed.publisher)) this.#mismatch();
|
|
94
96
|
return result;
|
|
95
97
|
}
|
|
98
|
+
async categories(query = {}, options = {}) {
|
|
99
|
+
const parsed = CatalogCategoriesQuerySchema.parse(query);
|
|
100
|
+
const suffix = parsed.publisher ? `?publisher=${encodeURIComponent(parsed.publisher)}` : "";
|
|
101
|
+
const result = CatalogCategoriesSchema.parse(await this.#request(`/categories${suffix}`, options));
|
|
102
|
+
if (new Set(result.categories).size !== result.categories.length) this.#mismatch();
|
|
103
|
+
return result;
|
|
104
|
+
}
|
|
96
105
|
async get(releaseId, options = {}) {
|
|
97
106
|
const id = CatalogId.parse(releaseId), result = CatalogDetailSchema.parse(await this.#request(`/releases/${encodeURIComponent(id)}`, options));
|
|
98
107
|
if (result.summary.id !== id) this.#mismatch();
|
|
@@ -194,6 +203,8 @@ export {
|
|
|
194
203
|
CatalogAdoptionReceiptSchema,
|
|
195
204
|
CatalogBrowse,
|
|
196
205
|
CatalogBrowsePageSchema,
|
|
206
|
+
CatalogCategoriesQuerySchema,
|
|
207
|
+
CatalogCategoriesSchema,
|
|
197
208
|
CatalogCheckRequestSchema,
|
|
198
209
|
CatalogCheckResultSchema,
|
|
199
210
|
CatalogDetailSchema,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/dataset-marketplace.ts"],
|
|
4
|
-
"sourcesContent": ["import { z } from \"zod\";\n\nexport const CatalogId = z.string().trim().min(1).max(240);\nexport const CatalogSlug = z.string().regex(/^[a-z0-9]+(?:-[a-z0-9]+)*$/).max(100);\nexport const CatalogReleaseRef = z.object({ id: CatalogId, revision: z.number().int().positive(), contentHash: z.string().regex(/^[a-f0-9]{64}$/) }).strict();\nexport const CatalogMetadata = z.object({\n slug: CatalogSlug,\n title: z.string().trim().min(1).max(200),\n description: z.string().trim().min(1).max(5_000),\n license: z.string().trim().min(1).max(500),\n sourceUrl: z.string().url().max(2000).refine(value => /^https?:\\/\\//i.test(value), \"Use an HTTP or HTTPS source URL.\").nullable(),\n attribution: z.string().max(5000),\n category: z.string().trim().min(1).max(100),\n}).strict();\nexport const PublishCatalogDataset = z.object({\n operationId: CatalogId, tasksetId: CatalogId, release: CatalogReleaseRef,\n packageHash: z.string().regex(/^[a-f0-9]{64}$/),\n expectedVisibilityRevision: z.number().int().nonnegative(),\n metadata: CatalogMetadata, distributionConsent: z.literal(true),\n}).strict();\nexport const CatalogVisibilityChange = z.object({\n operationId: CatalogId, releaseId: CatalogId, expectedVisibilityRevision: z.number().int().positive(),\n visibility: z.enum([\"private\", \"public\"]),\n}).strict();\nexport const AdoptCatalogDataset = z.object({\n operationId: CatalogId, releaseId: CatalogId, release: CatalogReleaseRef,\n packageHash: z.string().regex(/^[a-f0-9]{64}$/), projectId: CatalogId.optional(),\n}).strict();\nexport const CatalogBrowse = z.object({\n search: z.string().max(300).default(\"\"), category: z.string().max(100).default(\"\"),\n publisher: CatalogSlug.optional(), after: z.string().max(3000).optional(), limit: z.coerce.number().int().min(1).max(100).default(30),\n}).strict();\n\nconst CatalogHash = z.string().regex(/^[a-f0-9]{64}$/);\nexport const CatalogGraderSchema = z.object({ id: CatalogId, version: z.string().min(1), kind: z.string().min(1), reward: CatalogReleaseRef, readiness: z.string().min(1), runtime: z.string().min(1), assetCount: z.number().int().nonnegative() }).strict();\nexport const CatalogSummarySchema = z.object({\n id: CatalogId, namespace: CatalogSlug, publisherName: z.string().min(1), metadata: CatalogMetadata,\n release: CatalogReleaseRef, packageHash: CatalogHash, snapshotHash: CatalogHash,\n taskCount: z.number().int().nonnegative(), sizeBytes: z.number().int().nonnegative(), publishedAt: z.string().datetime({ offset: true }),\n buildIntent: z.string().min(1), methodHint: z.string().nullable(), graders: z.array(CatalogGraderSchema),\n}).strict();\nexport const CatalogBrowsePageSchema = z.object({ items: z.array(CatalogSummarySchema).max(100), nextCursor: z.string().max(3000).nullable() }).strict();\nexport const CatalogDetailSchema = z.object({ summary: CatalogSummarySchema, versions: z.array(CatalogSummarySchema).max(100) }).strict();\nexport const CatalogVisibilityReceiptSchema = z.object({ operationId: CatalogId, releaseId: CatalogId, visibility: z.enum([\"private\", \"public\"]), visibilityRevision: z.number().int().positive(), summary: CatalogSummarySchema }).strict();\nexport const CatalogAdoptionReceiptSchema = z.object({ operationId: CatalogId, releaseId: CatalogId, teamId: CatalogId, tasksetId: CatalogId, release: CatalogReleaseRef, packageHash: CatalogHash, snapshotHash: CatalogHash, graders: z.array(CatalogGraderSchema), projectId: CatalogId.nullable() }).strict();\nexport const CatalogPreviewQuerySchema = z.object({ after: z.number().int().nonnegative().default(0), limit: z.number().int().min(1).max(30).default(20) }).strict();\nexport const CatalogPreviewSchema = z.object({ items: z.array(z.object({ id: CatalogId, split: z.string(), input: z.record(z.string(), z.unknown()), policyVisibleContext: z.record(z.string(), z.unknown()), artifacts: z.array(z.object({ id: CatalogId, path: z.string(), mediaType: z.string(), sizeBytes: z.number().int().nonnegative() }).strict()) }).strict()).max(30), nextCursor: z.number().int().nonnegative().nullable(), total: z.number().int().nonnegative() }).strict();\nexport const CatalogCheckRequestSchema = z.object({ operationId: CatalogId, tasksetId: CatalogId }).strict();\nexport const CatalogCheckResultSchema = z.object({ operationId: CatalogId, tasksetId: CatalogId, snapshotHash: CatalogHash, status: z.enum([\"passed\", \"failed\", \"unavailable\"]), fixtures: z.array(z.object({ id: CatalogId, taskId: CatalogId, score: z.number().finite().nullable(), passed: z.boolean(), expectationMatched: z.boolean(), evidenceHash: CatalogHash }).strict()).max(50), providerCalls: z.literal(0), runtime: z.string() }).strict();\nexport const CatalogRetainedAdoptionSchema = z.object({ receipt: CatalogAdoptionReceiptSchema, check: CatalogCheckResultSchema.nullable() }).strict().nullable();\nexport const CatalogVisibilityStateSchema = z.object({ publisher: z.object({ namespace: CatalogSlug, teamId: CatalogId, displayName: z.string().min(1) }).strict(), summary: CatalogSummarySchema.nullable(), visibility: z.enum([\"private\", \"public\"]), visibilityRevision: z.number().int().nonnegative(), release: CatalogReleaseRef, packageHash: CatalogHash, taskCount: z.number().int().nonnegative(), fileCount: z.number().int().nonnegative(), sizeBytes: z.number().int().nonnegative() }).strict();\nexport type CatalogSummary = z.infer<typeof CatalogSummarySchema>;\nexport type CatalogVisibilityReceipt = z.infer<typeof CatalogVisibilityReceiptSchema>;\nexport type CatalogAdoptionReceipt = z.infer<typeof CatalogAdoptionReceiptSchema>;\nexport type CatalogCheckResult = z.infer<typeof CatalogCheckResultSchema>;\nexport interface DatasetMarketplaceClientOptions { baseUrl: string; apiKey?: string; teamId?: string; fetch?: typeof globalThis.fetch }\nexport class OpenPondDatasetMarketplaceError extends Error {\n constructor(readonly status: number, readonly code: string, message: string) { super(message); this.name = \"OpenPondDatasetMarketplaceError\"; }\n}\ntype RequestOptions = { signal?: AbortSignal };\nconst sameRelease = (a: z.infer<typeof CatalogReleaseRef>, b: z.infer<typeof CatalogReleaseRef>) => a.id === b.id && a.revision === b.revision && a.contentHash === b.contentHash;\n/** Public browse operations require no credentials. Workspace mutations always require an explicit authenticated workspace. No method starts model compute. */\nexport class OpenPondDatasetMarketplaceClient {\n readonly #options: DatasetMarketplaceClientOptions;\n constructor(options: DatasetMarketplaceClientOptions) {\n const url = new URL(options.baseUrl);\n if (![\"https:\", \"http:\"].includes(url.protocol) || url.username || url.password || url.search || url.hash) throw new Error(\"Dataset marketplace base URL must be an HTTP(S) endpoint without credentials, query, or fragment.\");\n this.#options = { ...options, baseUrl: url.toString().replace(/\\/+$/, \"\") };\n }\n async browse(query: z.input<typeof CatalogBrowse> = {}, options: RequestOptions = {}) {\n const parsed = CatalogBrowse.parse(query), search = new URLSearchParams();\n for (const [key, value] of Object.entries(parsed)) if (value !== undefined) search.set(key, String(value));\n const result = CatalogBrowsePageSchema.parse(await this.#request(`?${search}`, options));\n if (result.items.length > parsed.limit || (parsed.publisher && result.items.some(item => item.namespace !== parsed.publisher))) this.#mismatch();\n return result;\n }\n async get(releaseId: string, options: RequestOptions = {}) {\n const id = CatalogId.parse(releaseId), result = CatalogDetailSchema.parse(await this.#request(`/releases/${encodeURIComponent(id)}`, options));\n if (result.summary.id !== id) this.#mismatch();\n this.#validateVersions(result); return result;\n }\n async lookup(namespace: string, slug: string, revision?: number, options: RequestOptions = {}) {\n const owner = CatalogSlug.parse(namespace), name = CatalogSlug.parse(slug);\n if (revision !== undefined) z.number().int().positive().parse(revision);\n const result = CatalogDetailSchema.parse(await this.#request(`/lookup/${encodeURIComponent(owner)}/${encodeURIComponent(name)}${revision === undefined ? \"\" : `?revision=${revision}`}`, options));\n if (result.summary.namespace !== owner || result.summary.metadata.slug !== name || (revision !== undefined && result.summary.release.revision !== revision)) this.#mismatch();\n this.#validateVersions(result); return result;\n }\n async preview(releaseId: string, query: z.input<typeof CatalogPreviewQuerySchema> = {}, options: RequestOptions = {}) {\n const id = CatalogId.parse(releaseId), parsed = CatalogPreviewQuerySchema.parse(query);\n const result = CatalogPreviewSchema.parse(await this.#request(`/releases/${encodeURIComponent(id)}/tasks?after=${parsed.after}&limit=${parsed.limit}`, options));\n if (result.items.length > parsed.limit) this.#mismatch(); return result;\n }\n async adopt(input: z.infer<typeof AdoptCatalogDataset>, options: RequestOptions = {}) {\n const request = AdoptCatalogDataset.parse(input), result = CatalogAdoptionReceiptSchema.parse(await this.#request(\"/adopt\", options, request));\n if (result.operationId !== request.operationId || result.releaseId !== request.releaseId || result.teamId !== this.#options.teamId || !sameRelease(result.release, request.release) || result.packageHash !== request.packageHash || result.projectId !== (request.projectId ?? null)) this.#mismatch();\n return result;\n }\n async publish(input: z.infer<typeof PublishCatalogDataset>, options: RequestOptions = {}) {\n const request = PublishCatalogDataset.parse(input), result = CatalogVisibilityReceiptSchema.parse(await this.#request(\"/publish\", options, request));\n if (result.operationId !== request.operationId || result.releaseId !== result.summary.id || !sameRelease(result.summary.release, request.release) || result.summary.packageHash !== request.packageHash || result.visibility !== \"public\") this.#mismatch(); return result;\n }\n async changeVisibility(input: z.infer<typeof CatalogVisibilityChange>, options: RequestOptions = {}) {\n const request = CatalogVisibilityChange.parse(input), result = CatalogVisibilityReceiptSchema.parse(await this.#request(\"/visibility\", options, request));\n if (result.operationId !== request.operationId || result.releaseId !== request.releaseId || result.summary.id !== request.releaseId || result.visibility !== request.visibility) this.#mismatch(); return result;\n }\n async visibility(tasksetId: string, options: RequestOptions = {}) {\n const result = CatalogVisibilityStateSchema.parse(await this.#request(`/visibility/${encodeURIComponent(CatalogId.parse(tasksetId))}`, options, undefined, true));\n if (result.publisher.teamId !== this.#options.teamId) this.#mismatch(); return result;\n }\n async checks(operationId: string, tasksetId: string, options: RequestOptions = {}) {\n const request = CatalogCheckRequestSchema.parse({ operationId, tasksetId }), result = CatalogCheckResultSchema.parse(await this.#request(\"/checks\", options, request));\n if (result.operationId !== request.operationId || result.tasksetId !== request.tasksetId) this.#mismatch(); return result;\n }\n async retained(tasksetId: string, options: RequestOptions = {}) {\n const id = CatalogId.parse(tasksetId), result = CatalogRetainedAdoptionSchema.parse(await this.#request(`/adoptions/${encodeURIComponent(id)}`, options, undefined, true));\n if (result && (result.receipt.tasksetId !== id || result.receipt.teamId !== this.#options.teamId || (result.check && (result.check.tasksetId !== id || result.check.snapshotHash !== result.receipt.snapshotHash)))) this.#mismatch(); return result;\n }\n #validateVersions(result: z.infer<typeof CatalogDetailSchema>) {\n if (result.versions.some(item => item.namespace !== result.summary.namespace || item.metadata.slug !== result.summary.metadata.slug)) this.#mismatch();\n }\n #mismatch(): never { throw new OpenPondDatasetMarketplaceError(502, \"dataset_catalog_identity_mismatch\", \"Dataset marketplace response did not match the requested identity or scope.\"); }\n async #request(path: string, options: RequestOptions, body?: unknown, authenticated = false): Promise<unknown> {\n const auth = authenticated || body !== undefined;\n if (auth && (!this.#options.apiKey?.trim() || !this.#options.teamId?.trim())) throw new Error(\"An API key and explicit workspace are required for this dataset marketplace operation.\");\n const response = await (this.#options.fetch ?? globalThis.fetch)(`${this.#options.baseUrl}/v1/dataset-marketplace${path}`, {\n method: body === undefined ? \"GET\" : \"POST\", signal: options.signal, redirect: \"error\",\n headers: { Accept: \"application/json\", ...(auth ? { Authorization: `Bearer ${this.#options.apiKey}`, \"X-OpenPond-Team-Id\": this.#options.teamId! } : {}), ...(body === undefined ? {} : { \"Content-Type\": \"application/json\" }) },\n ...(body === undefined ? {} : { body: JSON.stringify(body) }),\n });\n const reader = response.body?.getReader();\n if (!reader) throw new OpenPondDatasetMarketplaceError(response.status, \"empty_response\", \"Dataset marketplace response was empty.\");\n const decoder = new TextDecoder(); let bytes = 0, text = \"\";\n try { while (true) { const chunk = await reader.read(); if (chunk.done) break; bytes += chunk.value.byteLength; if (bytes > 4_194_304) throw new OpenPondDatasetMarketplaceError(response.status, \"response_too_large\", \"Dataset marketplace response exceeded 4 MiB.\"); text += decoder.decode(chunk.value, { stream: true }); } text += decoder.decode(); }\n finally { await reader.cancel(); reader.releaseLock(); }\n let payload: unknown; try { payload = JSON.parse(text); } catch { throw new OpenPondDatasetMarketplaceError(response.status, \"invalid_response\", \"Dataset marketplace response was not valid JSON.\"); }\n if (!response.ok) { const error = z.object({ code: z.string().min(1), message: z.string().min(1) }).strict().safeParse(payload); throw new OpenPondDatasetMarketplaceError(response.status, error.success ? error.data.code : \"invalid_error_response\", error.success ? error.data.message : `Dataset marketplace request failed (${response.status}).`); }\n return payload;\n }\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["import { z } from \"zod\";\n\nexport const CatalogId = z.string().trim().min(1).max(240);\nexport const CatalogSlug = z.string().regex(/^[a-z0-9]+(?:-[a-z0-9]+)*$/).max(100);\nexport const CatalogReleaseRef = z.object({ id: CatalogId, revision: z.number().int().positive(), contentHash: z.string().regex(/^[a-f0-9]{64}$/) }).strict();\nexport const CatalogMetadata = z.object({\n slug: CatalogSlug,\n title: z.string().trim().min(1).max(200),\n description: z.string().trim().min(1).max(5_000),\n license: z.string().trim().min(1).max(500),\n sourceUrl: z.string().url().max(2000).refine(value => /^https?:\\/\\//i.test(value), \"Use an HTTP or HTTPS source URL.\").nullable(),\n attribution: z.string().max(5000),\n category: z.string().trim().min(1).max(100),\n}).strict();\nexport const PublishCatalogDataset = z.object({\n operationId: CatalogId, tasksetId: CatalogId, release: CatalogReleaseRef,\n packageHash: z.string().regex(/^[a-f0-9]{64}$/),\n expectedVisibilityRevision: z.number().int().nonnegative(),\n metadata: CatalogMetadata, distributionConsent: z.literal(true),\n}).strict();\nexport const CatalogVisibilityChange = z.object({\n operationId: CatalogId, releaseId: CatalogId, expectedVisibilityRevision: z.number().int().positive(),\n visibility: z.enum([\"private\", \"public\"]),\n}).strict();\nexport const AdoptCatalogDataset = z.object({\n operationId: CatalogId, releaseId: CatalogId, release: CatalogReleaseRef,\n packageHash: z.string().regex(/^[a-f0-9]{64}$/), projectId: CatalogId.optional(),\n}).strict();\nexport const CatalogBrowse = z.object({\n search: z.string().max(300).default(\"\"), category: z.string().max(100).default(\"\"),\n publisher: CatalogSlug.optional(), after: z.string().max(3000).optional(), limit: z.coerce.number().int().min(1).max(100).default(30),\n}).strict();\n\nconst CatalogHash = z.string().regex(/^[a-f0-9]{64}$/);\nexport const CatalogGraderSchema = z.object({ id: CatalogId, version: z.string().min(1), kind: z.string().min(1), reward: CatalogReleaseRef, readiness: z.string().min(1), runtime: z.string().min(1), assetCount: z.number().int().nonnegative() }).strict();\nexport const CatalogSummarySchema = z.object({\n id: CatalogId, namespace: CatalogSlug, publisherName: z.string().min(1), metadata: CatalogMetadata,\n release: CatalogReleaseRef, packageHash: CatalogHash, snapshotHash: CatalogHash,\n taskCount: z.number().int().nonnegative(), sizeBytes: z.number().int().nonnegative(), publishedAt: z.string().datetime({ offset: true }),\n buildIntent: z.string().min(1), methodHint: z.string().nullable(), graders: z.array(CatalogGraderSchema),\n}).strict();\nexport const CatalogBrowsePageSchema = z.object({ items: z.array(CatalogSummarySchema).max(100), nextCursor: z.string().max(3000).nullable() }).strict();\nexport const CatalogCategoriesQuerySchema = z.object({ publisher: CatalogSlug.optional() }).strict();\nexport const CatalogCategoriesSchema = z.object({ categories: z.array(z.string().trim().min(1).max(100)).max(100) }).strict();\nexport const CatalogDetailSchema = z.object({ summary: CatalogSummarySchema, versions: z.array(CatalogSummarySchema).max(100) }).strict();\nexport const CatalogVisibilityReceiptSchema = z.object({ operationId: CatalogId, releaseId: CatalogId, visibility: z.enum([\"private\", \"public\"]), visibilityRevision: z.number().int().positive(), summary: CatalogSummarySchema }).strict();\nexport const CatalogAdoptionReceiptSchema = z.object({ operationId: CatalogId, releaseId: CatalogId, teamId: CatalogId, tasksetId: CatalogId, release: CatalogReleaseRef, packageHash: CatalogHash, snapshotHash: CatalogHash, graders: z.array(CatalogGraderSchema), projectId: CatalogId.nullable() }).strict();\nexport const CatalogPreviewQuerySchema = z.object({ after: z.number().int().nonnegative().default(0), limit: z.number().int().min(1).max(30).default(20) }).strict();\nexport const CatalogPreviewSchema = z.object({ items: z.array(z.object({ id: CatalogId, split: z.string(), input: z.record(z.string(), z.unknown()), policyVisibleContext: z.record(z.string(), z.unknown()), artifacts: z.array(z.object({ id: CatalogId, path: z.string(), mediaType: z.string(), sizeBytes: z.number().int().nonnegative() }).strict()) }).strict()).max(30), nextCursor: z.number().int().nonnegative().nullable(), total: z.number().int().nonnegative() }).strict();\nexport const CatalogCheckRequestSchema = z.object({ operationId: CatalogId, tasksetId: CatalogId }).strict();\nexport const CatalogCheckResultSchema = z.object({ operationId: CatalogId, tasksetId: CatalogId, snapshotHash: CatalogHash, status: z.enum([\"passed\", \"failed\", \"unavailable\"]), fixtures: z.array(z.object({ id: CatalogId, taskId: CatalogId, score: z.number().finite().nullable(), passed: z.boolean(), expectationMatched: z.boolean(), evidenceHash: CatalogHash }).strict()).max(50), providerCalls: z.literal(0), runtime: z.string() }).strict();\nexport const CatalogRetainedAdoptionSchema = z.object({ receipt: CatalogAdoptionReceiptSchema, check: CatalogCheckResultSchema.nullable() }).strict().nullable();\nexport const CatalogVisibilityStateSchema = z.object({ publisher: z.object({ namespace: CatalogSlug, teamId: CatalogId, displayName: z.string().min(1) }).strict(), summary: CatalogSummarySchema.nullable(), visibility: z.enum([\"private\", \"public\"]), visibilityRevision: z.number().int().nonnegative(), release: CatalogReleaseRef, packageHash: CatalogHash, taskCount: z.number().int().nonnegative(), fileCount: z.number().int().nonnegative(), sizeBytes: z.number().int().nonnegative() }).strict();\nexport type CatalogSummary = z.infer<typeof CatalogSummarySchema>;\nexport type CatalogVisibilityReceipt = z.infer<typeof CatalogVisibilityReceiptSchema>;\nexport type CatalogAdoptionReceipt = z.infer<typeof CatalogAdoptionReceiptSchema>;\nexport type CatalogCheckResult = z.infer<typeof CatalogCheckResultSchema>;\nexport interface DatasetMarketplaceClientOptions { baseUrl: string; apiKey?: string; teamId?: string; fetch?: typeof globalThis.fetch }\nexport class OpenPondDatasetMarketplaceError extends Error {\n constructor(readonly status: number, readonly code: string, message: string) { super(message); this.name = \"OpenPondDatasetMarketplaceError\"; }\n}\ntype RequestOptions = { signal?: AbortSignal };\nconst sameRelease = (a: z.infer<typeof CatalogReleaseRef>, b: z.infer<typeof CatalogReleaseRef>) => a.id === b.id && a.revision === b.revision && a.contentHash === b.contentHash;\n/** Public browse operations require no credentials. Workspace mutations always require an explicit authenticated workspace. No method starts model compute. */\nexport class OpenPondDatasetMarketplaceClient {\n readonly #options: DatasetMarketplaceClientOptions;\n constructor(options: DatasetMarketplaceClientOptions) {\n const url = new URL(options.baseUrl);\n if (![\"https:\", \"http:\"].includes(url.protocol) || url.username || url.password || url.search || url.hash) throw new Error(\"Dataset marketplace base URL must be an HTTP(S) endpoint without credentials, query, or fragment.\");\n this.#options = { ...options, baseUrl: url.toString().replace(/\\/+$/, \"\") };\n }\n async browse(query: z.input<typeof CatalogBrowse> = {}, options: RequestOptions = {}) {\n const parsed = CatalogBrowse.parse(query), search = new URLSearchParams();\n for (const [key, value] of Object.entries(parsed)) if (value !== undefined) search.set(key, String(value));\n const result = CatalogBrowsePageSchema.parse(await this.#request(`?${search}`, options));\n if (result.items.length > parsed.limit || (parsed.publisher && result.items.some(item => item.namespace !== parsed.publisher))) this.#mismatch();\n return result;\n }\n async categories(query: z.input<typeof CatalogCategoriesQuerySchema> = {}, options: RequestOptions = {}) {\n const parsed = CatalogCategoriesQuerySchema.parse(query);\n const suffix = parsed.publisher ? `?publisher=${encodeURIComponent(parsed.publisher)}` : \"\";\n const result = CatalogCategoriesSchema.parse(await this.#request(`/categories${suffix}`, options));\n if (new Set(result.categories).size !== result.categories.length) this.#mismatch();\n return result;\n }\n async get(releaseId: string, options: RequestOptions = {}) {\n const id = CatalogId.parse(releaseId), result = CatalogDetailSchema.parse(await this.#request(`/releases/${encodeURIComponent(id)}`, options));\n if (result.summary.id !== id) this.#mismatch();\n this.#validateVersions(result); return result;\n }\n async lookup(namespace: string, slug: string, revision?: number, options: RequestOptions = {}) {\n const owner = CatalogSlug.parse(namespace), name = CatalogSlug.parse(slug);\n if (revision !== undefined) z.number().int().positive().parse(revision);\n const result = CatalogDetailSchema.parse(await this.#request(`/lookup/${encodeURIComponent(owner)}/${encodeURIComponent(name)}${revision === undefined ? \"\" : `?revision=${revision}`}`, options));\n if (result.summary.namespace !== owner || result.summary.metadata.slug !== name || (revision !== undefined && result.summary.release.revision !== revision)) this.#mismatch();\n this.#validateVersions(result); return result;\n }\n async preview(releaseId: string, query: z.input<typeof CatalogPreviewQuerySchema> = {}, options: RequestOptions = {}) {\n const id = CatalogId.parse(releaseId), parsed = CatalogPreviewQuerySchema.parse(query);\n const result = CatalogPreviewSchema.parse(await this.#request(`/releases/${encodeURIComponent(id)}/tasks?after=${parsed.after}&limit=${parsed.limit}`, options));\n if (result.items.length > parsed.limit) this.#mismatch(); return result;\n }\n async adopt(input: z.infer<typeof AdoptCatalogDataset>, options: RequestOptions = {}) {\n const request = AdoptCatalogDataset.parse(input), result = CatalogAdoptionReceiptSchema.parse(await this.#request(\"/adopt\", options, request));\n if (result.operationId !== request.operationId || result.releaseId !== request.releaseId || result.teamId !== this.#options.teamId || !sameRelease(result.release, request.release) || result.packageHash !== request.packageHash || result.projectId !== (request.projectId ?? null)) this.#mismatch();\n return result;\n }\n async publish(input: z.infer<typeof PublishCatalogDataset>, options: RequestOptions = {}) {\n const request = PublishCatalogDataset.parse(input), result = CatalogVisibilityReceiptSchema.parse(await this.#request(\"/publish\", options, request));\n if (result.operationId !== request.operationId || result.releaseId !== result.summary.id || !sameRelease(result.summary.release, request.release) || result.summary.packageHash !== request.packageHash || result.visibility !== \"public\") this.#mismatch(); return result;\n }\n async changeVisibility(input: z.infer<typeof CatalogVisibilityChange>, options: RequestOptions = {}) {\n const request = CatalogVisibilityChange.parse(input), result = CatalogVisibilityReceiptSchema.parse(await this.#request(\"/visibility\", options, request));\n if (result.operationId !== request.operationId || result.releaseId !== request.releaseId || result.summary.id !== request.releaseId || result.visibility !== request.visibility) this.#mismatch(); return result;\n }\n async visibility(tasksetId: string, options: RequestOptions = {}) {\n const result = CatalogVisibilityStateSchema.parse(await this.#request(`/visibility/${encodeURIComponent(CatalogId.parse(tasksetId))}`, options, undefined, true));\n if (result.publisher.teamId !== this.#options.teamId) this.#mismatch(); return result;\n }\n async checks(operationId: string, tasksetId: string, options: RequestOptions = {}) {\n const request = CatalogCheckRequestSchema.parse({ operationId, tasksetId }), result = CatalogCheckResultSchema.parse(await this.#request(\"/checks\", options, request));\n if (result.operationId !== request.operationId || result.tasksetId !== request.tasksetId) this.#mismatch(); return result;\n }\n async retained(tasksetId: string, options: RequestOptions = {}) {\n const id = CatalogId.parse(tasksetId), result = CatalogRetainedAdoptionSchema.parse(await this.#request(`/adoptions/${encodeURIComponent(id)}`, options, undefined, true));\n if (result && (result.receipt.tasksetId !== id || result.receipt.teamId !== this.#options.teamId || (result.check && (result.check.tasksetId !== id || result.check.snapshotHash !== result.receipt.snapshotHash)))) this.#mismatch(); return result;\n }\n #validateVersions(result: z.infer<typeof CatalogDetailSchema>) {\n if (result.versions.some(item => item.namespace !== result.summary.namespace || item.metadata.slug !== result.summary.metadata.slug)) this.#mismatch();\n }\n #mismatch(): never { throw new OpenPondDatasetMarketplaceError(502, \"dataset_catalog_identity_mismatch\", \"Dataset marketplace response did not match the requested identity or scope.\"); }\n async #request(path: string, options: RequestOptions, body?: unknown, authenticated = false): Promise<unknown> {\n const auth = authenticated || body !== undefined;\n if (auth && (!this.#options.apiKey?.trim() || !this.#options.teamId?.trim())) throw new Error(\"An API key and explicit workspace are required for this dataset marketplace operation.\");\n const response = await (this.#options.fetch ?? globalThis.fetch)(`${this.#options.baseUrl}/v1/dataset-marketplace${path}`, {\n method: body === undefined ? \"GET\" : \"POST\", signal: options.signal, redirect: \"error\",\n headers: { Accept: \"application/json\", ...(auth ? { Authorization: `Bearer ${this.#options.apiKey}`, \"X-OpenPond-Team-Id\": this.#options.teamId! } : {}), ...(body === undefined ? {} : { \"Content-Type\": \"application/json\" }) },\n ...(body === undefined ? {} : { body: JSON.stringify(body) }),\n });\n const reader = response.body?.getReader();\n if (!reader) throw new OpenPondDatasetMarketplaceError(response.status, \"empty_response\", \"Dataset marketplace response was empty.\");\n const decoder = new TextDecoder(); let bytes = 0, text = \"\";\n try { while (true) { const chunk = await reader.read(); if (chunk.done) break; bytes += chunk.value.byteLength; if (bytes > 4_194_304) throw new OpenPondDatasetMarketplaceError(response.status, \"response_too_large\", \"Dataset marketplace response exceeded 4 MiB.\"); text += decoder.decode(chunk.value, { stream: true }); } text += decoder.decode(); }\n finally { await reader.cancel(); reader.releaseLock(); }\n let payload: unknown; try { payload = JSON.parse(text); } catch { throw new OpenPondDatasetMarketplaceError(response.status, \"invalid_response\", \"Dataset marketplace response was not valid JSON.\"); }\n if (!response.ok) { const error = z.object({ code: z.string().min(1), message: z.string().min(1) }).strict().safeParse(payload); throw new OpenPondDatasetMarketplaceError(response.status, error.success ? error.data.code : \"invalid_error_response\", error.success ? error.data.message : `Dataset marketplace request failed (${response.status}).`); }\n return payload;\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|