openpond-sdk 0.9.5 → 0.9.7

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 (80) hide show
  1. package/dist/{chunk-EMANJDJR.js → chunk-CNGJF6AM.js} +61 -198
  2. package/dist/chunk-CNGJF6AM.js.map +7 -0
  3. package/dist/chunk-SR55WVPK.js +158 -0
  4. package/dist/chunk-SR55WVPK.js.map +7 -0
  5. package/dist/dataset-marketplace.js +216 -0
  6. package/dist/dataset-marketplace.js.map +7 -0
  7. package/dist/dataset-workspaces.js +116 -3
  8. package/dist/dataset-workspaces.js.map +4 -4
  9. package/dist/experiments.js +42 -8
  10. package/dist/experiments.js.map +3 -3
  11. package/dist/index.js +9 -8
  12. package/dist/index.js.map +1 -1
  13. package/dist/learning.js +55 -0
  14. package/dist/learning.js.map +4 -4
  15. package/dist/training-projects.js +4 -1
  16. package/dist/training-projects.js.map +2 -2
  17. package/dist/types/packages/sdk/src/dataset-marketplace.d.ts +945 -0
  18. package/dist/types/packages/sdk/src/dataset-marketplace.d.ts.map +1 -0
  19. package/dist/types/packages/sdk/src/dataset-population.d.ts +97 -0
  20. package/dist/types/packages/sdk/src/dataset-population.d.ts.map +1 -0
  21. package/dist/types/packages/sdk/src/dataset-workspace-client.d.ts +1168 -88
  22. package/dist/types/packages/sdk/src/dataset-workspace-client.d.ts.map +1 -1
  23. package/dist/types/packages/sdk/src/dataset-workspace-contracts.d.ts +118 -84
  24. package/dist/types/packages/sdk/src/dataset-workspace-contracts.d.ts.map +1 -1
  25. package/dist/types/packages/sdk/src/dataset-workspaces.d.ts +1 -0
  26. package/dist/types/packages/sdk/src/dataset-workspaces.d.ts.map +1 -1
  27. package/dist/types/packages/sdk/src/evaluation-project-context.d.ts +1 -1
  28. package/dist/types/packages/sdk/src/experiment-client.d.ts +23 -23
  29. package/dist/types/packages/sdk/src/experiment-contracts.d.ts +3 -3
  30. package/dist/types/packages/sdk/src/experiment-grading-contracts.d.ts +1 -1
  31. package/dist/types/packages/sdk/src/experiment-inspection.d.ts +50 -0
  32. package/dist/types/packages/sdk/src/experiment-inspection.d.ts.map +1 -0
  33. package/dist/types/packages/sdk/src/experiment-scoring-contracts.d.ts +3 -3
  34. package/dist/types/packages/sdk/src/experiments.d.ts +1 -0
  35. package/dist/types/packages/sdk/src/experiments.d.ts.map +1 -1
  36. package/dist/types/packages/sdk/src/grader-inspection.d.ts +568 -0
  37. package/dist/types/packages/sdk/src/grader-inspection.d.ts.map +1 -0
  38. package/dist/types/packages/sdk/src/learning-batch-assets.d.ts +2 -2
  39. package/dist/types/packages/sdk/src/learning-client.d.ts +1 -1
  40. package/dist/types/packages/sdk/src/learning.d.ts +1 -0
  41. package/dist/types/packages/sdk/src/learning.d.ts.map +1 -1
  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 +7 -7
  44. package/dist/types/packages/sdk/src/model-batch-review.d.ts +23 -23
  45. package/dist/types/packages/sdk/src/model-learning-policy.d.ts +3 -3
  46. package/dist/types/packages/sdk/src/model-projects.d.ts +27 -27
  47. package/dist/types/packages/sdk/src/model-starter-attempts.d.ts +47 -47
  48. package/dist/types/packages/sdk/src/model-starter-catalog.d.ts +15 -15
  49. package/dist/types/packages/sdk/src/model-starter-execution.d.ts +4 -4
  50. package/dist/types/packages/sdk/src/model-starters.d.ts +18 -18
  51. package/dist/types/packages/sdk/src/model-taskset-runs-contracts.d.ts +16 -16
  52. package/dist/types/packages/sdk/src/model-taskset-runs.d.ts +15 -15
  53. package/dist/types/packages/sdk/src/task-inventory.d.ts +4 -4
  54. package/dist/types/packages/sdk/src/taskset-authored-contracts.d.ts +46 -46
  55. package/dist/types/packages/sdk/src/taskset-authored-files.d.ts +30 -30
  56. package/dist/types/packages/sdk/src/taskset-authored-portable-release.d.ts +2 -2
  57. package/dist/types/packages/sdk/src/taskset-draft-api-contracts.d.ts +84 -84
  58. package/dist/types/packages/sdk/src/taskset-draft-client.d.ts +176 -176
  59. package/dist/types/packages/sdk/src/taskset-draft-core.d.ts +46 -46
  60. package/dist/types/packages/sdk/src/taskset-draft-dataset-artifacts.d.ts +25 -25
  61. package/dist/types/packages/sdk/src/taskset-draft-dataset-sources.d.ts +41 -41
  62. package/dist/types/packages/sdk/src/taskset-draft-document.d.ts +45 -45
  63. package/dist/types/packages/sdk/src/taskset-draft-package-compiler.d.ts +56 -56
  64. package/dist/types/packages/sdk/src/taskset-draft-source.d.ts +71 -71
  65. package/dist/types/packages/sdk/src/taskset-draft-workspace.d.ts +84 -84
  66. package/dist/types/packages/sdk/src/taskset-package-client.d.ts +1733 -1733
  67. package/dist/types/packages/sdk/src/taskset-package-contracts.d.ts +1083 -1083
  68. package/dist/types/packages/sdk/src/taskset-package-grader-projection.d.ts +2 -2
  69. package/dist/types/packages/sdk/src/taskset-package-learning.d.ts +18 -18
  70. package/dist/types/packages/sdk/src/taskset-package-projection.d.ts +59 -59
  71. package/dist/types/packages/sdk/src/training-acceptance.d.ts +4 -4
  72. package/dist/types/packages/sdk/src/training-harness-sources.d.ts +1 -1
  73. package/dist/types/packages/sdk/src/training-learning-batch.d.ts +68 -68
  74. package/dist/types/packages/sdk/src/training-project-client.d.ts +16 -12
  75. package/dist/types/packages/sdk/src/training-project-client.d.ts.map +1 -1
  76. package/dist/types/packages/sdk/src/training-project-contracts.d.ts +33 -21
  77. package/dist/types/packages/sdk/src/training-project-contracts.d.ts.map +1 -1
  78. package/dist/types/packages/sdk/src/training.d.ts +24 -24
  79. package/package.json +5 -1
  80. package/dist/chunk-EMANJDJR.js.map +0 -7
