openpond-sdk 0.6.6 → 0.7.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 (86) hide show
  1. package/dist/{chunk-EJYSXE4V.js → chunk-32H2EJRA.js} +292 -456
  2. package/dist/chunk-32H2EJRA.js.map +7 -0
  3. package/dist/chunk-3HV3G6DG.js +95 -0
  4. package/dist/chunk-3HV3G6DG.js.map +7 -0
  5. package/dist/{chunk-FPOW5PU7.js → chunk-CGIMLZE5.js} +7 -7
  6. package/dist/chunk-DNBAJUVR.js +380 -0
  7. package/dist/chunk-DNBAJUVR.js.map +7 -0
  8. package/dist/{chunk-YGCHXNPI.js → chunk-DT7FRNIZ.js} +3 -94
  9. package/dist/{chunk-YGCHXNPI.js.map → chunk-DT7FRNIZ.js.map} +4 -4
  10. package/dist/{chunk-DNEPLQXN.js → chunk-KYCQ7LZ4.js} +5 -5
  11. package/dist/{chunk-TXQHWOFM.js → chunk-LGEF4S5I.js} +2 -2
  12. package/dist/chunk-QABCKPW6.js +171 -0
  13. package/dist/chunk-QABCKPW6.js.map +7 -0
  14. package/dist/{chunk-42YOB36J.js → chunk-WOPM32SE.js} +7 -7
  15. package/dist/{chunk-EAEYAU4R.js → chunk-Y4NGWGTA.js} +23 -2
  16. package/dist/{chunk-EAEYAU4R.js.map → chunk-Y4NGWGTA.js.map} +4 -4
  17. package/dist/dataset-workspaces.js +118 -0
  18. package/dist/dataset-workspaces.js.map +7 -0
  19. package/dist/index.js +20 -15
  20. package/dist/index.js.map +2 -2
  21. package/dist/learning.js +4 -4
  22. package/dist/model-starter-catalog.js +5 -5
  23. package/dist/model-starters.js +5 -5
  24. package/dist/model-taskset-runs.js +4 -4
  25. package/dist/taskset-drafts.js +10 -8
  26. package/dist/taskset-drafts.js.map +1 -1
  27. package/dist/taskset-packages.js +42 -364
  28. package/dist/taskset-packages.js.map +4 -4
  29. package/dist/training-bundle.js +10 -8
  30. package/dist/training-bundle.js.map +1 -1
  31. package/dist/training-projects.js +134 -0
  32. package/dist/training-projects.js.map +7 -0
  33. package/dist/training.js +3 -3
  34. package/dist/types/packages/cloud/src/hosted-chat.d.ts +1 -0
  35. package/dist/types/packages/cloud/src/hosted-chat.d.ts.map +1 -1
  36. package/dist/types/packages/sdk/src/dataset-workspace-client.d.ts +1627 -0
  37. package/dist/types/packages/sdk/src/dataset-workspace-client.d.ts.map +1 -0
  38. package/dist/types/packages/sdk/src/dataset-workspace-contracts.d.ts +1622 -0
  39. package/dist/types/packages/sdk/src/dataset-workspace-contracts.d.ts.map +1 -0
  40. package/dist/types/packages/sdk/src/dataset-workspaces.d.ts +3 -0
  41. package/dist/types/packages/sdk/src/dataset-workspaces.d.ts.map +1 -0
  42. package/dist/types/packages/sdk/src/managed-training-preparation.d.ts +2 -2
  43. package/dist/types/packages/sdk/src/model-batch-review-preparation.d.ts +3 -3
  44. package/dist/types/packages/sdk/src/model-batch-review.d.ts +7 -7
  45. package/dist/types/packages/sdk/src/model-learning-intent.d.ts +1 -1
  46. package/dist/types/packages/sdk/src/model-learning-policy.d.ts +1 -1
  47. package/dist/types/packages/sdk/src/model-projects.d.ts +122 -122
  48. package/dist/types/packages/sdk/src/model-starter-attempts.d.ts +17 -17
  49. package/dist/types/packages/sdk/src/model-starter-catalog.d.ts +23 -23
  50. package/dist/types/packages/sdk/src/model-starter-execution.d.ts +3 -3
  51. package/dist/types/packages/sdk/src/model-starters.d.ts +22 -22
  52. package/dist/types/packages/sdk/src/model-taskset-runs-contracts.d.ts +8 -8
  53. package/dist/types/packages/sdk/src/model-taskset-runs.d.ts +6 -6
  54. package/dist/types/packages/sdk/src/task-inventory.d.ts +3 -3
  55. package/dist/types/packages/sdk/src/taskset-authored-contracts.d.ts +51 -51
  56. package/dist/types/packages/sdk/src/taskset-authored-files.d.ts +30 -30
  57. package/dist/types/packages/sdk/src/taskset-draft-api-contracts.d.ts +86 -86
  58. package/dist/types/packages/sdk/src/taskset-draft-client.d.ts +183 -183
  59. package/dist/types/packages/sdk/src/taskset-draft-core.d.ts +42 -42
  60. package/dist/types/packages/sdk/src/taskset-draft-dataset-artifacts.d.ts +36 -36
  61. package/dist/types/packages/sdk/src/taskset-draft-dataset-sources.d.ts +34 -34
  62. package/dist/types/packages/sdk/src/taskset-draft-document.d.ts +43 -43
  63. package/dist/types/packages/sdk/src/taskset-draft-package-compiler.d.ts +1094 -48
  64. package/dist/types/packages/sdk/src/taskset-draft-package-compiler.d.ts.map +1 -1
  65. package/dist/types/packages/sdk/src/taskset-draft-source.d.ts +71 -71
  66. package/dist/types/packages/sdk/src/taskset-draft-workspace.d.ts +84 -84
  67. package/dist/types/packages/sdk/src/taskset-package-client.d.ts +671 -671
  68. package/dist/types/packages/sdk/src/taskset-package-contracts.d.ts +371 -371
  69. package/dist/types/packages/sdk/src/taskset-package-grader-projection.d.ts +1 -1
  70. package/dist/types/packages/sdk/src/taskset-package-learning.d.ts +5 -5
  71. package/dist/types/packages/sdk/src/taskset-package-projection.d.ts +87 -87
  72. package/dist/types/packages/sdk/src/training-evaluation-results.d.ts +1 -1
  73. package/dist/types/packages/sdk/src/training-learning-batch.d.ts +64 -64
  74. package/dist/types/packages/sdk/src/training-project-client.d.ts +401 -0
  75. package/dist/types/packages/sdk/src/training-project-client.d.ts.map +1 -0
  76. package/dist/types/packages/sdk/src/training-project-contracts.d.ts +617 -0
  77. package/dist/types/packages/sdk/src/training-project-contracts.d.ts.map +1 -0
  78. package/dist/types/packages/sdk/src/training-projects.d.ts +3 -0
  79. package/dist/types/packages/sdk/src/training-projects.d.ts.map +1 -0
  80. package/dist/types/packages/sdk/src/training.d.ts +24 -24
  81. package/package.json +11 -2
  82. package/dist/chunk-EJYSXE4V.js.map +0 -7
  83. /package/dist/{chunk-FPOW5PU7.js.map → chunk-CGIMLZE5.js.map} +0 -0
  84. /package/dist/{chunk-DNEPLQXN.js.map → chunk-KYCQ7LZ4.js.map} +0 -0
  85. /package/dist/{chunk-TXQHWOFM.js.map → chunk-LGEF4S5I.js.map} +0 -0
  86. /package/dist/{chunk-42YOB36J.js.map → chunk-WOPM32SE.js.map} +0 -0
