openpond-sdk 0.9.2 → 0.9.4

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 (44) hide show
  1. package/README.md +24 -0
  2. package/dist/chunk-62LWLACP.js +155 -0
  3. package/dist/chunk-62LWLACP.js.map +7 -0
  4. package/dist/chunk-EMANJDJR.js +393 -0
  5. package/dist/chunk-EMANJDJR.js.map +7 -0
  6. package/dist/{chunk-QABCKPW6.js → chunk-TQ5ASK7D.js} +4 -4
  7. package/dist/{chunk-IKTZ2CD4.js → chunk-XR6CLSCS.js} +85 -43
  8. package/dist/chunk-XR6CLSCS.js.map +7 -0
  9. package/dist/dataset-workspaces.js +3 -3
  10. package/dist/experiments.js +57 -0
  11. package/dist/experiments.js.map +7 -0
  12. package/dist/index.js +12 -3
  13. package/dist/index.js.map +2 -2
  14. package/dist/learning.js +3 -3
  15. package/dist/model-starter-attempts.js +3 -1
  16. package/dist/model-taskset-runs.js +21 -113
  17. package/dist/model-taskset-runs.js.map +4 -4
  18. package/dist/taskset-drafts.js +2 -2
  19. package/dist/taskset-packages.js +2 -2
  20. package/dist/types/packages/sdk/src/experiment-client.d.ts +2441 -0
  21. package/dist/types/packages/sdk/src/experiment-client.d.ts.map +1 -0
  22. package/dist/types/packages/sdk/src/experiment-contracts.d.ts +570 -0
  23. package/dist/types/packages/sdk/src/experiment-contracts.d.ts.map +1 -0
  24. package/dist/types/packages/sdk/src/experiment-field-mappings.d.ts +43 -0
  25. package/dist/types/packages/sdk/src/experiment-field-mappings.d.ts.map +1 -0
  26. package/dist/types/packages/sdk/src/experiment-grading-contracts.d.ts +79 -0
  27. package/dist/types/packages/sdk/src/experiment-grading-contracts.d.ts.map +1 -0
  28. package/dist/types/packages/sdk/src/experiment-scoring-contracts.d.ts +192 -0
  29. package/dist/types/packages/sdk/src/experiment-scoring-contracts.d.ts.map +1 -0
  30. package/dist/types/packages/sdk/src/experiments.d.ts +7 -0
  31. package/dist/types/packages/sdk/src/experiments.d.ts.map +1 -0
  32. package/dist/types/packages/sdk/src/harness-experiment-policy.d.ts +44 -0
  33. package/dist/types/packages/sdk/src/harness-experiment-policy.d.ts.map +1 -0
  34. package/dist/types/packages/sdk/src/index.d.ts +2 -0
  35. package/dist/types/packages/sdk/src/index.d.ts.map +1 -1
  36. package/dist/types/packages/sdk/src/model-starter-attempts.d.ts +123 -0
  37. package/dist/types/packages/sdk/src/model-starter-attempts.d.ts.map +1 -1
  38. package/dist/types/packages/sdk/src/model-taskset-runs-contracts.d.ts +159 -0
  39. package/dist/types/packages/sdk/src/model-taskset-runs-contracts.d.ts.map +1 -1
  40. package/dist/types/packages/sdk/src/model-taskset-runs.d.ts +129 -5
  41. package/dist/types/packages/sdk/src/model-taskset-runs.d.ts.map +1 -1
  42. package/package.json +6 -2
  43. package/dist/chunk-IKTZ2CD4.js.map +0 -7
  44. /package/dist/{chunk-QABCKPW6.js.map → chunk-TQ5ASK7D.js.map} +0 -0
@@ -1,4 +1,6 @@
1
1
  import { z } from "zod";
2
+ import { TasksetRunManifestSchema } from "@openpond/evals/metrics";
3
+ export { HarnessExperimentPolicySchema, type HarnessExperimentPolicy } from "./harness-experiment-policy.js";
2
4
  export declare const ModelTasksetRunPolicySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
3
5
  kind: z.ZodLiteral<"hosted_chat">;
4
6
  modelId: z.ZodString;