@@ -1,3 +1,10 @@
1
+ import {
2
+ ExperimentScoringPassSchema,
3
+ ExperimentScoringRequestSchema,
4
+ OpenPondExperimentError,
5
+ OpenPondExperimentsClient,
6
+ verifyExperimentScoringPass
7
+ } from "./chunk-CNGJF6AM.js";
1
8
  import {
2
9
  ExperimentDefinitionRefSchema,
3
10
  ExperimentDefinitionSchema,
@@ -7,19 +14,14 @@ import {
7
14
  ExperimentGraderPinSchema,
8
15
  ExperimentGraderSelectionSchema,
9
16
  ExperimentListQuerySchema,
10
- ExperimentScoringPassSchema,
11
- ExperimentScoringRequestSchema,
12
- OpenPondExperimentError,
13
- OpenPondExperimentsClient,
14
17
  PrepareHarnessExperimentSchema,
15
18
  PreparedHarnessExperimentSchema,
16
19
  SaveExperimentSchema,
17
20
  StartExperimentSchema,
18
21
  experimentDefinitionRef,
19
22
  mapExperimentGradingFields,
20
- verifyExperimentDefinition,
21
- verifyExperimentScoringPass
22
- } from "./chunk-EMANJDJR.js";
23
+ verifyExperimentDefinition
24
+ } from "./chunk-SR55WVPK.js";
23
25
  import {
24
26
  HarnessExperimentPolicySchema
25
27
  } from "./chunk-62LWLACP.js";