@@ -0,0 +1,1627 @@
1
+ import { DatasetWorkspacePublishSchema, DatasetWorkspaceWriteSchema } from "./dataset-workspace-contracts.js";
2
+ import type { z } from "zod";
3
+ /** Hosted independent authoring. Writes use explicit revision/operation identity;
4
+ * callers retain the operation ID when retrying an uncertain response. */
5
+ export declare class OpenPondDatasetWorkspaceClient {
6
+ private readonly options;
7
+ private readonly baseUrl;
8
+ constructor(options: {
9
+ baseUrl: string;
10
+ apiKey: string;
11
+ teamId: string;
12
+ fetch?: typeof fetch;
13
+ });
14
+ list(options?: {
15
+ cursor?: string;
16
+ signal?: AbortSignal;
17
+ }): Promise<{
18
+ teamId: string;
19
+ datasets: {
20
+ id: string;
21
+ revision: number;
22
+ name: string;
23
+ status: "draft" | "published";
24
+ publication: {
25
+ tasksetId: string;
26
+ release: {
27
+ id: string;
28
+ revision: number;
29
+ contentHash: string;
30
+ };
31
+ packageHash: string;
32
+ } | null;
33
+ updatedAt: string;
34
+ }[];
35
+ nextCursor: string | null;
36
+ }>;
37
+ get(id: string, signal?: AbortSignal): Promise<{
38
+ schemaVersion: "openpond.datasetWorkspaceReceipt.v1";
39
+ teamId: string;
40
+ datasetId: string;
41
+ revision: number;
42
+ workspace: {
43
+ schemaVersion: "openpond.tasksetDraftWorkspace.v1";
44
+ draft: {
45
+ schemaVersion: "openpond.tasksetDraft.v1";
46
+ id: string;
47
+ revision: number;
48
+ profileId: string;
49
+ modelScope: {
50
+ modelId: string;
51
+ expectedModelRevision: number;
52
+ source?: {
53
+ schemaVersion: "openpond.modelTasksetDraftPreparation.v1";
54
+ draftId: string;
55
+ requestHash: string;
56
+ sourcePackageHash: string;
57
+ sourceTasksetRef: {
58
+ id: string;
59
+ contentHash: string;
60
+ revision: number;
61
+ };
62
+ tasksetId: string;
63
+ tasksetRevision: number;
64
+ lineage: {
65
+ schemaVersion: "openpond.modelTasksetAuthoring.v1";
66
+ owner: {
67
+ scopeId: string;
68
+ modelId: string;
69
+ };
70
+ root: {
71
+ id: string;
72
+ contentHash: string;
73
+ revision: number;
74
+ };
75
+ parent: {
76
+ id: string;
77
+ contentHash: string;
78
+ revision: number;
79
+ };
80
+ };
81
+ authoringGraph?: "bound" | undefined;
82
+ } | undefined;
83
+ } | null;
84
+ name: string;
85
+ objective: string;
86
+ purpose: "general" | "benchmark";
87
+ benchmark: {
88
+ schemaVersion: "openpond.tasksetBenchmark.v1";
89
+ definitionId: string;
90
+ releaseId: string;
91
+ releaseHash: string;
92
+ managedReleasePath: string;
93
+ adaptationSplit: "train" | "validation" | "test" | "frozen_eval";
94
+ evaluationSplit: "train" | "validation" | "test" | "frozen_eval";
95
+ primaryMetric: "foreground_tokens" | "success_rate" | "latency_ms" | "cost_usd";
96
+ qualityGate: "none" | "non_regression" | "all_pass";
97
+ source: "builtin" | "imported";
98
+ metadata: Record<string, unknown>;
99
+ } | null;
100
+ preferenceComparison: {
101
+ schemaVersion: "openpond.tasksetPreferenceComparisonBinding.v1";
102
+ releaseId: string;
103
+ releaseHash: string;
104
+ publishedAt: string;
105
+ metadata: Record<string, unknown>;
106
+ } | null;
107
+ status: "draft" | "validating" | "needs_review" | "published";
108
+ sourceRefs: ({
109
+ id: string;
110
+ profileId: string;
111
+ title: string;
112
+ sourceHash: string;
113
+ occurredAt: string;
114
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
115
+ secretScanStatus: "blocked" | "pending" | "passed";
116
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
117
+ metadata: Record<string, unknown>;
118
+ schemaVersion: "openpond.huggingFaceDatasetSource.v1";
119
+ kind: "huggingface";
120
+ repositoryId: string;
121
+ repositoryUrl: string;
122
+ revision: string;
123
+ configuration: string;
124
+ upstreamSplits: string[];
125
+ gated: boolean;
126
+ private: boolean;
127
+ declaredLicense: string | null;
128
+ sourceFileHashes: string[];
129
+ } | {
130
+ id: string;
131
+ profileId: string;
132
+ title: string;
133
+ sourceHash: string;
134
+ occurredAt: string;
135
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
136
+ secretScanStatus: "blocked" | "pending" | "passed";
137
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
138
+ metadata: Record<string, unknown>;
139
+ schemaVersion: "openpond.uploadedFileDatasetSource.v1";
140
+ kind: "uploaded_file";
141
+ originalFileNames: string[];
142
+ mediaTypes: string[];
143
+ sourceFileHashes: string[];
144
+ totalBytes: number;
145
+ parserVersion: string;
146
+ } | {
147
+ id: string;
148
+ profileId: string;
149
+ title: string;
150
+ sourceHash: string;
151
+ occurredAt: string;
152
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
153
+ secretScanStatus: "blocked" | "pending" | "passed";
154
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
155
+ metadata: Record<string, unknown>;
156
+ schemaVersion: "openpond.generatedDatasetSource.v1";
157
+ kind: "generated";
158
+ generatorId: string;
159
+ generatorVersion: string;
160
+ seed: number;
161
+ generatorHash: string;
162
+ } | {
163
+ id: string;
164
+ profileId: string;
165
+ title: string;
166
+ sourceHash: string;
167
+ occurredAt: string;
168
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
169
+ secretScanStatus: "blocked" | "pending" | "passed";
170
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
171
+ metadata: Record<string, unknown>;
172
+ schemaVersion: "openpond.learningBatchDatasetSource.v1";
173
+ kind: "learning_batch";
174
+ batch: {
175
+ id: string;
176
+ revision: number;
177
+ contentHash: string;
178
+ };
179
+ taskDefinition: {
180
+ id: string;
181
+ revision: number;
182
+ contentHash: string;
183
+ };
184
+ admittedBy: string;
185
+ } | {
186
+ schemaVersion: "openpond.trainingSource.v1";
187
+ id: string;
188
+ profileId: string;
189
+ sessionId: string;
190
+ turnIds: string[];
191
+ workspaceId: string | null;
192
+ sourceHash: string;
193
+ clusterKey: string;
194
+ title: string;
195
+ occurredAt: string;
196
+ consent: {
197
+ status: "pending" | "granted" | "denied" | "revoked";
198
+ scope: "metadata_only" | "selected_turns" | "full_session";
199
+ grantedBy: string | null;
200
+ grantedAt: string | null;
201
+ purpose: "task_authoring_and_evaluation";
202
+ };
203
+ connectedAppIds: string[];
204
+ secretScanStatus: "blocked" | "pending" | "passed";
205
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
206
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
207
+ metadata: Record<string, unknown>;
208
+ })[];
209
+ policy: {
210
+ policyVisibleFields: string[];
211
+ privilegedFields: string[];
212
+ hiddenGraderRefs: string[];
213
+ connectedAppScopes: string[];
214
+ };
215
+ environment: {
216
+ protocolVersion: "openpond.taskEnvironment.v1";
217
+ kind: "chat" | "agent" | "program" | "stateful_harness" | "work";
218
+ entrypoint: string;
219
+ stateful: boolean;
220
+ deterministicSeeds: boolean;
221
+ toolNames: string[];
222
+ lifecycle: ("create" | "reset" | "step" | "grade" | "cleanup")[];
223
+ defaultTimeoutMs: number;
224
+ networkPolicy: "none" | "declared_read_only" | "declared_scoped";
225
+ metadata: Record<string, unknown>;
226
+ actionBindings?: {
227
+ schemaVersion: "openpond.harnessActionBinding.v1";
228
+ actionId: string;
229
+ modelToolName: string;
230
+ description: string;
231
+ inputSchema: Record<string, unknown>;
232
+ actionSchemaHash: string;
233
+ agentRelease: {
234
+ id: string;
235
+ contentHash: string;
236
+ };
237
+ implementationHash: string;
238
+ runtimeBindingId: string;
239
+ capabilityReceiptHash: string;
240
+ sideEffect: "read" | "write";
241
+ studentVisible: boolean;
242
+ timeoutMs: number;
243
+ episodeArgumentBindings: {
244
+ argument: string;
245
+ source: "case_id";
246
+ }[];
247
+ }[] | undefined;
248
+ resources?: {
249
+ id: string;
250
+ kind: "file" | "configuration" | "catalog" | "code_module";
251
+ path: string;
252
+ visibility: "privileged" | "policy_visible" | "policy_hidden";
253
+ required: boolean;
254
+ metadata: Record<string, unknown>;
255
+ mediaType?: string | null | undefined;
256
+ }[] | undefined;
257
+ };
258
+ output: {
259
+ mode: "text" | "structured_json" | "artifacts";
260
+ jsonSchema: Record<string, unknown> | null;
261
+ renderer: {
262
+ module: string;
263
+ exportName: string;
264
+ configRef: string | null;
265
+ } | null;
266
+ };
267
+ capabilities: {
268
+ schemaVersion: "openpond.tasksetCapabilities.v1";
269
+ taskKind: "chat" | "single_agent" | "multi_agent" | "custom_program";
270
+ supportedSignals: ("label" | "demonstration" | "reward" | "feedback" | "preference" | "correction")[];
271
+ compatibleMethods: ("none" | "retrieval" | "sft" | "dpo" | "grpo" | "ppo" | "sdft" | "opd" | "opsd" | "sdpo")[];
272
+ rewardKinds: ("none" | "exact" | "deterministic" | "model_judge" | "human")[];
273
+ requiresTools: boolean;
274
+ requiresState: boolean;
275
+ requiresPrivilegedGrading: boolean;
276
+ environmentPlacements: ("local" | "remote" | "colocated" | "provider_native")[];
277
+ exportable: boolean;
278
+ portabilityBlockers: string[];
279
+ };
280
+ metrics: {
281
+ schemaVersion: "openpond.tasksetMetricPolicy.v1";
282
+ primaryMetric: string;
283
+ aggregation: "custom" | "mean_score" | "pass_rate" | "weighted_mean";
284
+ missingReward: "zero" | "exclude";
285
+ customAggregator: {
286
+ module: string;
287
+ exportName: string;
288
+ contentHash: string;
289
+ timeoutMs: number;
290
+ networkPolicy: "none";
291
+ } | null;
292
+ taskWeights?: Record<string, number> | undefined;
293
+ };
294
+ review: {
295
+ enabled: boolean;
296
+ candidateCount: number;
297
+ minimumSamples: number;
298
+ allowTies: boolean;
299
+ allowRejectAll: boolean;
300
+ rubric: string;
301
+ criteria: {
302
+ id: string;
303
+ label: string;
304
+ description: string;
305
+ weight: number;
306
+ }[];
307
+ };
308
+ tasks: {
309
+ schemaVersion: "openpond.taskData.v1";
310
+ id: string;
311
+ clusterKey: string;
312
+ split: "train" | "validation" | "test" | "frozen_eval";
313
+ input: Record<string, unknown>;
314
+ expectedOutput: Record<string, unknown> | null;
315
+ policyVisibleContext: Record<string, unknown>;
316
+ privilegedContextRef: string | null;
317
+ tags: string[];
318
+ metadata: Record<string, unknown>;
319
+ sourceRefs: string[];
320
+ assets?: {
321
+ id: string;
322
+ sourceRefId: string;
323
+ artifactRef: string;
324
+ fileName: string;
325
+ mediaType: string;
326
+ sha256: string;
327
+ sizeBytes: number;
328
+ split: "train" | "validation" | "test" | "frozen_eval";
329
+ metadata: Record<string, unknown>;
330
+ }[] | undefined;
331
+ resourceRefs?: string[] | undefined;
332
+ requiredOutputs?: {
333
+ path: string;
334
+ mediaType: string;
335
+ metadata: Record<string, unknown>;
336
+ schemaRef?: string | null | undefined;
337
+ maxBytes?: number | undefined;
338
+ }[] | undefined;
339
+ }[];
340
+ graders: ({
341
+ id: string;
342
+ version: string;
343
+ label: string;
344
+ weight: number;
345
+ hardGate: boolean;
346
+ rewardEligible: boolean;
347
+ privileged: boolean;
348
+ metadata: Record<string, unknown>;
349
+ kind: "file" | "content" | "test" | "schema" | "diff" | "runtime_event" | "state";
350
+ config: Record<string, unknown>;
351
+ } | {
352
+ id: string;
353
+ version: string;
354
+ label: string;
355
+ weight: number;
356
+ hardGate: boolean;
357
+ rewardEligible: boolean;
358
+ privileged: boolean;
359
+ metadata: Record<string, unknown>;
360
+ kind: "model_judge";
361
+ rubric: string;
362
+ judge: {
363
+ providerId: "openpond" | "codex" | "anthropic" | "openai" | "xai" | "google" | "openrouter" | "deepseek" | "zai" | "moonshot" | "together" | "groq" | "custom-openai-compatible";
364
+ modelId: string;
365
+ };
366
+ calibrationFixtureRefs: string[];
367
+ calibrationStatus: "failed" | "pending" | "passed";
368
+ temperature: number;
369
+ } | {
370
+ id: string;
371
+ version: string;
372
+ label: string;
373
+ weight: number;
374
+ hardGate: boolean;
375
+ rewardEligible: boolean;
376
+ privileged: boolean;
377
+ metadata: Record<string, unknown>;
378
+ kind: "human";
379
+ rubric: string;
380
+ reviewerRole: string;
381
+ } | {
382
+ id: string;
383
+ version: string;
384
+ label: string;
385
+ weight: number;
386
+ hardGate: boolean;
387
+ rewardEligible: boolean;
388
+ privileged: boolean;
389
+ metadata: Record<string, unknown>;
390
+ kind: "custom_verifier";
391
+ module: string;
392
+ exportName: string;
393
+ timeoutMs: number;
394
+ networkPolicy: "none";
395
+ runtime?: "isolated_javascript" | "sandbox_process" | undefined;
396
+ })[];
397
+ graderFixtures: {
398
+ id: string;
399
+ taskId: string;
400
+ label: "positive" | "negative" | "boundary" | "adversarial" | "prompt_injection" | "infrastructure_failure";
401
+ output: Record<string, unknown>;
402
+ infrastructureError: string | null;
403
+ expectedPassed: boolean;
404
+ expectedRewardEligible: boolean;
405
+ metadata: Record<string, unknown>;
406
+ }[];
407
+ learningSignals: {
408
+ demonstrations: {
409
+ id: string;
410
+ taskId: string | null;
411
+ sourceRefs: string[];
412
+ artifactRef: string;
413
+ approved: boolean;
414
+ confidence: number;
415
+ metadata: Record<string, unknown>;
416
+ kind: "demonstration";
417
+ prompt: string | null;
418
+ response: string | null;
419
+ }[];
420
+ preferences: {
421
+ id: string;
422
+ taskId: string | null;
423
+ sourceRefs: string[];
424
+ artifactRef: string;
425
+ approved: boolean;
426
+ confidence: number;
427
+ metadata: Record<string, unknown>;
428
+ kind: "preference";
429
+ prompt: string;
430
+ chosen: string;
431
+ rejected: string;
432
+ rationale: string | null;
433
+ }[];
434
+ corrections: {
435
+ id: string;
436
+ taskId: string | null;
437
+ sourceRefs: string[];
438
+ artifactRef: string;
439
+ approved: boolean;
440
+ confidence: number;
441
+ metadata: Record<string, unknown>;
442
+ kind: "correction";
443
+ original: string;
444
+ corrected: string;
445
+ rationale: string | null;
446
+ }[];
447
+ feedback: {
448
+ id: string;
449
+ taskId: string | null;
450
+ sourceRefs: string[];
451
+ artifactRef: string;
452
+ approved: boolean;
453
+ confidence: number;
454
+ metadata: Record<string, unknown>;
455
+ kind: "feedback";
456
+ feedback: string;
457
+ polarity: "neutral" | "positive" | "negative" | "mixed";
458
+ }[];
459
+ rewards: {
460
+ id: string;
461
+ taskId: string | null;
462
+ sourceRefs: string[];
463
+ artifactRef: string;
464
+ approved: boolean;
465
+ confidence: number;
466
+ metadata: Record<string, unknown>;
467
+ kind: "reward";
468
+ task: string;
469
+ rules: {
470
+ id: string;
471
+ points: number;
472
+ condition: string;
473
+ }[];
474
+ otherwisePoints: number;
475
+ executable: boolean;
476
+ }[];
477
+ labels: {
478
+ id: string;
479
+ taskId: string | null;
480
+ sourceRefs: string[];
481
+ artifactRef: string;
482
+ approved: boolean;
483
+ confidence: number;
484
+ metadata: Record<string, unknown>;
485
+ kind: "label";
486
+ labelKind: "rubric";
487
+ task: string;
488
+ criteria: {
489
+ id: string;
490
+ label: string;
491
+ description: string;
492
+ }[];
493
+ calibrationExamples: {
494
+ positive: string;
495
+ negative: string;
496
+ boundary: string;
497
+ };
498
+ }[];
499
+ };
500
+ publishedTasksetRef: {
501
+ id: string;
502
+ revision: number;
503
+ contentHash: string;
504
+ } | null;
505
+ createdAt: string;
506
+ updatedAt: string;
507
+ metadata: Record<string, unknown>;
508
+ datasetArtifact?: {
509
+ schemaVersion: "openpond.datasetArtifact.v1";
510
+ id: string;
511
+ tasksetId: string;
512
+ tasksetRevision: number;
513
+ contentHash: string;
514
+ format: "parquet";
515
+ schema: {
516
+ schemaVersion: "openpond.datasetSemanticSchema.v1";
517
+ fields: {
518
+ name: string;
519
+ semanticRole: "metadata" | "row_id" | "cluster_id" | "prompt" | "messages" | "demonstration" | "chosen" | "rejected" | "expected_output" | "privileged_context" | "reward" | "feedback" | "tag";
520
+ logicalType: "string" | "boolean" | "messages" | "integer" | "float" | "json";
521
+ nullable: boolean;
522
+ policy: "metadata" | "visible" | "privileged";
523
+ }[];
524
+ schemaHash: string;
525
+ };
526
+ shards: {
527
+ id: string;
528
+ split: "train" | "validation" | "test" | "frozen_eval";
529
+ path: string;
530
+ contentHash: string;
531
+ schemaHash: string;
532
+ sizeBytes: number;
533
+ rowCount: number;
534
+ rowGroupCount: number;
535
+ }[];
536
+ rowCount: number;
537
+ splitCounts: Record<"train" | "validation" | "test" | "frozen_eval", number>;
538
+ sourceReceiptRefs: string[];
539
+ mappingHash: string;
540
+ qualityReportHash: string;
541
+ createdAt: string;
542
+ } | null | undefined;
543
+ };
544
+ files: {
545
+ path: string;
546
+ contentHash: string;
547
+ sizeBytes: number;
548
+ base64: string;
549
+ }[];
550
+ contentHash: string;
551
+ };
552
+ publication: {
553
+ tasksetId: string;
554
+ release: {
555
+ id: string;
556
+ revision: number;
557
+ contentHash: string;
558
+ };
559
+ packageHash: string;
560
+ } | null;
561
+ }>;
562
+ save(input: z.input<typeof DatasetWorkspaceWriteSchema>, signal?: AbortSignal): Promise<{
563
+ schemaVersion: "openpond.datasetWorkspaceReceipt.v1";
564
+ teamId: string;
565
+ datasetId: string;
566
+ revision: number;
567
+ workspace: {
568
+ schemaVersion: "openpond.tasksetDraftWorkspace.v1";
569
+ draft: {
570
+ schemaVersion: "openpond.tasksetDraft.v1";
571
+ id: string;
572
+ revision: number;
573
+ profileId: string;
574
+ modelScope: {
575
+ modelId: string;
576
+ expectedModelRevision: number;
577
+ source?: {
578
+ schemaVersion: "openpond.modelTasksetDraftPreparation.v1";
579
+ draftId: string;
580
+ requestHash: string;
581
+ sourcePackageHash: string;
582
+ sourceTasksetRef: {
583
+ id: string;
584
+ contentHash: string;
585
+ revision: number;
586
+ };
587
+ tasksetId: string;
588
+ tasksetRevision: number;
589
+ lineage: {
590
+ schemaVersion: "openpond.modelTasksetAuthoring.v1";
591
+ owner: {
592
+ scopeId: string;
593
+ modelId: string;
594
+ };
595
+ root: {
596
+ id: string;
597
+ contentHash: string;
598
+ revision: number;
599
+ };
600
+ parent: {
601
+ id: string;
602
+ contentHash: string;
603
+ revision: number;
604
+ };
605
+ };
606
+ authoringGraph?: "bound" | undefined;
607
+ } | undefined;
608
+ } | null;
609
+ name: string;
610
+ objective: string;
611
+ purpose: "general" | "benchmark";
612
+ benchmark: {
613
+ schemaVersion: "openpond.tasksetBenchmark.v1";
614
+ definitionId: string;
615
+ releaseId: string;
616
+ releaseHash: string;
617
+ managedReleasePath: string;
618
+ adaptationSplit: "train" | "validation" | "test" | "frozen_eval";
619
+ evaluationSplit: "train" | "validation" | "test" | "frozen_eval";
620
+ primaryMetric: "foreground_tokens" | "success_rate" | "latency_ms" | "cost_usd";
621
+ qualityGate: "none" | "non_regression" | "all_pass";
622
+ source: "builtin" | "imported";
623
+ metadata: Record<string, unknown>;
624
+ } | null;
625
+ preferenceComparison: {
626
+ schemaVersion: "openpond.tasksetPreferenceComparisonBinding.v1";
627
+ releaseId: string;
628
+ releaseHash: string;
629
+ publishedAt: string;
630
+ metadata: Record<string, unknown>;
631
+ } | null;
632
+ status: "draft" | "validating" | "needs_review" | "published";
633
+ sourceRefs: ({
634
+ id: string;
635
+ profileId: string;
636
+ title: string;
637
+ sourceHash: string;
638
+ occurredAt: string;
639
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
640
+ secretScanStatus: "blocked" | "pending" | "passed";
641
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
642
+ metadata: Record<string, unknown>;
643
+ schemaVersion: "openpond.huggingFaceDatasetSource.v1";
644
+ kind: "huggingface";
645
+ repositoryId: string;
646
+ repositoryUrl: string;
647
+ revision: string;
648
+ configuration: string;
649
+ upstreamSplits: string[];
650
+ gated: boolean;
651
+ private: boolean;
652
+ declaredLicense: string | null;
653
+ sourceFileHashes: string[];
654
+ } | {
655
+ id: string;
656
+ profileId: string;
657
+ title: string;
658
+ sourceHash: string;
659
+ occurredAt: string;
660
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
661
+ secretScanStatus: "blocked" | "pending" | "passed";
662
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
663
+ metadata: Record<string, unknown>;
664
+ schemaVersion: "openpond.uploadedFileDatasetSource.v1";
665
+ kind: "uploaded_file";
666
+ originalFileNames: string[];
667
+ mediaTypes: string[];
668
+ sourceFileHashes: string[];
669
+ totalBytes: number;
670
+ parserVersion: string;
671
+ } | {
672
+ id: string;
673
+ profileId: string;
674
+ title: string;
675
+ sourceHash: string;
676
+ occurredAt: string;
677
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
678
+ secretScanStatus: "blocked" | "pending" | "passed";
679
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
680
+ metadata: Record<string, unknown>;
681
+ schemaVersion: "openpond.generatedDatasetSource.v1";
682
+ kind: "generated";
683
+ generatorId: string;
684
+ generatorVersion: string;
685
+ seed: number;
686
+ generatorHash: string;
687
+ } | {
688
+ id: string;
689
+ profileId: string;
690
+ title: string;
691
+ sourceHash: string;
692
+ occurredAt: string;
693
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
694
+ secretScanStatus: "blocked" | "pending" | "passed";
695
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
696
+ metadata: Record<string, unknown>;
697
+ schemaVersion: "openpond.learningBatchDatasetSource.v1";
698
+ kind: "learning_batch";
699
+ batch: {
700
+ id: string;
701
+ revision: number;
702
+ contentHash: string;
703
+ };
704
+ taskDefinition: {
705
+ id: string;
706
+ revision: number;
707
+ contentHash: string;
708
+ };
709
+ admittedBy: string;
710
+ } | {
711
+ schemaVersion: "openpond.trainingSource.v1";
712
+ id: string;
713
+ profileId: string;
714
+ sessionId: string;
715
+ turnIds: string[];
716
+ workspaceId: string | null;
717
+ sourceHash: string;
718
+ clusterKey: string;
719
+ title: string;
720
+ occurredAt: string;
721
+ consent: {
722
+ status: "pending" | "granted" | "denied" | "revoked";
723
+ scope: "metadata_only" | "selected_turns" | "full_session";
724
+ grantedBy: string | null;
725
+ grantedAt: string | null;
726
+ purpose: "task_authoring_and_evaluation";
727
+ };
728
+ connectedAppIds: string[];
729
+ secretScanStatus: "blocked" | "pending" | "passed";
730
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
731
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
732
+ metadata: Record<string, unknown>;
733
+ })[];
734
+ policy: {
735
+ policyVisibleFields: string[];
736
+ privilegedFields: string[];
737
+ hiddenGraderRefs: string[];
738
+ connectedAppScopes: string[];
739
+ };
740
+ environment: {
741
+ protocolVersion: "openpond.taskEnvironment.v1";
742
+ kind: "chat" | "agent" | "program" | "stateful_harness" | "work";
743
+ entrypoint: string;
744
+ stateful: boolean;
745
+ deterministicSeeds: boolean;
746
+ toolNames: string[];
747
+ lifecycle: ("create" | "reset" | "step" | "grade" | "cleanup")[];
748
+ defaultTimeoutMs: number;
749
+ networkPolicy: "none" | "declared_read_only" | "declared_scoped";
750
+ metadata: Record<string, unknown>;
751
+ actionBindings?: {
752
+ schemaVersion: "openpond.harnessActionBinding.v1";
753
+ actionId: string;
754
+ modelToolName: string;
755
+ description: string;
756
+ inputSchema: Record<string, unknown>;
757
+ actionSchemaHash: string;
758
+ agentRelease: {
759
+ id: string;
760
+ contentHash: string;
761
+ };
762
+ implementationHash: string;
763
+ runtimeBindingId: string;
764
+ capabilityReceiptHash: string;
765
+ sideEffect: "read" | "write";
766
+ studentVisible: boolean;
767
+ timeoutMs: number;
768
+ episodeArgumentBindings: {
769
+ argument: string;
770
+ source: "case_id";
771
+ }[];
772
+ }[] | undefined;
773
+ resources?: {
774
+ id: string;
775
+ kind: "file" | "configuration" | "catalog" | "code_module";
776
+ path: string;
777
+ visibility: "privileged" | "policy_visible" | "policy_hidden";
778
+ required: boolean;
779
+ metadata: Record<string, unknown>;
780
+ mediaType?: string | null | undefined;
781
+ }[] | undefined;
782
+ };
783
+ output: {
784
+ mode: "text" | "structured_json" | "artifacts";
785
+ jsonSchema: Record<string, unknown> | null;
786
+ renderer: {
787
+ module: string;
788
+ exportName: string;
789
+ configRef: string | null;
790
+ } | null;
791
+ };
792
+ capabilities: {
793
+ schemaVersion: "openpond.tasksetCapabilities.v1";
794
+ taskKind: "chat" | "single_agent" | "multi_agent" | "custom_program";
795
+ supportedSignals: ("label" | "demonstration" | "reward" | "feedback" | "preference" | "correction")[];
796
+ compatibleMethods: ("none" | "retrieval" | "sft" | "dpo" | "grpo" | "ppo" | "sdft" | "opd" | "opsd" | "sdpo")[];
797
+ rewardKinds: ("none" | "exact" | "deterministic" | "model_judge" | "human")[];
798
+ requiresTools: boolean;
799
+ requiresState: boolean;
800
+ requiresPrivilegedGrading: boolean;
801
+ environmentPlacements: ("local" | "remote" | "colocated" | "provider_native")[];
802
+ exportable: boolean;
803
+ portabilityBlockers: string[];
804
+ };
805
+ metrics: {
806
+ schemaVersion: "openpond.tasksetMetricPolicy.v1";
807
+ primaryMetric: string;
808
+ aggregation: "custom" | "mean_score" | "pass_rate" | "weighted_mean";
809
+ missingReward: "zero" | "exclude";
810
+ customAggregator: {
811
+ module: string;
812
+ exportName: string;
813
+ contentHash: string;
814
+ timeoutMs: number;
815
+ networkPolicy: "none";
816
+ } | null;
817
+ taskWeights?: Record<string, number> | undefined;
818
+ };
819
+ review: {
820
+ enabled: boolean;
821
+ candidateCount: number;
822
+ minimumSamples: number;
823
+ allowTies: boolean;
824
+ allowRejectAll: boolean;
825
+ rubric: string;
826
+ criteria: {
827
+ id: string;
828
+ label: string;
829
+ description: string;
830
+ weight: number;
831
+ }[];
832
+ };
833
+ tasks: {
834
+ schemaVersion: "openpond.taskData.v1";
835
+ id: string;
836
+ clusterKey: string;
837
+ split: "train" | "validation" | "test" | "frozen_eval";
838
+ input: Record<string, unknown>;
839
+ expectedOutput: Record<string, unknown> | null;
840
+ policyVisibleContext: Record<string, unknown>;
841
+ privilegedContextRef: string | null;
842
+ tags: string[];
843
+ metadata: Record<string, unknown>;
844
+ sourceRefs: string[];
845
+ assets?: {
846
+ id: string;
847
+ sourceRefId: string;
848
+ artifactRef: string;
849
+ fileName: string;
850
+ mediaType: string;
851
+ sha256: string;
852
+ sizeBytes: number;
853
+ split: "train" | "validation" | "test" | "frozen_eval";
854
+ metadata: Record<string, unknown>;
855
+ }[] | undefined;
856
+ resourceRefs?: string[] | undefined;
857
+ requiredOutputs?: {
858
+ path: string;
859
+ mediaType: string;
860
+ metadata: Record<string, unknown>;
861
+ schemaRef?: string | null | undefined;
862
+ maxBytes?: number | undefined;
863
+ }[] | undefined;
864
+ }[];
865
+ graders: ({
866
+ id: string;
867
+ version: string;
868
+ label: string;
869
+ weight: number;
870
+ hardGate: boolean;
871
+ rewardEligible: boolean;
872
+ privileged: boolean;
873
+ metadata: Record<string, unknown>;
874
+ kind: "file" | "content" | "test" | "schema" | "diff" | "runtime_event" | "state";
875
+ config: Record<string, unknown>;
876
+ } | {
877
+ id: string;
878
+ version: string;
879
+ label: string;
880
+ weight: number;
881
+ hardGate: boolean;
882
+ rewardEligible: boolean;
883
+ privileged: boolean;
884
+ metadata: Record<string, unknown>;
885
+ kind: "model_judge";
886
+ rubric: string;
887
+ judge: {
888
+ providerId: "openpond" | "codex" | "anthropic" | "openai" | "xai" | "google" | "openrouter" | "deepseek" | "zai" | "moonshot" | "together" | "groq" | "custom-openai-compatible";
889
+ modelId: string;
890
+ };
891
+ calibrationFixtureRefs: string[];
892
+ calibrationStatus: "failed" | "pending" | "passed";
893
+ temperature: number;
894
+ } | {
895
+ id: string;
896
+ version: string;
897
+ label: string;
898
+ weight: number;
899
+ hardGate: boolean;
900
+ rewardEligible: boolean;
901
+ privileged: boolean;
902
+ metadata: Record<string, unknown>;
903
+ kind: "human";
904
+ rubric: string;
905
+ reviewerRole: string;
906
+ } | {
907
+ id: string;
908
+ version: string;
909
+ label: string;
910
+ weight: number;
911
+ hardGate: boolean;
912
+ rewardEligible: boolean;
913
+ privileged: boolean;
914
+ metadata: Record<string, unknown>;
915
+ kind: "custom_verifier";
916
+ module: string;
917
+ exportName: string;
918
+ timeoutMs: number;
919
+ networkPolicy: "none";
920
+ runtime?: "isolated_javascript" | "sandbox_process" | undefined;
921
+ })[];
922
+ graderFixtures: {
923
+ id: string;
924
+ taskId: string;
925
+ label: "positive" | "negative" | "boundary" | "adversarial" | "prompt_injection" | "infrastructure_failure";
926
+ output: Record<string, unknown>;
927
+ infrastructureError: string | null;
928
+ expectedPassed: boolean;
929
+ expectedRewardEligible: boolean;
930
+ metadata: Record<string, unknown>;
931
+ }[];
932
+ learningSignals: {
933
+ demonstrations: {
934
+ id: string;
935
+ taskId: string | null;
936
+ sourceRefs: string[];
937
+ artifactRef: string;
938
+ approved: boolean;
939
+ confidence: number;
940
+ metadata: Record<string, unknown>;
941
+ kind: "demonstration";
942
+ prompt: string | null;
943
+ response: string | null;
944
+ }[];
945
+ preferences: {
946
+ id: string;
947
+ taskId: string | null;
948
+ sourceRefs: string[];
949
+ artifactRef: string;
950
+ approved: boolean;
951
+ confidence: number;
952
+ metadata: Record<string, unknown>;
953
+ kind: "preference";
954
+ prompt: string;
955
+ chosen: string;
956
+ rejected: string;
957
+ rationale: string | null;
958
+ }[];
959
+ corrections: {
960
+ id: string;
961
+ taskId: string | null;
962
+ sourceRefs: string[];
963
+ artifactRef: string;
964
+ approved: boolean;
965
+ confidence: number;
966
+ metadata: Record<string, unknown>;
967
+ kind: "correction";
968
+ original: string;
969
+ corrected: string;
970
+ rationale: string | null;
971
+ }[];
972
+ feedback: {
973
+ id: string;
974
+ taskId: string | null;
975
+ sourceRefs: string[];
976
+ artifactRef: string;
977
+ approved: boolean;
978
+ confidence: number;
979
+ metadata: Record<string, unknown>;
980
+ kind: "feedback";
981
+ feedback: string;
982
+ polarity: "neutral" | "positive" | "negative" | "mixed";
983
+ }[];
984
+ rewards: {
985
+ id: string;
986
+ taskId: string | null;
987
+ sourceRefs: string[];
988
+ artifactRef: string;
989
+ approved: boolean;
990
+ confidence: number;
991
+ metadata: Record<string, unknown>;
992
+ kind: "reward";
993
+ task: string;
994
+ rules: {
995
+ id: string;
996
+ points: number;
997
+ condition: string;
998
+ }[];
999
+ otherwisePoints: number;
1000
+ executable: boolean;
1001
+ }[];
1002
+ labels: {
1003
+ id: string;
1004
+ taskId: string | null;
1005
+ sourceRefs: string[];
1006
+ artifactRef: string;
1007
+ approved: boolean;
1008
+ confidence: number;
1009
+ metadata: Record<string, unknown>;
1010
+ kind: "label";
1011
+ labelKind: "rubric";
1012
+ task: string;
1013
+ criteria: {
1014
+ id: string;
1015
+ label: string;
1016
+ description: string;
1017
+ }[];
1018
+ calibrationExamples: {
1019
+ positive: string;
1020
+ negative: string;
1021
+ boundary: string;
1022
+ };
1023
+ }[];
1024
+ };
1025
+ publishedTasksetRef: {
1026
+ id: string;
1027
+ revision: number;
1028
+ contentHash: string;
1029
+ } | null;
1030
+ createdAt: string;
1031
+ updatedAt: string;
1032
+ metadata: Record<string, unknown>;
1033
+ datasetArtifact?: {
1034
+ schemaVersion: "openpond.datasetArtifact.v1";
1035
+ id: string;
1036
+ tasksetId: string;
1037
+ tasksetRevision: number;
1038
+ contentHash: string;
1039
+ format: "parquet";
1040
+ schema: {
1041
+ schemaVersion: "openpond.datasetSemanticSchema.v1";
1042
+ fields: {
1043
+ name: string;
1044
+ semanticRole: "metadata" | "row_id" | "cluster_id" | "prompt" | "messages" | "demonstration" | "chosen" | "rejected" | "expected_output" | "privileged_context" | "reward" | "feedback" | "tag";
1045
+ logicalType: "string" | "boolean" | "messages" | "integer" | "float" | "json";
1046
+ nullable: boolean;
1047
+ policy: "metadata" | "visible" | "privileged";
1048
+ }[];
1049
+ schemaHash: string;
1050
+ };
1051
+ shards: {
1052
+ id: string;
1053
+ split: "train" | "validation" | "test" | "frozen_eval";
1054
+ path: string;
1055
+ contentHash: string;
1056
+ schemaHash: string;
1057
+ sizeBytes: number;
1058
+ rowCount: number;
1059
+ rowGroupCount: number;
1060
+ }[];
1061
+ rowCount: number;
1062
+ splitCounts: Record<"train" | "validation" | "test" | "frozen_eval", number>;
1063
+ sourceReceiptRefs: string[];
1064
+ mappingHash: string;
1065
+ qualityReportHash: string;
1066
+ createdAt: string;
1067
+ } | null | undefined;
1068
+ };
1069
+ files: {
1070
+ path: string;
1071
+ contentHash: string;
1072
+ sizeBytes: number;
1073
+ base64: string;
1074
+ }[];
1075
+ contentHash: string;
1076
+ };
1077
+ publication: {
1078
+ tasksetId: string;
1079
+ release: {
1080
+ id: string;
1081
+ revision: number;
1082
+ contentHash: string;
1083
+ };
1084
+ packageHash: string;
1085
+ } | null;
1086
+ }>;
1087
+ validate(id: string, expectedRevision: number, signal?: AbortSignal): Promise<{
1088
+ teamId: string;
1089
+ datasetId: string;
1090
+ revision: number;
1091
+ workspaceHash: string;
1092
+ packageHash: string;
1093
+ release: {
1094
+ id: string;
1095
+ revision: number;
1096
+ contentHash: string;
1097
+ };
1098
+ }>;
1099
+ publish(id: string, input: z.input<typeof DatasetWorkspacePublishSchema>, signal?: AbortSignal): Promise<{
1100
+ schemaVersion: "openpond.datasetWorkspaceReceipt.v1";
1101
+ teamId: string;
1102
+ datasetId: string;
1103
+ revision: number;
1104
+ workspace: {
1105
+ schemaVersion: "openpond.tasksetDraftWorkspace.v1";
1106
+ draft: {
1107
+ schemaVersion: "openpond.tasksetDraft.v1";
1108
+ id: string;
1109
+ revision: number;
1110
+ profileId: string;
1111
+ modelScope: {
1112
+ modelId: string;
1113
+ expectedModelRevision: number;
1114
+ source?: {
1115
+ schemaVersion: "openpond.modelTasksetDraftPreparation.v1";
1116
+ draftId: string;
1117
+ requestHash: string;
1118
+ sourcePackageHash: string;
1119
+ sourceTasksetRef: {
1120
+ id: string;
1121
+ contentHash: string;
1122
+ revision: number;
1123
+ };
1124
+ tasksetId: string;
1125
+ tasksetRevision: number;
1126
+ lineage: {
1127
+ schemaVersion: "openpond.modelTasksetAuthoring.v1";
1128
+ owner: {
1129
+ scopeId: string;
1130
+ modelId: string;
1131
+ };
1132
+ root: {
1133
+ id: string;
1134
+ contentHash: string;
1135
+ revision: number;
1136
+ };
1137
+ parent: {
1138
+ id: string;
1139
+ contentHash: string;
1140
+ revision: number;
1141
+ };
1142
+ };
1143
+ authoringGraph?: "bound" | undefined;
1144
+ } | undefined;
1145
+ } | null;
1146
+ name: string;
1147
+ objective: string;
1148
+ purpose: "general" | "benchmark";
1149
+ benchmark: {
1150
+ schemaVersion: "openpond.tasksetBenchmark.v1";
1151
+ definitionId: string;
1152
+ releaseId: string;
1153
+ releaseHash: string;
1154
+ managedReleasePath: string;
1155
+ adaptationSplit: "train" | "validation" | "test" | "frozen_eval";
1156
+ evaluationSplit: "train" | "validation" | "test" | "frozen_eval";
1157
+ primaryMetric: "foreground_tokens" | "success_rate" | "latency_ms" | "cost_usd";
1158
+ qualityGate: "none" | "non_regression" | "all_pass";
1159
+ source: "builtin" | "imported";
1160
+ metadata: Record<string, unknown>;
1161
+ } | null;
1162
+ preferenceComparison: {
1163
+ schemaVersion: "openpond.tasksetPreferenceComparisonBinding.v1";
1164
+ releaseId: string;
1165
+ releaseHash: string;
1166
+ publishedAt: string;
1167
+ metadata: Record<string, unknown>;
1168
+ } | null;
1169
+ status: "draft" | "validating" | "needs_review" | "published";
1170
+ sourceRefs: ({
1171
+ id: string;
1172
+ profileId: string;
1173
+ title: string;
1174
+ sourceHash: string;
1175
+ occurredAt: string;
1176
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
1177
+ secretScanStatus: "blocked" | "pending" | "passed";
1178
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
1179
+ metadata: Record<string, unknown>;
1180
+ schemaVersion: "openpond.huggingFaceDatasetSource.v1";
1181
+ kind: "huggingface";
1182
+ repositoryId: string;
1183
+ repositoryUrl: string;
1184
+ revision: string;
1185
+ configuration: string;
1186
+ upstreamSplits: string[];
1187
+ gated: boolean;
1188
+ private: boolean;
1189
+ declaredLicense: string | null;
1190
+ sourceFileHashes: string[];
1191
+ } | {
1192
+ id: string;
1193
+ profileId: string;
1194
+ title: string;
1195
+ sourceHash: string;
1196
+ occurredAt: string;
1197
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
1198
+ secretScanStatus: "blocked" | "pending" | "passed";
1199
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
1200
+ metadata: Record<string, unknown>;
1201
+ schemaVersion: "openpond.uploadedFileDatasetSource.v1";
1202
+ kind: "uploaded_file";
1203
+ originalFileNames: string[];
1204
+ mediaTypes: string[];
1205
+ sourceFileHashes: string[];
1206
+ totalBytes: number;
1207
+ parserVersion: string;
1208
+ } | {
1209
+ id: string;
1210
+ profileId: string;
1211
+ title: string;
1212
+ sourceHash: string;
1213
+ occurredAt: string;
1214
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
1215
+ secretScanStatus: "blocked" | "pending" | "passed";
1216
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
1217
+ metadata: Record<string, unknown>;
1218
+ schemaVersion: "openpond.generatedDatasetSource.v1";
1219
+ kind: "generated";
1220
+ generatorId: string;
1221
+ generatorVersion: string;
1222
+ seed: number;
1223
+ generatorHash: string;
1224
+ } | {
1225
+ id: string;
1226
+ profileId: string;
1227
+ title: string;
1228
+ sourceHash: string;
1229
+ occurredAt: string;
1230
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
1231
+ secretScanStatus: "blocked" | "pending" | "passed";
1232
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
1233
+ metadata: Record<string, unknown>;
1234
+ schemaVersion: "openpond.learningBatchDatasetSource.v1";
1235
+ kind: "learning_batch";
1236
+ batch: {
1237
+ id: string;
1238
+ revision: number;
1239
+ contentHash: string;
1240
+ };
1241
+ taskDefinition: {
1242
+ id: string;
1243
+ revision: number;
1244
+ contentHash: string;
1245
+ };
1246
+ admittedBy: string;
1247
+ } | {
1248
+ schemaVersion: "openpond.trainingSource.v1";
1249
+ id: string;
1250
+ profileId: string;
1251
+ sessionId: string;
1252
+ turnIds: string[];
1253
+ workspaceId: string | null;
1254
+ sourceHash: string;
1255
+ clusterKey: string;
1256
+ title: string;
1257
+ occurredAt: string;
1258
+ consent: {
1259
+ status: "pending" | "granted" | "denied" | "revoked";
1260
+ scope: "metadata_only" | "selected_turns" | "full_session";
1261
+ grantedBy: string | null;
1262
+ grantedAt: string | null;
1263
+ purpose: "task_authoring_and_evaluation";
1264
+ };
1265
+ connectedAppIds: string[];
1266
+ secretScanStatus: "blocked" | "pending" | "passed";
1267
+ piiScanStatus: "blocked" | "pending" | "review" | "passed";
1268
+ licensingStatus: "blocked" | "pending" | "approved" | "review";
1269
+ metadata: Record<string, unknown>;
1270
+ })[];
1271
+ policy: {
1272
+ policyVisibleFields: string[];
1273
+ privilegedFields: string[];
1274
+ hiddenGraderRefs: string[];
1275
+ connectedAppScopes: string[];
1276
+ };
1277
+ environment: {
1278
+ protocolVersion: "openpond.taskEnvironment.v1";
1279
+ kind: "chat" | "agent" | "program" | "stateful_harness" | "work";
1280
+ entrypoint: string;
1281
+ stateful: boolean;
1282
+ deterministicSeeds: boolean;
1283
+ toolNames: string[];
1284
+ lifecycle: ("create" | "reset" | "step" | "grade" | "cleanup")[];
1285
+ defaultTimeoutMs: number;
1286
+ networkPolicy: "none" | "declared_read_only" | "declared_scoped";
1287
+ metadata: Record<string, unknown>;
1288
+ actionBindings?: {
1289
+ schemaVersion: "openpond.harnessActionBinding.v1";
1290
+ actionId: string;
1291
+ modelToolName: string;
1292
+ description: string;
1293
+ inputSchema: Record<string, unknown>;
1294
+ actionSchemaHash: string;
1295
+ agentRelease: {
1296
+ id: string;
1297
+ contentHash: string;
1298
+ };
1299
+ implementationHash: string;
1300
+ runtimeBindingId: string;
1301
+ capabilityReceiptHash: string;
1302
+ sideEffect: "read" | "write";
1303
+ studentVisible: boolean;
1304
+ timeoutMs: number;
1305
+ episodeArgumentBindings: {
1306
+ argument: string;
1307
+ source: "case_id";
1308
+ }[];
1309
+ }[] | undefined;
1310
+ resources?: {
1311
+ id: string;
1312
+ kind: "file" | "configuration" | "catalog" | "code_module";
1313
+ path: string;
1314
+ visibility: "privileged" | "policy_visible" | "policy_hidden";
1315
+ required: boolean;
1316
+ metadata: Record<string, unknown>;
1317
+ mediaType?: string | null | undefined;
1318
+ }[] | undefined;
1319
+ };
1320
+ output: {
1321
+ mode: "text" | "structured_json" | "artifacts";
1322
+ jsonSchema: Record<string, unknown> | null;
1323
+ renderer: {
1324
+ module: string;
1325
+ exportName: string;
1326
+ configRef: string | null;
1327
+ } | null;
1328
+ };
1329
+ capabilities: {
1330
+ schemaVersion: "openpond.tasksetCapabilities.v1";
1331
+ taskKind: "chat" | "single_agent" | "multi_agent" | "custom_program";
1332
+ supportedSignals: ("label" | "demonstration" | "reward" | "feedback" | "preference" | "correction")[];
1333
+ compatibleMethods: ("none" | "retrieval" | "sft" | "dpo" | "grpo" | "ppo" | "sdft" | "opd" | "opsd" | "sdpo")[];
1334
+ rewardKinds: ("none" | "exact" | "deterministic" | "model_judge" | "human")[];
1335
+ requiresTools: boolean;
1336
+ requiresState: boolean;
1337
+ requiresPrivilegedGrading: boolean;
1338
+ environmentPlacements: ("local" | "remote" | "colocated" | "provider_native")[];
1339
+ exportable: boolean;
1340
+ portabilityBlockers: string[];
1341
+ };
1342
+ metrics: {
1343
+ schemaVersion: "openpond.tasksetMetricPolicy.v1";
1344
+ primaryMetric: string;
1345
+ aggregation: "custom" | "mean_score" | "pass_rate" | "weighted_mean";
1346
+ missingReward: "zero" | "exclude";
1347
+ customAggregator: {
1348
+ module: string;
1349
+ exportName: string;
1350
+ contentHash: string;
1351
+ timeoutMs: number;
1352
+ networkPolicy: "none";
1353
+ } | null;
1354
+ taskWeights?: Record<string, number> | undefined;
1355
+ };
1356
+ review: {
1357
+ enabled: boolean;
1358
+ candidateCount: number;
1359
+ minimumSamples: number;
1360
+ allowTies: boolean;
1361
+ allowRejectAll: boolean;
1362
+ rubric: string;
1363
+ criteria: {
1364
+ id: string;
1365
+ label: string;
1366
+ description: string;
1367
+ weight: number;
1368
+ }[];
1369
+ };
1370
+ tasks: {
1371
+ schemaVersion: "openpond.taskData.v1";
1372
+ id: string;
1373
+ clusterKey: string;
1374
+ split: "train" | "validation" | "test" | "frozen_eval";
1375
+ input: Record<string, unknown>;
1376
+ expectedOutput: Record<string, unknown> | null;
1377
+ policyVisibleContext: Record<string, unknown>;
1378
+ privilegedContextRef: string | null;
1379
+ tags: string[];
1380
+ metadata: Record<string, unknown>;
1381
+ sourceRefs: string[];
1382
+ assets?: {
1383
+ id: string;
1384
+ sourceRefId: string;
1385
+ artifactRef: string;
1386
+ fileName: string;
1387
+ mediaType: string;
1388
+ sha256: string;
1389
+ sizeBytes: number;
1390
+ split: "train" | "validation" | "test" | "frozen_eval";
1391
+ metadata: Record<string, unknown>;
1392
+ }[] | undefined;
1393
+ resourceRefs?: string[] | undefined;
1394
+ requiredOutputs?: {
1395
+ path: string;
1396
+ mediaType: string;
1397
+ metadata: Record<string, unknown>;
1398
+ schemaRef?: string | null | undefined;
1399
+ maxBytes?: number | undefined;
1400
+ }[] | undefined;
1401
+ }[];
1402
+ graders: ({
1403
+ id: string;
1404
+ version: string;
1405
+ label: string;
1406
+ weight: number;
1407
+ hardGate: boolean;
1408
+ rewardEligible: boolean;
1409
+ privileged: boolean;
1410
+ metadata: Record<string, unknown>;
1411
+ kind: "file" | "content" | "test" | "schema" | "diff" | "runtime_event" | "state";
1412
+ config: Record<string, unknown>;
1413
+ } | {
1414
+ id: string;
1415
+ version: string;
1416
+ label: string;
1417
+ weight: number;
1418
+ hardGate: boolean;
1419
+ rewardEligible: boolean;
1420
+ privileged: boolean;
1421
+ metadata: Record<string, unknown>;
1422
+ kind: "model_judge";
1423
+ rubric: string;
1424
+ judge: {
1425
+ providerId: "openpond" | "codex" | "anthropic" | "openai" | "xai" | "google" | "openrouter" | "deepseek" | "zai" | "moonshot" | "together" | "groq" | "custom-openai-compatible";
1426
+ modelId: string;
1427
+ };
1428
+ calibrationFixtureRefs: string[];
1429
+ calibrationStatus: "failed" | "pending" | "passed";
1430
+ temperature: number;
1431
+ } | {
1432
+ id: string;
1433
+ version: string;
1434
+ label: string;
1435
+ weight: number;
1436
+ hardGate: boolean;
1437
+ rewardEligible: boolean;
1438
+ privileged: boolean;
1439
+ metadata: Record<string, unknown>;
1440
+ kind: "human";
1441
+ rubric: string;
1442
+ reviewerRole: string;
1443
+ } | {
1444
+ id: string;
1445
+ version: string;
1446
+ label: string;
1447
+ weight: number;
1448
+ hardGate: boolean;
1449
+ rewardEligible: boolean;
1450
+ privileged: boolean;
1451
+ metadata: Record<string, unknown>;
1452
+ kind: "custom_verifier";
1453
+ module: string;
1454
+ exportName: string;
1455
+ timeoutMs: number;
1456
+ networkPolicy: "none";
1457
+ runtime?: "isolated_javascript" | "sandbox_process" | undefined;
1458
+ })[];
1459
+ graderFixtures: {
1460
+ id: string;
1461
+ taskId: string;
1462
+ label: "positive" | "negative" | "boundary" | "adversarial" | "prompt_injection" | "infrastructure_failure";
1463
+ output: Record<string, unknown>;
1464
+ infrastructureError: string | null;
1465
+ expectedPassed: boolean;
1466
+ expectedRewardEligible: boolean;
1467
+ metadata: Record<string, unknown>;
1468
+ }[];
1469
+ learningSignals: {
1470
+ demonstrations: {
1471
+ id: string;
1472
+ taskId: string | null;
1473
+ sourceRefs: string[];
1474
+ artifactRef: string;
1475
+ approved: boolean;
1476
+ confidence: number;
1477
+ metadata: Record<string, unknown>;
1478
+ kind: "demonstration";
1479
+ prompt: string | null;
1480
+ response: string | null;
1481
+ }[];
1482
+ preferences: {
1483
+ id: string;
1484
+ taskId: string | null;
1485
+ sourceRefs: string[];
1486
+ artifactRef: string;
1487
+ approved: boolean;
1488
+ confidence: number;
1489
+ metadata: Record<string, unknown>;
1490
+ kind: "preference";
1491
+ prompt: string;
1492
+ chosen: string;
1493
+ rejected: string;
1494
+ rationale: string | null;
1495
+ }[];
1496
+ corrections: {
1497
+ id: string;
1498
+ taskId: string | null;
1499
+ sourceRefs: string[];
1500
+ artifactRef: string;
1501
+ approved: boolean;
1502
+ confidence: number;
1503
+ metadata: Record<string, unknown>;
1504
+ kind: "correction";
1505
+ original: string;
1506
+ corrected: string;
1507
+ rationale: string | null;
1508
+ }[];
1509
+ feedback: {
1510
+ id: string;
1511
+ taskId: string | null;
1512
+ sourceRefs: string[];
1513
+ artifactRef: string;
1514
+ approved: boolean;
1515
+ confidence: number;
1516
+ metadata: Record<string, unknown>;
1517
+ kind: "feedback";
1518
+ feedback: string;
1519
+ polarity: "neutral" | "positive" | "negative" | "mixed";
1520
+ }[];
1521
+ rewards: {
1522
+ id: string;
1523
+ taskId: string | null;
1524
+ sourceRefs: string[];
1525
+ artifactRef: string;
1526
+ approved: boolean;
1527
+ confidence: number;
1528
+ metadata: Record<string, unknown>;
1529
+ kind: "reward";
1530
+ task: string;
1531
+ rules: {
1532
+ id: string;
1533
+ points: number;
1534
+ condition: string;
1535
+ }[];
1536
+ otherwisePoints: number;
1537
+ executable: boolean;
1538
+ }[];
1539
+ labels: {
1540
+ id: string;
1541
+ taskId: string | null;
1542
+ sourceRefs: string[];
1543
+ artifactRef: string;
1544
+ approved: boolean;
1545
+ confidence: number;
1546
+ metadata: Record<string, unknown>;
1547
+ kind: "label";
1548
+ labelKind: "rubric";
1549
+ task: string;
1550
+ criteria: {
1551
+ id: string;
1552
+ label: string;
1553
+ description: string;
1554
+ }[];
1555
+ calibrationExamples: {
1556
+ positive: string;
1557
+ negative: string;
1558
+ boundary: string;
1559
+ };
1560
+ }[];
1561
+ };
1562
+ publishedTasksetRef: {
1563
+ id: string;
1564
+ revision: number;
1565
+ contentHash: string;
1566
+ } | null;
1567
+ createdAt: string;
1568
+ updatedAt: string;
1569
+ metadata: Record<string, unknown>;
1570
+ datasetArtifact?: {
1571
+ schemaVersion: "openpond.datasetArtifact.v1";
1572
+ id: string;
1573
+ tasksetId: string;
1574
+ tasksetRevision: number;
1575
+ contentHash: string;
1576
+ format: "parquet";
1577
+ schema: {
1578
+ schemaVersion: "openpond.datasetSemanticSchema.v1";
1579
+ fields: {
1580
+ name: string;
1581
+ semanticRole: "metadata" | "row_id" | "cluster_id" | "prompt" | "messages" | "demonstration" | "chosen" | "rejected" | "expected_output" | "privileged_context" | "reward" | "feedback" | "tag";
1582
+ logicalType: "string" | "boolean" | "messages" | "integer" | "float" | "json";
1583
+ nullable: boolean;
1584
+ policy: "metadata" | "visible" | "privileged";
1585
+ }[];
1586
+ schemaHash: string;
1587
+ };
1588
+ shards: {
1589
+ id: string;
1590
+ split: "train" | "validation" | "test" | "frozen_eval";
1591
+ path: string;
1592
+ contentHash: string;
1593
+ schemaHash: string;
1594
+ sizeBytes: number;
1595
+ rowCount: number;
1596
+ rowGroupCount: number;
1597
+ }[];
1598
+ rowCount: number;
1599
+ splitCounts: Record<"train" | "validation" | "test" | "frozen_eval", number>;
1600
+ sourceReceiptRefs: string[];
1601
+ mappingHash: string;
1602
+ qualityReportHash: string;
1603
+ createdAt: string;
1604
+ } | null | undefined;
1605
+ };
1606
+ files: {
1607
+ path: string;
1608
+ contentHash: string;
1609
+ sizeBytes: number;
1610
+ base64: string;
1611
+ }[];
1612
+ contentHash: string;
1613
+ };
1614
+ publication: {
1615
+ tasksetId: string;
1616
+ release: {
1617
+ id: string;
1618
+ revision: number;
1619
+ contentHash: string;
1620
+ };
1621
+ packageHash: string;
1622
+ } | null;
1623
+ }>;
1624
+ private readback;
1625
+ private request;
1626
+ }
1627
+ //# sourceMappingURL=dataset-workspace-client.d.ts.map