@@ -15,6 +17,44 @@ export declare const ModelTasksetRunPolicySchema: z.ZodDiscriminatedUnion<[z.Zod
15
17
  topP: z.ZodDefault<z.ZodNumber>;
16
18
  }, z.core.$strict>, z.ZodObject<{
17
19
  kind: z.ZodLiteral<"fixture">;
20
+ }, z.core.$strict>, z.ZodObject<{
21
+ kind: z.ZodLiteral<"hosted_harness">;
22
+ modelId: z.ZodString;
23
+ reasoningEffort: z.ZodOptional<z.ZodEnum<{
24
+ high: "high";
25
+ low: "low";
26
+ off: "off";
27
+ medium: "medium";
28
+ xhigh: "xhigh";
29
+ max: "max";
30
+ }>>;
31
+ profileRepositoryId: z.ZodString;
32
+ source: z.ZodObject<{
33
+ profileId: z.ZodString;
34
+ sourceRevision: z.ZodString;
35
+ harnessRelease: z.ZodObject<{
36
+ id: z.ZodString;
37
+ contentHash: z.ZodString;
38
+ }, z.core.$strict>;
39
+ catalogHash: z.ZodString;
40
+ definitionId: z.ZodString;
41
+ definitionHash: z.ZodString;
42
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
43
+ kind: z.ZodLiteral<"profile">;
44
+ }, z.core.$strict>, z.ZodObject<{
45
+ kind: z.ZodLiteral<"workflow">;
46
+ workflowId: z.ZodString;
47
+ }, z.core.$strict>, z.ZodObject<{
48
+ kind: z.ZodLiteral<"skill">;
49
+ skillPath: z.ZodString;
50
+ }, z.core.$strict>, z.ZodObject<{
51
+ kind: z.ZodLiteral<"agent_action">;
52
+ actionId: z.ZodString;
53
+ }, z.core.$strict>], "kind">;
54
+ environmentHash: z.ZodString;
55
+ }, z.core.$strict>;
56
+ modelConfigurationHash: z.ZodString;
57
+ packageHash: z.ZodString;
18
58
  }, z.core.$strict>], "kind">;
19
59
  export declare const ModelTasksetRunRequestSchema: z.ZodObject<{
20
60
  schemaVersion: z.ZodLiteral<"openpond.modelTasksetRunRequest.v1">;
@@ -49,6 +89,44 @@ export declare const ModelTasksetRunRequestSchema: z.ZodObject<{
49
89
  topP: z.ZodDefault<z.ZodNumber>;
50
90
  }, z.core.$strict>, z.ZodObject<{
51
91
  kind: z.ZodLiteral<"fixture">;
92
+ }, z.core.$strict>, z.ZodObject<{
93
+ kind: z.ZodLiteral<"hosted_harness">;
94
+ modelId: z.ZodString;
95
+ reasoningEffort: z.ZodOptional<z.ZodEnum<{
96
+ high: "high";
97
+ low: "low";
98
+ off: "off";
99
+ medium: "medium";
100
+ xhigh: "xhigh";
101
+ max: "max";
102
+ }>>;
103
+ profileRepositoryId: z.ZodString;
104
+ source: z.ZodObject<{
105
+ profileId: z.ZodString;
106
+ sourceRevision: z.ZodString;
107
+ harnessRelease: z.ZodObject<{
108
+ id: z.ZodString;
109
+ contentHash: z.ZodString;
110
+ }, z.core.$strict>;
111
+ catalogHash: z.ZodString;
112
+ definitionId: z.ZodString;
113
+ definitionHash: z.ZodString;
114
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
115
+ kind: z.ZodLiteral<"profile">;
116
+ }, z.core.$strict>, z.ZodObject<{
117
+ kind: z.ZodLiteral<"workflow">;
118
+ workflowId: z.ZodString;
119
+ }, z.core.$strict>, z.ZodObject<{
120
+ kind: z.ZodLiteral<"skill">;
121
+ skillPath: z.ZodString;
122
+ }, z.core.$strict>, z.ZodObject<{
123
+ kind: z.ZodLiteral<"agent_action">;
124
+ actionId: z.ZodString;
125
+ }, z.core.$strict>], "kind">;
126
+ environmentHash: z.ZodString;
127
+ }, z.core.$strict>;
128
+ modelConfigurationHash: z.ZodString;
129
+ packageHash: z.ZodString;
52
130
  }, z.core.$strict>], "kind">;