@@ -29,9 +31,40 @@ import {
29
31
  import "./chunk-TCHAWJMB.js";
30
32
  import "./chunk-3KXDH6OB.js";
31
33
  import "./chunk-Y4NGWGTA.js";
32
- import "./chunk-QUOW6URQ.js";
34
+ import {
35
+ contentHash
36
+ } from "./chunk-QUOW6URQ.js";
37
+
38
+ // src/experiment-inspection.ts
39
+ import { z } from "zod";
40
+ var Id = z.string().trim().min(1).max(500);
41
+ var Hash = z.string().regex(/^[a-f0-9]{64}$/);
42
+ var Content = z.object({ schemaVersion: z.literal("openpond.experimentCaseInspection.v1"), teamId: Id, executionId: Id, manifestHash: Hash, receiptId: Id, taskId: Id, seed: z.string().min(1), input: z.record(z.string(), z.unknown()).nullable(), output: z.unknown().nullable(), error: z.string().nullable(), events: z.array(z.record(z.string(), z.unknown())).max(25), nextEventCursor: Id.nullable(), eventCount: z.number().int().nonnegative() }).strict();
43
+ var ExperimentCaseInspectionSchema = Content.extend({ contentHash: Hash }).strict();
44
+ var OpenPondExperimentInspectionClient = class {
45
+ constructor(options) {
46
+ this.options = options;
47
+ const url = new URL(options.baseUrl);
48
+ if (!["http:", "https:"].includes(url.protocol) || url.username || url.password || url.search || url.hash || !options.apiKey.trim() || !options.teamId.trim()) throw new Error("A clean API origin and workspace credentials are required.");
49
+ this.baseUrl = url.toString().replace(/\/+$/, "");
50
+ }
51
+ options;
52
+ baseUrl;
53
+ /** Retained, policy-facing evidence only. Reading a page never dispatches. */
54
+ async case(executionId, receiptId, options = {}) {
55
+ const params = new URLSearchParams(options.afterId ? { afterId: Id.parse(options.afterId) } : {});
56
+ const response = await (this.options.fetch ?? fetch)(`${this.baseUrl}/v1/experiments/executions/${encodeURIComponent(Id.parse(executionId))}/cases/${encodeURIComponent(Id.parse(receiptId))}?${params}`, { signal: options.signal, redirect: "error", headers: { Authorization: `Bearer ${this.options.apiKey}`, "X-OpenPond-Team-Id": this.options.teamId, Accept: "application/json" } });
57
+ const value = await response.json();
58
+ if (!response.ok) throw new Error(z.object({ message: z.string() }).parse(value).message);
59
+ const result = ExperimentCaseInspectionSchema.parse(value);
60
+ const { contentHash: actual, ...content } = result;
61
+ if (contentHash(content) !== actual || result.teamId !== this.options.teamId || result.executionId !== executionId || result.receiptId !== receiptId || options.manifestHash && result.manifestHash !== options.manifestHash || result.events.length > result.eventCount) throw new Error("Case inspection differs from its requested workspace, execution or retained content.");
62
+ return result;
63
+ }
64
+ };
33
65
  export {
34
66
  ExperimentAttemptGradeSchema,
67
+ ExperimentCaseInspectionSchema,
35
68
  ExperimentDefinitionRefSchema,
36
69
  ExperimentDefinitionSchema,
37
70
  ExperimentExecutionContextSchema,
@@ -44,6 +77,7 @@ export {
44
77
  ExperimentScoringRequestSchema,
45
78
  HarnessExperimentPolicySchema,
46
79
  OpenPondExperimentError,
80
+ OpenPondExperimentInspectionClient,
47
81
  OpenPondExperimentsClient,
48
82
  PrepareHarnessExperimentSchema,
49
83
  PreparedHarnessExperimentSchema,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": [],
4
- "sourcesContent": [],
5
- "mappings": "",
3
+ "sources": ["../src/experiment-inspection.ts"],
4
+ "sourcesContent": ["import { z } from \"zod\";\nimport { contentHash } from \"@openpond/harness\";\nconst Id = z.string().trim().min(1).max(500);\nconst Hash = z.string().regex(/^[a-f0-9]{64}$/);\nconst Content = z.object({ schemaVersion: z.literal(\"openpond.experimentCaseInspection.v1\"), teamId: Id, executionId: Id, manifestHash: Hash, receiptId: Id, taskId: Id, seed: z.string().min(1), input: z.record(z.string(), z.unknown()).nullable(), output: z.unknown().nullable(), error: z.string().nullable(), events: z.array(z.record(z.string(), z.unknown())).max(25), nextEventCursor: Id.nullable(), eventCount: z.number().int().nonnegative() }).strict();\nexport const ExperimentCaseInspectionSchema = Content.extend({ contentHash: Hash }).strict();\nexport type ExperimentCaseInspection = z.infer<typeof ExperimentCaseInspectionSchema>;\nexport class OpenPondExperimentInspectionClient {\n private readonly baseUrl: string;\n constructor(private readonly options: { baseUrl: string; apiKey: string; teamId: string; fetch?: typeof fetch }) {\n const url = new URL(options.baseUrl);\n if (![\"http:\", \"https:\"].includes(url.protocol) || url.username || url.password || url.search || url.hash || !options.apiKey.trim() || !options.teamId.trim()) throw new Error(\"A clean API origin and workspace credentials are required.\");\n this.baseUrl = url.toString().replace(/\\/+$/, \"\");\n }\n /** Retained, policy-facing evidence only. Reading a page never dispatches. */\n async case(executionId: string, receiptId: string, options: { manifestHash?: string; afterId?: string; signal?: AbortSignal } = {}) {\n const params = new URLSearchParams(options.afterId ? { afterId: Id.parse(options.afterId) } : {});\n const response = await (this.options.fetch ?? fetch)(`${this.baseUrl}/v1/experiments/executions/${encodeURIComponent(Id.parse(executionId))}/cases/${encodeURIComponent(Id.parse(receiptId))}?${params}`, { signal: options.signal, redirect: \"error\", headers: { Authorization: `Bearer ${this.options.apiKey}`, \"X-OpenPond-Team-Id\": this.options.teamId, Accept: \"application/json\" } });\n const value: unknown = await response.json();\n if (!response.ok) throw new Error(z.object({ message: z.string() }).parse(value).message);\n const result = ExperimentCaseInspectionSchema.parse(value);\n const { contentHash: actual, ...content } = result;\n if (contentHash(content) !== actual || result.teamId !== this.options.teamId || result.executionId !== executionId || result.receiptId !== receiptId || options.manifestHash && result.manifestHash !== options.manifestHash || result.events.length > result.eventCount) throw new Error(\"Case inspection differs from its requested workspace, execution or retained content.\");\n return result;\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,SAAS;AAElB,IAAM,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG;AAC3C,IAAM,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB;AAC9C,IAAM,UAAU,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,sCAAsC,GAAG,QAAQ,IAAI,aAAa,IAAI,cAAc,MAAM,WAAW,IAAI,QAAQ,IAAI,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,EAAE,SAAS,GAAG,QAAQ,EAAE,QAAQ,EAAE,SAAS,GAAG,OAAO,EAAE,OAAO,EAAE,SAAS,GAAG,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,iBAAiB,GAAG,SAAS,GAAG,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,OAAO;AAC/b,IAAM,iCAAiC,QAAQ,OAAO,EAAE,aAAa,KAAK,CAAC,EAAE,OAAO;AAEpF,IAAM,qCAAN,MAAyC;AAAA,EAE9C,YAA6B,SAAoF;AAApF;AAC3B,UAAM,MAAM,IAAI,IAAI,QAAQ,OAAO;AACnC,QAAI,CAAC,CAAC,SAAS,QAAQ,EAAE,SAAS,IAAI,QAAQ,KAAK,IAAI,YAAY,IAAI,YAAY,IAAI,UAAU,IAAI,QAAQ,CAAC,QAAQ,OAAO,KAAK,KAAK,CAAC,QAAQ,OAAO,KAAK,EAAG,OAAM,IAAI,MAAM,4DAA4D;AAC3O,SAAK,UAAU,IAAI,SAAS,EAAE,QAAQ,QAAQ,EAAE;AAAA,EAClD;AAAA,EAJ6B;AAAA,EADZ;AAAA;AAAA,EAOjB,MAAM,KAAK,aAAqB,WAAmB,UAA6E,CAAC,GAAG;AAClI,UAAM,SAAS,IAAI,gBAAgB,QAAQ,UAAU,EAAE,SAAS,GAAG,MAAM,QAAQ,OAAO,EAAE,IAAI,CAAC,CAAC;AAChG,UAAM,WAAW,OAAO,KAAK,QAAQ,SAAS,OAAO,GAAG,KAAK,OAAO,8BAA8B,mBAAmB,GAAG,MAAM,WAAW,CAAC,CAAC,UAAU,mBAAmB,GAAG,MAAM,SAAS,CAAC,CAAC,IAAI,MAAM,IAAI,EAAE,QAAQ,QAAQ,QAAQ,UAAU,SAAS,SAAS,EAAE,eAAe,UAAU,KAAK,QAAQ,MAAM,IAAI,sBAAsB,KAAK,QAAQ,QAAQ,QAAQ,mBAAmB,EAAE,CAAC;AAC3X,UAAM,QAAiB,MAAM,SAAS,KAAK;AAC3C,QAAI,CAAC,SAAS,GAAI,OAAM,IAAI,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,EAAE,OAAO;AACxF,UAAM,SAAS,+BAA+B,MAAM,KAAK;AACzD,UAAM,EAAE,aAAa,QAAQ,GAAG,QAAQ,IAAI;AAC5C,QAAI,YAAY,OAAO,MAAM,UAAU,OAAO,WAAW,KAAK,QAAQ,UAAU,OAAO,gBAAgB,eAAe,OAAO,cAAc,aAAa,QAAQ,gBAAgB,OAAO,iBAAiB,QAAQ,gBAAgB,OAAO,OAAO,SAAS,OAAO,WAAY,OAAM,IAAI,MAAM,sFAAsF;AAChX,WAAO;AAAA,EACT;AACF;",
6
6
  "names": []
7
7
  }
package/dist/index.js CHANGED
@@ -1,14 +1,18 @@
1
- import {
2
- OpenPondWorkflowsClient
3
- } from "./chunk-MEKWESBF.js";
4
- import "./chunk-LXXQVGQY.js";
5
1
  import {
6
2
  OpenPondLearningClient,
7
3
  OpenPondLearningError
8
4
  } from "./chunk-K4C5QOSV.js";
5
+ import {
6
+ OpenPondProfileActionsClient
7
+ } from "./chunk-2DMYAJLS.js";
8
+ import {
9
+ OpenPondWorkflowsClient
10
+ } from "./chunk-MEKWESBF.js";
11
+ import "./chunk-LXXQVGQY.js";
9
12
  import {
10
13
  OpenPondExperimentsClient
11
- } from "./chunk-EMANJDJR.js";
14
+ } from "./chunk-CNGJF6AM.js";
15
+ import "./chunk-SR55WVPK.js";
12
16
  import "./chunk-62LWLACP.js";
13
17
  import "./chunk-XR6CLSCS.js";
14
18
  import "./chunk-TCHAWJMB.js";
@@ -30,9 +34,6 @@ import {
30
34
  import {
31
35
  OpenPondProjectActionsClient
32
36
  } from "./chunk-IWT6JUZD.js";
33
- import {
34
- OpenPondProfileActionsClient
35
- } from "./chunk-2DMYAJLS.js";
36
37
  import {
37
38
  OpenPondApiError,
38
39
  apiFetch,