53
131
  population: z.ZodArray<z.ZodObject<{
54
132
  receiptId: z.ZodString;
@@ -80,6 +158,7 @@ export declare const ModelTasksetRunSummarySchema: z.ZodObject<{
80
158
  policyKind: z.ZodEnum<{
81
159
  fixture: "fixture";
82
160
  hosted_chat: "hosted_chat";
161
+ hosted_harness: "hosted_harness";
83
162
  }>;
84
163
  manifestHash: z.ZodString;
85
164
  status: z.ZodEnum<{
@@ -134,6 +213,7 @@ export declare const ModelTasksetRunDetailsSchema: z.ZodObject<{
134
213
  policyKind: z.ZodEnum<{
135
214
  fixture: "fixture";
136
215
  hosted_chat: "hosted_chat";
216
+ hosted_harness: "hosted_harness";
137
217
  }>;
138
218
  manifestHash: z.ZodString;
139
219
  status: z.ZodEnum<{
@@ -197,6 +277,44 @@ export declare const ModelTasksetRunDetailsSchema: z.ZodObject<{
197
277
  topP: z.ZodDefault<z.ZodNumber>;
198
278
  }, z.core.$strict>, z.ZodObject<{
199
279
  kind: z.ZodLiteral<"fixture">;
280
+ }, z.core.$strict>, z.ZodObject<{
281
+ kind: z.ZodLiteral<"hosted_harness">;
282
+ modelId: z.ZodString;
283
+ reasoningEffort: z.ZodOptional<z.ZodEnum<{
284
+ high: "high";
285
+ low: "low";
286
+ off: "off";
287
+ medium: "medium";
288
+ xhigh: "xhigh";
289
+ max: "max";
290
+ }>>;
291
+ profileRepositoryId: z.ZodString;
292
+ source: z.ZodObject<{
293
+ profileId: z.ZodString;
294
+ sourceRevision: z.ZodString;
295
+ harnessRelease: z.ZodObject<{
296
+ id: z.ZodString;
297
+ contentHash: z.ZodString;
298
+ }, z.core.$strict>;
299
+ catalogHash: z.ZodString;
300
+ definitionId: z.ZodString;
301
+ definitionHash: z.ZodString;
302
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
303
+ kind: z.ZodLiteral<"profile">;
304
+ }, z.core.$strict>, z.ZodObject<{
305
+ kind: z.ZodLiteral<"workflow">;
306
+ workflowId: z.ZodString;
307
+ }, z.core.$strict>, z.ZodObject<{
308
+ kind: z.ZodLiteral<"skill">;
309
+ skillPath: z.ZodString;
310
+ }, z.core.$strict>, z.ZodObject<{
311
+ kind: z.ZodLiteral<"agent_action">;
312
+ actionId: z.ZodString;
313
+ }, z.core.$strict>], "kind">;
314
+ environmentHash: z.ZodString;
315
+ }, z.core.$strict>;
316
+ modelConfigurationHash: z.ZodString;
317
+ packageHash: z.ZodString;
200
318
  }, z.core.$strict>], "kind">;
201
319
  population: z.ZodArray<z.ZodObject<{
202
320
  receiptId: z.ZodString;
@@ -356,6 +474,7 @@ export declare const ModelTasksetRunPageSchema: z.ZodObject<{
356
474
  policyKind: z.ZodEnum<{
357
475
  fixture: "fixture";
358
476
  hosted_chat: "hosted_chat";
477
+ hosted_harness: "hosted_harness";
359
478
  }>;
360
479
  manifestHash: z.ZodString;
361
480
  status: z.ZodEnum<{
@@ -413,6 +532,7 @@ export declare const ModelTasksetRunResultSchema: z.ZodObject<{
413
532
  policyKind: z.ZodEnum<{
414
533
  fixture: "fixture";
415
534
  hosted_chat: "hosted_chat";
535
+ hosted_harness: "hosted_harness";
416
536
  }>;
417
537
  manifestHash: z.ZodString;
418
538
  status: z.ZodEnum<{
@@ -476,6 +596,44 @@ export declare const ModelTasksetRunResultSchema: z.ZodObject<{
476
596
  topP: z.ZodDefault<z.ZodNumber>;
477
597
  }, z.core.$strict>, z.ZodObject<{
478
598
  kind: z.ZodLiteral<"fixture">;
599
+ }, z.core.$strict>, z.ZodObject<{
600
+ kind: z.ZodLiteral<"hosted_harness">;
601
+ modelId: z.ZodString;
602
+ reasoningEffort: z.ZodOptional<z.ZodEnum<{
603
+ high: "high";
604
+ low: "low";
605
+ off: "off";
606
+ medium: "medium";
607
+ xhigh: "xhigh";
608
+ max: "max";
609
+ }>>;
610
+ profileRepositoryId: z.ZodString;
611
+ source: z.ZodObject<{
612
+ profileId: z.ZodString;
613
+ sourceRevision: z.ZodString;
614
+ harnessRelease: z.ZodObject<{
615
+ id: z.ZodString;
616
+ contentHash: z.ZodString;
617
+ }, z.core.$strict>;
618
+ catalogHash: z.ZodString;
619
+ definitionId: z.ZodString;
620
+ definitionHash: z.ZodString;
621
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
622
+ kind: z.ZodLiteral<"profile">;
623
+ }, z.core.$strict>, z.ZodObject<{
624
+ kind: z.ZodLiteral<"workflow">;
625
+ workflowId: z.ZodString;
626
+ }, z.core.$strict>, z.ZodObject<{
627
+ kind: z.ZodLiteral<"skill">;
628
+ skillPath: z.ZodString;
629
+ }, z.core.$strict>, z.ZodObject<{
630
+ kind: z.ZodLiteral<"agent_action">;
631
+ actionId: z.ZodString;
632
+ }, z.core.$strict>], "kind">;
633
+ environmentHash: z.ZodString;
634
+ }, z.core.$strict>;
635
+ modelConfigurationHash: z.ZodString;
636
+ packageHash: z.ZodString;
479
637
  }, z.core.$strict>], "kind">;
480
638
  population: z.ZodArray<z.ZodObject<{
481
639
  receiptId: z.ZodString;
@@ -691,6 +849,7 @@ export declare const ModelTasksetRunResultSchema: z.ZodObject<{
691
849
  contentHash: z.ZodString;
692
850
  }, z.core.$strict>;
693
851
  export type ModelTasksetRunResult = z.infer<typeof ModelTasksetRunResultSchema>;
852
+ export declare function verifyHarnessExperimentManifest(request: ModelTasksetRunRequest, manifest: z.infer<typeof TasksetRunManifestSchema>): void;
694
853
  /** Server artifact ownership authenticates the producer. These checks bind all
695
854
  * portable projections to the admitted request, population and policy. */
696
855
  export declare function verifyModelTasksetRunDetails(value: unknown): Promise<ModelTasksetRunDetails>;
@@ -1 +1 @@
1
- {"version":3,"file":"model-taskset-runs-contracts.d.ts","sourceRoot":"","sources":["../../../../../src/model-taskset-runs-contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;4BAGtC,CAAC;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAWvC,CAAC;AACH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAqBvC,CAAC;AACH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAK9B,CAAC;AACZ,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,eAAO,MAAM,8BAA8B;;;;;kBAA+M,CAAC;AAC3P,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAgH,CAAC;AACvJ,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAM7B,CAAC;AACZ,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF;0EAC0E;AAC1E,wBAAsB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAqBlG;AAED,wBAAsB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAkBhG"}
1
+ {"version":3,"file":"model-taskset-runs-contracts.d.ts","sourceRoot":"","sources":["../../../../../src/model-taskset-runs-contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,wBAAwB,EAAyG,MAAM,yBAAyB,CAAC;AAM1K,OAAO,EAAE,6BAA6B,EAAE,KAAK,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAI7G,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAItC,CAAC;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAgBvC,CAAC;AACH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAqBvC,CAAC;AACH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAK9B,CAAC;AACZ,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,eAAO,MAAM,8BAA8B;;;;;kBAA+M,CAAC;AAC3P,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAgH,CAAC;AACvJ,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAM7B,CAAC;AACZ,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,QAgBlI;AAED;0EAC0E;AAC1E,wBAAsB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAwBlG;AAED,wBAAsB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAkBhG"}
@@ -29,7 +29,7 @@ export declare class OpenPondModelTasksetRunsClient {
29
29
  contentHash: string;
30
30
  revision: number;
31
31
  };
32
- policyKind: "fixture" | "hosted_chat";
32
+ policyKind: "fixture" | "hosted_chat" | "hosted_harness";
33
33
  manifestHash: string;
34
34
  status: "failed" | "completed" | "cancelled" | "running" | "cancelling" | "queued";
35
35
  totalCount: number;
@@ -79,6 +79,37 @@ export declare class OpenPondModelTasksetRunsClient {
79
79
  role: "user" | "system" | "assistant";
80
80
  content: string;
81
81
  }[] | undefined;
82
+ } | {
83
+ kind: "hosted_harness";
84
+ modelId: string;
85
+ profileRepositoryId: string;
86
+ source: {
87
+ profileId: string;
88
+ sourceRevision: string;
89
+ harnessRelease: {
90
+ id: string;
91
+ contentHash: string;
92
+ };
93
+ catalogHash: string;
94
+ definitionId: string;
95
+ definitionHash: string;
96
+ target: {
97
+ kind: "profile";
98
+ } | {
99
+ kind: "workflow";
100
+ workflowId: string;
101
+ } | {
102
+ kind: "skill";
103
+ skillPath: string;
104
+ } | {
105
+ kind: "agent_action";
106
+ actionId: string;
107
+ };
108
+ environmentHash: string;
109
+ };
110
+ modelConfigurationHash: string;
111
+ packageHash: string;
112
+ reasoningEffort?: "high" | "low" | "off" | "medium" | "xhigh" | "max" | undefined;
82
113
  } | {
83
114
  kind: "fixture";
84
115
  };
@@ -219,7 +250,7 @@ export declare class OpenPondModelTasksetRunsClient {
219
250
  contentHash: string;
220
251
  revision: number;
221
252
  };
222
- policyKind: "fixture" | "hosted_chat";
253
+ policyKind: "fixture" | "hosted_chat" | "hosted_harness";
223
254
  manifestHash: string;
224
255
  status: "failed" | "completed" | "cancelled" | "running" | "cancelling" | "queued";
225
256
  totalCount: number;
@@ -269,6 +300,37 @@ export declare class OpenPondModelTasksetRunsClient {
269
300
  role: "user" | "system" | "assistant";
270
301
  content: string;
271
302
  }[] | undefined;
303
+ } | {
304
+ kind: "hosted_harness";
305
+ modelId: string;
306
+ profileRepositoryId: string;
307
+ source: {
308
+ profileId: string;
309
+ sourceRevision: string;
310
+ harnessRelease: {
311
+ id: string;
312
+ contentHash: string;
313
+ };
314
+ catalogHash: string;
315
+ definitionId: string;
316
+ definitionHash: string;
317
+ target: {
318
+ kind: "profile";
319
+ } | {
320
+ kind: "workflow";
321
+ workflowId: string;
322
+ } | {
323
+ kind: "skill";
324
+ skillPath: string;
325
+ } | {
326
+ kind: "agent_action";
327
+ actionId: string;
328
+ };
329
+ environmentHash: string;
330
+ };
331
+ modelConfigurationHash: string;
332
+ packageHash: string;
333
+ reasoningEffort?: "high" | "low" | "off" | "medium" | "xhigh" | "max" | undefined;
272
334
  } | {
273
335
  kind: "fixture";
274
336
  };
@@ -409,7 +471,7 @@ export declare class OpenPondModelTasksetRunsClient {
409
471
  contentHash: string;
410
472
  revision: number;
411
473
  };
412
- policyKind: "fixture" | "hosted_chat";
474
+ policyKind: "fixture" | "hosted_chat" | "hosted_harness";
413
475
  manifestHash: string;
414
476
  status: "failed" | "completed" | "cancelled" | "running" | "cancelling" | "queued";
415
477
  totalCount: number;
@@ -459,6 +521,37 @@ export declare class OpenPondModelTasksetRunsClient {
459
521
  role: "user" | "system" | "assistant";
460
522
  content: string;
461
523
  }[] | undefined;
524
+ } | {
525
+ kind: "hosted_harness";
526
+ modelId: string;
527
+ profileRepositoryId: string;
528
+ source: {
529
+ profileId: string;
530
+ sourceRevision: string;
531
+ harnessRelease: {
532
+ id: string;
533
+ contentHash: string;
534
+ };
535
+ catalogHash: string;
536
+ definitionId: string;
537
+ definitionHash: string;
538
+ target: {
539
+ kind: "profile";
540
+ } | {
541
+ kind: "workflow";
542
+ workflowId: string;
543
+ } | {
544
+ kind: "skill";
545
+ skillPath: string;
546
+ } | {
547
+ kind: "agent_action";
548
+ actionId: string;
549
+ };
550
+ environmentHash: string;
551
+ };
552
+ modelConfigurationHash: string;
553
+ packageHash: string;
554
+ reasoningEffort?: "high" | "low" | "off" | "medium" | "xhigh" | "max" | undefined;
462
555
  } | {
463
556
  kind: "fixture";
464
557
  };
@@ -601,7 +694,7 @@ export declare class OpenPondModelTasksetRunsClient {
601
694
  contentHash: string;
602
695
  revision: number;
603
696
  };
604
- policyKind: "fixture" | "hosted_chat";
697
+ policyKind: "fixture" | "hosted_chat" | "hosted_harness";
605
698
  manifestHash: string;
606
699
  status: "failed" | "completed" | "cancelled" | "running" | "cancelling" | "queued";
607
700
  totalCount: number;
@@ -651,6 +744,37 @@ export declare class OpenPondModelTasksetRunsClient {
651
744
  role: "user" | "system" | "assistant";
652
745
  content: string;
653
746
  }[] | undefined;
747
+ } | {
748
+ kind: "hosted_harness";
749
+ modelId: string;
750
+ profileRepositoryId: string;
751
+ source: {
752
+ profileId: string;
753
+ sourceRevision: string;
754
+ harnessRelease: {
755
+ id: string;
756
+ contentHash: string;
757
+ };
758
+ catalogHash: string;
759
+ definitionId: string;
760
+ definitionHash: string;
761
+ target: {
762
+ kind: "profile";
763
+ } | {
764
+ kind: "workflow";
765
+ workflowId: string;
766
+ } | {
767
+ kind: "skill";
768
+ skillPath: string;
769
+ } | {
770
+ kind: "agent_action";
771
+ actionId: string;
772
+ };
773
+ environmentHash: string;
774
+ };
775
+ modelConfigurationHash: string;
776
+ packageHash: string;
777
+ reasoningEffort?: "high" | "low" | "off" | "medium" | "xhigh" | "max" | undefined;
654
778
  } | {
655
779
  kind: "fixture";
656
780
  };
@@ -861,7 +985,7 @@ export declare class OpenPondModelTasksetRunsClient {
861
985
  contentHash: string;
862
986
  revision: number;
863
987
  };
864
- policyKind: "fixture" | "hosted_chat";
988
+ policyKind: "fixture" | "hosted_chat" | "hosted_harness";
865
989
  manifestHash: string;
866
990
  status: "failed" | "completed" | "cancelled" | "running" | "cancelling" | "queued";
867
991
  totalCount: number;
@@ -1 +1 @@
1
- {"version":3,"file":"model-taskset-runs.d.ts","sourceRoot":"","sources":["../../../../../src/model-taskset-runs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,4BAA4B,EAAE,8BAA8B,EAAqH,MAAM,mCAAmC,CAAC;AACpO,cAAc,mCAAmC,CAAC;AAGlD,qBAAa,4BAA6B,SAAQ,KAAK;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM;gBAArC,MAAM,EAAE,MAAM,EAAW,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAC5E;AAED,qBAAa,8BAA8B;;gBAE7B,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAA;KAAE;IAKnG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAQlG,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKtD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKzD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKzD,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BzG"}
1
+ {"version":3,"file":"model-taskset-runs.d.ts","sourceRoot":"","sources":["../../../../../src/model-taskset-runs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,4BAA4B,EAAE,8BAA8B,EAAqH,MAAM,mCAAmC,CAAC;AACpO,cAAc,mCAAmC,CAAC;AAGlD,qBAAa,4BAA6B,SAAQ,KAAK;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM;gBAArC,MAAM,EAAE,MAAM,EAAW,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAC5E;AAED,qBAAa,8BAA8B;;gBAE7B,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAA;KAAE;IAKnG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAQlG,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKtD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKzD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAKzD,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BzG"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openpond-sdk",
3
- "version": "0.9.2",
3
+ "version": "0.9.4",
4
4
  "description": "Server-side TypeScript SDK for OpenPond sandboxes and agentic work",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -106,6 +106,10 @@
106
106
  "./dataset-workspaces": {
107
107
  "types": "./dist/types/packages/sdk/src/dataset-workspaces.d.ts",
108
108
  "import": "./dist/dataset-workspaces.js"
109
+ },
110
+ "./experiments": {
111
+ "types": "./dist/types/packages/sdk/src/experiments.d.ts",
112
+ "import": "./dist/experiments.js"
109
113
  }
110
114
  },
111
115
  "publishConfig": {
@@ -147,7 +151,7 @@
147
151
  "vitest": "4.1.10"
148
152
  },
149
153
  "dependencies": {
150
- "@openpond/evals": "^0.11.10",
154
+ "@openpond/evals": "^0.11.13",
151
155
  "@openpond/harness": "^0.4.2",
152
156
  "yaml": "^2.9.0",
153
157
  "esbuild": "0.28.1",
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/model-starter-attempts.ts", "../src/evaluation-project-context.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 { 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: z.enum([\"train\", \"validation\", \"frozen_eval\"]), 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 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.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"],
5
- "mappings": "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",
6
- "names": ["z", "z"]
7
- }