@evolvingmachines/evolve 0.0.65 → 0.0.67

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 (152) hide show
  1. package/dist/{chunk-DK2MGUPB.js → chunk-RFLMRPGK.js} +5 -5
  2. package/dist/cli/index.cjs +39 -39
  3. package/dist/cli/index.d.cts +3 -3
  4. package/dist/cli/index.d.ts +3 -3
  5. package/dist/cli/index.js +30 -30
  6. package/dist/index.cjs +1 -1
  7. package/dist/index.d.cts +4 -4
  8. package/dist/index.d.ts +4 -4
  9. package/dist/index.js +1 -1
  10. package/dist/{types-B_qmzlMk.d.cts → types-84M4J_Vm.d.cts} +11 -44
  11. package/dist/{types-B_qmzlMk.d.ts → types-84M4J_Vm.d.ts} +11 -44
  12. package/package.json +4 -4
  13. package/skills/create-adapter/SKILL.md +71 -26
  14. package/skills/create-task/SKILL.md +124 -66
  15. package/skills/evolve/SKILL.md +37 -20
  16. package/skills/evolve-evals/SKILL.md +142 -69
  17. package/skills/evolve-evals/references/cli-reference/agent.md +76 -0
  18. package/skills/evolve-evals/references/cli-reference/analysis.md +78 -0
  19. package/skills/evolve-evals/references/cli-reference/analyze.md +95 -0
  20. package/skills/evolve-evals/references/cli-reference/auth.md +96 -0
  21. package/skills/evolve-evals/references/cli-reference/check.md +156 -0
  22. package/skills/evolve-evals/references/cli-reference/dataset.md +154 -0
  23. package/skills/evolve-evals/references/cli-reference/filesystem.md +168 -0
  24. package/skills/evolve-evals/references/cli-reference/index.md +149 -0
  25. package/skills/evolve-evals/references/cli-reference/job.md +198 -0
  26. package/skills/evolve-evals/references/cli-reference/run.md +187 -0
  27. package/skills/evolve-evals/references/cli-reference/secrets.md +77 -0
  28. package/skills/evolve-evals/references/cli-reference/session.md +56 -0
  29. package/skills/evolve-evals/references/cli-reference/skill.md +52 -0
  30. package/skills/evolve-evals/references/cli-reference/skills.md +85 -0
  31. package/skills/evolve-evals/references/cli-reference/trial.md +115 -0
  32. package/skills/evolve-evals/references/cli-reference/upload.md +72 -0
  33. package/skills/evolve-evals/references/core-concepts/agents.md +96 -0
  34. package/skills/evolve-evals/references/core-concepts/analyze.md +143 -0
  35. package/skills/evolve-evals/references/core-concepts/check.md +116 -0
  36. package/skills/evolve-evals/references/core-concepts/compatibility.md +39 -0
  37. package/skills/evolve-evals/references/core-concepts/compose.md +103 -0
  38. package/skills/evolve-evals/references/core-concepts/datasets.md +234 -0
  39. package/skills/evolve-evals/references/core-concepts/index.md +52 -0
  40. package/skills/evolve-evals/references/core-concepts/jobs.md +223 -0
  41. package/skills/evolve-evals/references/core-concepts/models.md +73 -0
  42. package/skills/evolve-evals/references/core-concepts/multi-step.md +93 -0
  43. package/skills/evolve-evals/references/core-concepts/rewardkit.md +341 -0
  44. package/skills/evolve-evals/references/core-concepts/sandboxes.md +73 -0
  45. package/skills/evolve-evals/references/core-concepts/secrets.md +86 -0
  46. package/skills/evolve-evals/references/core-concepts/sharing.md +81 -0
  47. package/skills/evolve-evals/references/core-concepts/skills.md +100 -0
  48. package/skills/evolve-evals/references/core-concepts/task-config.md +169 -0
  49. package/skills/evolve-evals/references/core-concepts/task-environment.md +127 -0
  50. package/skills/evolve-evals/references/core-concepts/task-reference.md +191 -0
  51. package/skills/evolve-evals/references/core-concepts/task-verifiers.md +209 -0
  52. package/skills/evolve-evals/references/core-concepts/tasks.md +90 -0
  53. package/skills/evolve-evals/references/core-concepts/teams.md +128 -0
  54. package/skills/evolve-evals/references/core-concepts/trial-outputs.md +225 -0
  55. package/skills/evolve-evals/references/core-concepts/trials.md +129 -0
  56. package/skills/evolve-evals/references/core-concepts/upload-sdk-session.md +240 -0
  57. package/skills/evolve-evals/references/core-concepts/upload.md +166 -0
  58. package/skills/evolve-evals/references/dashboard/checks.md +54 -0
  59. package/skills/evolve-evals/references/dashboard/datasets.md +65 -0
  60. package/skills/evolve-evals/references/dashboard/jobs.md +106 -0
  61. package/skills/evolve-evals/references/dashboard/traces.md +54 -0
  62. package/skills/evolve-evals/references/dashboard/trial-viewer.md +77 -0
  63. package/skills/evolve-evals/references/getting-started/first-task.md +228 -0
  64. package/skills/evolve-evals/references/getting-started/installation.md +79 -0
  65. package/skills/evolve-evals/references/getting-started/quick-start.md +100 -0
  66. package/skills/evolve-evals/references/index.md +58 -0
  67. package/skills/evolve-evals/references/sdk/http.md +110 -0
  68. package/skills/evolve-evals/references/sdk/python.md +108 -0
  69. package/skills/evolve-evals/references/sdk/typescript.md +104 -0
  70. package/skills/evolve-evals/references/sdk-reference/agents.md +75 -0
  71. package/skills/evolve-evals/references/sdk-reference/analyses.md +124 -0
  72. package/skills/evolve-evals/references/sdk-reference/auth.md +171 -0
  73. package/skills/evolve-evals/references/sdk-reference/checks.md +145 -0
  74. package/skills/evolve-evals/references/sdk-reference/datasets.md +170 -0
  75. package/skills/evolve-evals/references/sdk-reference/error-codes.md +231 -0
  76. package/skills/evolve-evals/references/sdk-reference/errors.md +98 -0
  77. package/skills/evolve-evals/references/sdk-reference/filesystem.md +166 -0
  78. package/skills/evolve-evals/references/sdk-reference/index.md +161 -0
  79. package/skills/evolve-evals/references/sdk-reference/jobs.md +250 -0
  80. package/skills/evolve-evals/references/sdk-reference/meta.md +54 -0
  81. package/skills/evolve-evals/references/sdk-reference/methods/agents.md +154 -0
  82. package/skills/evolve-evals/references/sdk-reference/methods/analyses.md +211 -0
  83. package/skills/evolve-evals/references/sdk-reference/methods/auth.md +257 -0
  84. package/skills/evolve-evals/references/sdk-reference/methods/checks.md +460 -0
  85. package/skills/evolve-evals/references/sdk-reference/methods/datasets.md +687 -0
  86. package/skills/evolve-evals/references/sdk-reference/methods/filesystem.md +527 -0
  87. package/skills/evolve-evals/references/sdk-reference/methods/jobs.md +1021 -0
  88. package/skills/evolve-evals/references/sdk-reference/methods/meta.md +209 -0
  89. package/skills/evolve-evals/references/sdk-reference/methods/secrets.md +157 -0
  90. package/skills/evolve-evals/references/sdk-reference/methods/skills.md +125 -0
  91. package/skills/evolve-evals/references/sdk-reference/methods/trials.md +371 -0
  92. package/skills/evolve-evals/references/sdk-reference/secrets.md +104 -0
  93. package/skills/evolve-evals/references/sdk-reference/skills.md +66 -0
  94. package/skills/evolve-evals/references/sdk-reference/trials.md +164 -0
  95. package/skills/evolve-evals/references/sdk-reference/types.md +1249 -0
  96. package/skills/publish/SKILL.md +103 -79
  97. package/skills/rewardkit/SKILL.md +78 -23
  98. package/spec/openapi.yaml +19 -74
  99. package/skills/evolve-evals/references/cli-reference/agent.mdx +0 -79
  100. package/skills/evolve-evals/references/cli-reference/analysis.mdx +0 -160
  101. package/skills/evolve-evals/references/cli-reference/analyze.mdx +0 -84
  102. package/skills/evolve-evals/references/cli-reference/auth.mdx +0 -133
  103. package/skills/evolve-evals/references/cli-reference/check.mdx +0 -263
  104. package/skills/evolve-evals/references/cli-reference/dataset.mdx +0 -151
  105. package/skills/evolve-evals/references/cli-reference/index.mdx +0 -108
  106. package/skills/evolve-evals/references/cli-reference/job.mdx +0 -278
  107. package/skills/evolve-evals/references/cli-reference/run.mdx +0 -204
  108. package/skills/evolve-evals/references/cli-reference/secrets.mdx +0 -95
  109. package/skills/evolve-evals/references/cli-reference/skill.mdx +0 -61
  110. package/skills/evolve-evals/references/cli-reference/skills.mdx +0 -81
  111. package/skills/evolve-evals/references/cli-reference/trial.mdx +0 -181
  112. package/skills/evolve-evals/references/cli-reference/upload.mdx +0 -36
  113. package/skills/evolve-evals/references/core-concepts/agents.mdx +0 -106
  114. package/skills/evolve-evals/references/core-concepts/analyze.mdx +0 -86
  115. package/skills/evolve-evals/references/core-concepts/check.mdx +0 -64
  116. package/skills/evolve-evals/references/core-concepts/datasets.mdx +0 -138
  117. package/skills/evolve-evals/references/core-concepts/index.mdx +0 -42
  118. package/skills/evolve-evals/references/core-concepts/jobs.mdx +0 -151
  119. package/skills/evolve-evals/references/core-concepts/models.mdx +0 -68
  120. package/skills/evolve-evals/references/core-concepts/sandboxes.mdx +0 -52
  121. package/skills/evolve-evals/references/core-concepts/secrets.mdx +0 -41
  122. package/skills/evolve-evals/references/core-concepts/sharing.mdx +0 -35
  123. package/skills/evolve-evals/references/core-concepts/skills.mdx +0 -42
  124. package/skills/evolve-evals/references/core-concepts/tasks.mdx +0 -216
  125. package/skills/evolve-evals/references/core-concepts/teams.mdx +0 -36
  126. package/skills/evolve-evals/references/core-concepts/trial-outputs.mdx +0 -117
  127. package/skills/evolve-evals/references/core-concepts/trials.mdx +0 -103
  128. package/skills/evolve-evals/references/core-concepts/upload.mdx +0 -93
  129. package/skills/evolve-evals/references/dashboard/checks.mdx +0 -21
  130. package/skills/evolve-evals/references/dashboard/datasets.mdx +0 -24
  131. package/skills/evolve-evals/references/dashboard/jobs.mdx +0 -65
  132. package/skills/evolve-evals/references/dashboard/traces.mdx +0 -17
  133. package/skills/evolve-evals/references/dashboard/trial-viewer.mdx +0 -30
  134. package/skills/evolve-evals/references/getting-started/installation.mdx +0 -56
  135. package/skills/evolve-evals/references/getting-started/quick-start.mdx +0 -94
  136. package/skills/evolve-evals/references/index.mdx +0 -48
  137. package/skills/evolve-evals/references/sdk/python.mdx +0 -161
  138. package/skills/evolve-evals/references/sdk/typescript.mdx +0 -163
  139. package/skills/evolve-evals/references/sdk-reference/agents.mdx +0 -108
  140. package/skills/evolve-evals/references/sdk-reference/analyses.mdx +0 -222
  141. package/skills/evolve-evals/references/sdk-reference/auth.mdx +0 -116
  142. package/skills/evolve-evals/references/sdk-reference/checks.mdx +0 -300
  143. package/skills/evolve-evals/references/sdk-reference/datasets.mdx +0 -346
  144. package/skills/evolve-evals/references/sdk-reference/errors.mdx +0 -210
  145. package/skills/evolve-evals/references/sdk-reference/index.mdx +0 -60
  146. package/skills/evolve-evals/references/sdk-reference/jobs.mdx +0 -822
  147. package/skills/evolve-evals/references/sdk-reference/meta.mdx +0 -52
  148. package/skills/evolve-evals/references/sdk-reference/skills.mdx +0 -69
  149. package/skills/evolve-evals/references/sdk-reference/trials.mdx +0 -302
  150. package/skills/evolve-evals/references/sdk-reference/types.mdx +0 -274
  151. package/skills/evolve-evals/references/snippets/global-options.mdx +0 -13
  152. package/skills/evolve-evals/references/snippets/list-flags.mdx +0 -23
@@ -0,0 +1,687 @@
1
+ ---
2
+ title: "Datasets: methods"
3
+ description: "Every dataset call, option, and returned field."
4
+ ---
5
+
6
+ Create the client with `datasets()` or use `hosted().datasets`. For a guided example, see [datasets](/sdk-reference/datasets). Examples use a configured `client` from `datasets()`. Python examples run inside an async function.
7
+
8
+ | Group | Methods |
9
+ | --- | --- |
10
+ | [Browse](#list) | `list`, `get`, `getActive`, `getTaskBuild`, `taskFiles` |
11
+ | [Publish](#preflight) | `preflight`, `publish`, `getImport`, `watchImport`, `listImports` |
12
+ | [Manage](#download) | `download`, `update`, `activate`, `delete` |
13
+
14
+ ## list
15
+
16
+ Read one catalog page, or iterate the whole catalog.
17
+
18
+ ```ts TypeScript
19
+ const page = await client.list({
20
+ search: "harbor-examples",
21
+ limit: 20,
22
+ });
23
+ ```
24
+
25
+ ```python Python
26
+ page = await client.list(
27
+ search="harbor-examples",
28
+ limit=20,
29
+ )
30
+ ```
31
+
32
+ **Returns:** `DatasetPage` when awaited; a `Dataset` per iteration. See [dataset fields](#dataset-fields).
33
+
34
+ ### Parameters and behavior
35
+
36
+ | Parameter | Type and meaning |
37
+ | --- | --- |
38
+ | `search?` | String; filters name and description. |
39
+ | `limit?` | Integer; collection page size. Default 50, maximum 200. |
40
+ | `cursor?` | String from the previous page. Omit for the first page. |
41
+
42
+ TypeScript returns `DatasetList`; Python returns an awaitable, asynchronously iterable handle. `for await` / `async for` follows subsequent pages. Page fields are `items`, `nextCursor`, `hasMore` in TypeScript; `items`, `next_cursor`, `has_more` in Python.
43
+
44
+ ## get
45
+
46
+ Read all versions and one page of a selected version’s tasks.
47
+
48
+ ```ts TypeScript
49
+ const dataset = await client.get("harbor-examples@1.0", {
50
+ limit: 50,
51
+ });
52
+ ```
53
+
54
+ ```python Python
55
+ dataset = await client.get(
56
+ "harbor-examples@1.0",
57
+ limit=50,
58
+ )
59
+ ```
60
+
61
+ **Returns:** `Dataset`, including `versions`, `selected_version`, `tasks`, and `failed_tasks`.
62
+
63
+ ### Parameters and behavior
64
+
65
+ | Parameter | Type and meaning |
66
+ | --- | --- |
67
+ | `ref` | Required string: `name` selects the active version; `name@version` selects one version. |
68
+ | `limit?`, `cursor?` | Page the tasks. Default 200 tasks, maximum 500. Pass the prior task page’s cursor. |
69
+
70
+ ## getActive / get_active
71
+
72
+ Resolve a bare dataset name to its active version.
73
+
74
+ ```ts TypeScript
75
+ const dataset = await client.getActive("harbor-examples");
76
+ console.log(dataset.version, dataset.tasks.items);
77
+ ```
78
+
79
+ ```python Python
80
+ dataset = await client.get_active("harbor-examples")
81
+ print(dataset.version, dataset.tasks.items)
82
+ ```
83
+
84
+ **Returns:** `ActiveDataset`; `version`, `active_version`, and `tasks` are present.
85
+
86
+ ### Parameters and behavior
87
+
88
+ | Parameter | Type and meaning |
89
+ | --- | --- |
90
+ | `name` | Required string; use a bare dataset name. |
91
+ | `limit?`, `cursor?` | Task pagination, as for `get`. TypeScript passes an options object; Python uses keywords. |
92
+
93
+ Raises `NoActiveVersionError` when no version is active. Use `get` if you need to inspect a dataset before it has an active version.
94
+
95
+ ## getTaskBuild / get_task_build
96
+
97
+ Read one task’s settled build result.
98
+
99
+ ```ts TypeScript
100
+ const build = await client.getTaskBuild(
101
+ "my-benchmark@1.0",
102
+ "hello-world",
103
+ );
104
+ console.log(build.state, build.failure);
105
+ ```
106
+
107
+ ```python Python
108
+ build = await client.get_task_build(
109
+ "my-benchmark@1.0",
110
+ "hello-world",
111
+ )
112
+ print(build.state, build.failure)
113
+ ```
114
+
115
+ **Returns:** `TaskBuild`: `task_name`, `state`, `failure`, and `build_log_ref`.
116
+
117
+ ### Parameters and behavior
118
+
119
+ | Parameter | Type and meaning |
120
+ | --- | --- |
121
+ | `ref` | Required string, pinned as `name@version`. |
122
+ | `taskName` / `task_name` | Required task name. |
123
+
124
+ `state` is `READY` or `FAILED`. Failure fields are `code`, `step`, `message`, and optional `excerpt`. `build_log_ref` is a stored log reference, or null. A missing task or an unsettled build returns `404 task_not_found`.
125
+
126
+ ## taskFiles / task_files
127
+
128
+ Get a client for one task’s retained package files.
129
+
130
+ ```ts TypeScript
131
+ const files = client.taskFiles(
132
+ "my-benchmark@1.0",
133
+ "hello-world",
134
+ );
135
+ const listing = await files.list();
136
+ ```
137
+
138
+ ```python Python
139
+ files = client.task_files("my-benchmark@1.0", "hello-world")
140
+ listing = await files.list()
141
+ ```
142
+
143
+ **Returns:** [`TaskPackageFiles`](/sdk-reference/methods/filesystem). Creating this client makes no request.
144
+
145
+ ### Parameters and behavior
146
+
147
+ | Parameter | Type and meaning |
148
+ | --- | --- |
149
+ | `ref` | Required string, pinned as `name@version`. |
150
+ | `taskName` / `task_name` | Required task name. |
151
+
152
+ The file client exposes `status`, `list`, and `read`. See the filesystem reference for their parameters and response fields.
153
+
154
+ ## preflight
155
+
156
+ Check a local corpus’s metadata before uploading its task files.
157
+
158
+ ```ts TypeScript
159
+ const verdict = await client.preflight({
160
+ source: { directory: "./tasks" },
161
+ });
162
+ ```
163
+
164
+ ```python Python
165
+ verdict = await client.preflight(directory="./tasks")
166
+ ```
167
+
168
+ **Returns:** `DatasetPreflight`. Inspect `tasks_refused`, each task’s `reason`, and the checks listed in `deferred`.
169
+
170
+ ### Parameters and behavior
171
+
172
+ | Parameter | Type and meaning |
173
+ | --- | --- |
174
+ | TypeScript `source.directory` | Required local directory path. No other source type is accepted. |
175
+ | Python `directory` | Required keyword argument for the same directory. |
176
+
177
+ Reads task TOML files and an optional dataset manifest. It does not build images or run verifiers. SDK `publish` does not call preflight automatically.
178
+
179
+ ## publish
180
+
181
+ Submit a new immutable dataset version. Follow the returned import id with `watchImport` / `watch_import`.
182
+
183
+ ```ts TypeScript
184
+ const pending = await client.publish({
185
+ name: "my-benchmark",
186
+ version: "1.0",
187
+ source: { directory: "./tasks" },
188
+ });
189
+ ```
190
+
191
+ ```python Python
192
+ pending = await client.publish(
193
+ name="my-benchmark",
194
+ version="1.0",
195
+ directory="./tasks",
196
+ )
197
+ ```
198
+
199
+ **Returns:** `DatasetImport` after the source is accepted; image builds may still be running.
200
+
201
+ ### Parameters and behavior
202
+
203
+ | Parameter | Type and meaning |
204
+ | --- | --- |
205
+ | `source` (TypeScript) | Exactly one source object, shown below. Python passes those fields as keyword arguments. |
206
+ | `name?`, `version?` | Strings. Required for git and archive URLs. A local `dataset.toml` or Hub package can supply them. |
207
+ | `org?` | Organization slug or id. Overrides the client default. New datasets use your personal organization when neither is set. |
208
+
209
+ | Source | TypeScript `source` | Python keywords |
210
+ | --- | --- | --- |
211
+ | Local folder | `{ directory: "./tasks" }` | `directory="./tasks"` |
212
+ | Git | `{ git_url, git_ref, git_path? }` | `git_url=`, `git_ref=`, `git_path=` |
213
+ | Public HTTPS tarball | `{ archive_url }` | `archive_url=` |
214
+ | Public Harbor Hub package | `{ hub_package: "org/name@ref" }` | `hub_package="org/name@ref"` |
215
+
216
+ Git requires an HTTPS URL and a full 40-character commit SHA or tag. Branch names are refused with `unpinned_git_ref`. Optional `git_path` selects one relative repository directory. Point a local `directory` directly at the desired folder.
217
+
218
+ An existing dataset keeps its organization when both the call and client omit `org`. Supplying a different organization is refused; publishing another version does not move the dataset.
219
+
220
+ | Parameter | Type and meaning |
221
+ | --- | --- |
222
+ | `onUploadProgress` / `on_upload_progress` | Callback `(sentBytes, totalBytes)` / `(sent_bytes, total_bytes)` for local archive transfers. |
223
+ | `onRegistered` / `on_registered` | Callback `(importId)` / `(import_id)` when a large resumable upload pre-registers its import. |
224
+
225
+ In TypeScript, callbacks belong to the second `options` argument. Python accepts them as keywords and calls them from the uploader thread: keep them short and thread-safe. Registration callbacks require a resumable local upload with explicit name and version; they do not fire for every publish.
226
+
227
+ ## getImport / get_import
228
+
229
+ Read a publish operation by its import id.
230
+
231
+ ```ts TypeScript
232
+ const pending = await client.getImport(importId);
233
+ console.log(pending.status, pending.progress);
234
+ ```
235
+
236
+ ```python Python
237
+ pending = await client.get_import(import_id)
238
+ print(pending.status, pending.progress)
239
+ ```
240
+
241
+ **Returns:** `DatasetImport`. See [import fields](#import-fields).
242
+
243
+ ### Parameters and behavior
244
+
245
+ `id` is the required string returned by `publish`. Import status is `QUEUED`, `RUNNING`, `COMPLETED`, or `FAILED`. `receiving` distinguishes an upload still arriving from an import ready to be picked up.
246
+
247
+ ## watchImport / watch_import
248
+
249
+ Wait for the import to finish and confirm the published version’s state.
250
+
251
+ ```ts TypeScript
252
+ const result = await client.watchImport(importId, {
253
+ onProgress: (progress) => console.log(progress.phase),
254
+ pollIntervalMs: 2_000,
255
+ });
256
+ ```
257
+
258
+ ```python Python
259
+ result = await client.watch_import(
260
+ import_id,
261
+ on_progress=lambda progress, imported: print(progress.phase),
262
+ poll_interval_s=2.0,
263
+ )
264
+ ```
265
+
266
+ **Returns:** `DatasetImport`. A failed import is returned with `status: "FAILED"` and `failure`; inspect it before using the version.
267
+
268
+ ### Parameters and behavior
269
+
270
+ | TypeScript options | Python keywords | Meaning |
271
+ | --- | --- | --- |
272
+ | `id` | `id` | Required import id. |
273
+ | `onStatus?` | `on_status?` | Callback `(import)`: first observation and observed status or `receiving` changes. |
274
+ | `onProgress?` | `on_progress?` | Callback `(progress, import)`: changed, non-null progress. |
275
+ | `onVersion?` | `on_version?` | Callback `(version, dataset)`: observed version-state changes while settling. |
276
+ | `pollIntervalMs?` | `poll_interval_s?` | Polling interval; 2000 milliseconds / 2 seconds by default. |
277
+ | `settleTimeoutMs?` | `settle_timeout_s?` | Bound on confirming the version after import completion; 30 minutes by default. |
278
+ | `signal?` | — | TypeScript `AbortSignal` to stop watching. |
279
+ | — | `timeout_s?` | Python overall time limit in seconds; omitted means no overall limit. |
280
+
281
+ The watch retries HTTP 429 and 503 after a delay. A version that does not settle in time raises `ImportSettleError` with code `settle_timeout`; Python’s overall limit raises `TimeoutError`. Timing out stops the wait, not the import. A `READY` version can contain failed tasks: read the dataset’s `failed_tasks`.
282
+
283
+ ## listImports / list_imports
284
+
285
+ Find your previous publishes, newest first.
286
+
287
+ ```ts TypeScript
288
+ const page = await client.listImports({
289
+ dataset: "my-benchmark",
290
+ status: "FAILED",
291
+ });
292
+ ```
293
+
294
+ ```python Python
295
+ page = await client.list_imports(
296
+ dataset="my-benchmark",
297
+ status="FAILED",
298
+ )
299
+ ```
300
+
301
+ **Returns:** `DatasetImportPage` when awaited; a `DatasetImport` per iteration.
302
+
303
+ ### Parameters and behavior
304
+
305
+ | Parameter | Type and meaning |
306
+ | --- | --- |
307
+ | `status?` | `QUEUED`, `RUNNING`, `COMPLETED`, or `FAILED`. |
308
+ | `dataset?` | Dataset name string. |
309
+ | `limit?`, `cursor?` | Collection pagination: default 50, maximum 200. Filters are preserved while iterating. |
310
+
311
+ ## download
312
+
313
+ Download the original corpus package for a dataset you own.
314
+
315
+ ```ts TypeScript
316
+ const path = await client.download("my-benchmark@1.0", {
317
+ to: "./downloads",
318
+ });
319
+ ```
320
+
321
+ ```python Python
322
+ path = await client.download(
323
+ "my-benchmark@1.0",
324
+ to="./downloads",
325
+ )
326
+ ```
327
+
328
+ **Returns:** With `to`: a saved file path string. Without options: TypeScript `Buffer`, Python `bytes`.
329
+
330
+ ### Parameters and behavior
331
+
332
+ | Parameter | Type and meaning |
333
+ | --- | --- |
334
+ | `ref` | Required `name` or `name@version`. |
335
+ | `to?` | Destination directory, not a filename. |
336
+ | TypeScript `stream: true` | Returns `ReadableStream<Uint8Array>`. Python has no stream option; use `to` for a disk download. |
337
+
338
+ Buffered and disk downloads check the declared byte length and digest. A raw TypeScript stream leaves client-side verification to the caller. Only the owning account can download; platform-curated datasets are not downloadable. `package_not_retained` means an older version has no saved corpus package.
339
+
340
+ ## update
341
+
342
+ Change whether a moving upstream git ref is imported automatically.
343
+
344
+ ```ts TypeScript
345
+ const dataset = await client.update("my-benchmark", {
346
+ upstream_auto_import: true,
347
+ });
348
+ ```
349
+
350
+ ```python Python
351
+ dataset = await client.update(
352
+ "my-benchmark",
353
+ upstream_auto_import=True,
354
+ )
355
+ ```
356
+
357
+ **Returns:** `Dataset` summary fields. Call `get` for its task page and full version list.
358
+
359
+ ### Parameters and behavior
360
+
361
+ | Parameter | Type and meaning |
362
+ | --- | --- |
363
+ | `name` | Required dataset name string. |
364
+ | `upstream_auto_import` | Required boolean. The only writable dataset setting. |
365
+
366
+ Requires an owned dataset with a moving git ref. Otherwise the server returns `dataset_not_owned` or `upstream_not_watchable`.
367
+
368
+ ## activate
369
+
370
+ Choose the ready version used by bare-name references.
371
+
372
+ ```ts TypeScript
373
+ const dataset = await client.activate(
374
+ "my-benchmark",
375
+ "1.0",
376
+ );
377
+ ```
378
+
379
+ ```python Python
380
+ dataset = await client.activate("my-benchmark", "1.0")
381
+ ```
382
+
383
+ **Returns:** `Dataset` detail with the selected active version.
384
+
385
+ ### Parameters and behavior
386
+
387
+ | Parameter | Type and meaning |
388
+ | --- | --- |
389
+ | `name` | Required dataset name. |
390
+ | `version` | Required existing version label. |
391
+
392
+ You must own the dataset. A version still building returns `version_not_ready`; `FAILED` and `ARCHIVED` versions return `version_not_activatable`. Publishing already activates the new ready version on owned datasets.
393
+
394
+ ## delete
395
+
396
+ Delete an owned dataset, including its versions, tasks, and archived solutions.
397
+
398
+ ```ts TypeScript
399
+ await client.delete("my-benchmark");
400
+ ```
401
+
402
+ ```python Python
403
+ await client.delete("my-benchmark")
404
+ ```
405
+
406
+ **Returns:** No value (`void` / `None`).
407
+
408
+ ### Parameters and behavior
409
+
410
+ `name` is required. A dataset referenced by any job returns `dataset_in_use`; `error.details.sample_job_ids` names blocking jobs and `job_count` gives their count when known. A platform-curated dataset returns `dataset_not_owned`.
411
+
412
+ ## Dataset fields
413
+
414
+ The schemas below list TypeScript fields. Python uses the same field names as dataclass attributes, except page cursors are `next_cursor` and `has_more`. Optional TypeScript fields can be absent; Python normally represents missing optional values as `None`.
415
+
416
+ ### Dataset and active-version result
417
+
418
+ `list` returns summary fields. `get` adds the selected task page, version list, failed tasks, and timestamps. `active_version` is the current default; `latest_version` is the newest version even when it is not active. Python’s `ActiveDataset` timestamps may be `None`.
419
+
420
+ `DatasetVersionState` is `DRAFT`, `RECEIVING`, `IMPORTING`, `BUILDING`, `READY`, `FAILED`, or `ARCHIVED`. `task_count` counts ready tasks; `n_failed_tasks` counts failed builds. `Page<T>` has `items: T[]`, `nextCursor: string | null`, and `hasMore: boolean`.
421
+
422
+ `failed_tasks` is a sample of at most 500 failed tasks, sorted by task name. It has no cursor and does not use the requested task-page limit. `n_failed_tasks` gives the full count; use `getTaskBuild` / `get_task_build` to inspect a particular task.
423
+
424
+ ```ts Fields
425
+ interface Dataset {
426
+ name: string;
427
+ title: string | null;
428
+ description: string | null;
429
+ active_version: DatasetVersion | null;
430
+ latest_version: DatasetVersion | null;
431
+ versions?: DatasetVersion[];
432
+ selected_version?: DatasetVersion | null;
433
+ tasks?: Page<Task>;
434
+ failed_tasks?: DatasetFailedTask[];
435
+ upstream: UpstreamStatus | null;
436
+ created_at?: string;
437
+ updated_at?: string;
438
+ }
439
+
440
+ interface ActiveDataset {
441
+ name: string;
442
+ title: string | null;
443
+ description: string | null;
444
+ active_version: DatasetVersion;
445
+ version: string;
446
+ tasks: Page<Task>;
447
+ versions: DatasetVersion[];
448
+ created_at: string;
449
+ updated_at: string;
450
+ }
451
+
452
+ interface DatasetVersion {
453
+ version: string;
454
+ state: DatasetVersionState;
455
+ created_at: string;
456
+ task_count: number;
457
+ n_failed_tasks: number;
458
+ manifest: DatasetManifestMetadata | null;
459
+ source: DatasetVersionSource | null;
460
+ }
461
+ ```
462
+
463
+ ### Tasks and build failures
464
+
465
+ `providers` is keyed by `e2b`, `daytona`, and `modal`. A successful provider verdict can still declare a fallback in `degrades_to`. Notes are non-fatal. Python defaults missing `gpus` to `0` and `notes` to an empty list.
466
+
467
+ ```ts Fields
468
+ interface Task {
469
+ task_name: string;
470
+ agent_timeout_sec: number;
471
+ verifier_timeout_sec: number;
472
+ gpus?: number;
473
+ gpu_types?: string[] | null;
474
+ providers: Record<EvalSandboxProvider, TaskProviderVerdict>;
475
+ notes: TaskNote[];
476
+ }
477
+
478
+ type TaskProviderVerdict =
479
+ | { ok: true; degrades_to?: "modal"; reason?: string }
480
+ | { ok: false; reason: string };
481
+
482
+ interface TaskNote {
483
+ code: "tests_dockerfile_not_built";
484
+ message: string;
485
+ }
486
+
487
+ interface DatasetFailedTask {
488
+ task_name: string;
489
+ failure: TaskBuildFailure;
490
+ }
491
+
492
+ interface TaskBuild {
493
+ task_name: string;
494
+ state: TaskBuildState;
495
+ failure: TaskBuildFailure | null;
496
+ build_log_ref: string | null;
497
+ }
498
+
499
+ interface TaskBuildFailure {
500
+ code: string;
501
+ step: string;
502
+ message: string;
503
+ excerpt?: string | null;
504
+ }
505
+ ```
506
+
507
+ ### Manifest and source provenance
508
+
509
+ `manifest` preserves dataset metadata. `source.kind` chooses the source variant; git URLs are returned without embedded credentials. A null source means no recorded provenance.
510
+
511
+ ```ts Fields
512
+ interface DatasetManifestAuthor {
513
+ name: string;
514
+ email: string | null;
515
+ }
516
+
517
+ interface DatasetManifestMetadata {
518
+ name: string;
519
+ version: string | null;
520
+ description: string;
521
+ authors: DatasetManifestAuthor[];
522
+ keywords: string[];
523
+ task_count: number | null;
524
+ }
525
+
526
+ interface DatasetVersionGitSource {
527
+ kind: "git";
528
+ git_url: string | null;
529
+ ref: string;
530
+ commit: string;
531
+ path: string | null;
532
+ }
533
+
534
+ interface DatasetVersionArchiveSource {
535
+ kind: "archive";
536
+ digest: string;
537
+ }
538
+
539
+ interface DatasetVersionArchiveUrlSource {
540
+ kind: "archive_url";
541
+ archive_url: string;
542
+ digest: string;
543
+ }
544
+
545
+ interface DatasetVersionHubSource {
546
+ kind: "hub_package";
547
+ hub_package: string;
548
+ digest: string;
549
+ }
550
+
551
+ type DatasetVersionSource =
552
+ | DatasetVersionGitSource
553
+ | DatasetVersionArchiveSource
554
+ | DatasetVersionArchiveUrlSource
555
+ | DatasetVersionHubSource;
556
+ ```
557
+
558
+ ### Upstream git status
559
+
560
+ `moved` says whether the remote ref differs from the imported commit. `acked_commit` is the newest commit already imported into any local version. `behind_by` is reserved and currently null. Null or failed checks do not mean the source is up to date.
561
+
562
+ ```ts Fields
563
+ interface UpstreamStatus {
564
+ git_url?: string | null;
565
+ ref: string;
566
+ current_commit: string;
567
+ path?: string | null;
568
+ latest_commit: string | null;
569
+ acked_commit?: string | null;
570
+ moved: boolean;
571
+ behind_by: number | null;
572
+ checked_at: string | null;
573
+ error: string | null;
574
+ auto_import: boolean;
575
+ }
576
+ ```
577
+
578
+ ## Preflight fields
579
+
580
+ ### DatasetPreflight and per-task verdicts
581
+
582
+ `checks` names checks performed. `deferred` names checks that need the full corpus, with `reads` describing their input. `task_key` is the task identity used during preflight. Provider verdicts and task notes use the shapes above.
583
+
584
+ ```ts Fields
585
+ interface DatasetPreflight {
586
+ importer_version: string;
587
+ checks: string[];
588
+ deferred: PreflightDeferredCheck[];
589
+ manifest: PreflightManifestVerdict | null;
590
+ tasks: PreflightTaskVerdict[];
591
+ tasks_total: number;
592
+ tasks_ok: number;
593
+ tasks_refused: number;
594
+ }
595
+
596
+ interface PreflightTaskVerdict {
597
+ name: string;
598
+ ok: boolean;
599
+ task_key: string;
600
+ schema_version?: string;
601
+ providers?: Record<EvalSandboxProvider, TaskProviderVerdict>;
602
+ notes?: TaskNote[];
603
+ reason?: string;
604
+ }
605
+
606
+ interface PreflightDeferredCheck {
607
+ name: string;
608
+ reads: string;
609
+ }
610
+
611
+ interface PreflightManifestVerdict {
612
+ ok: boolean;
613
+ name?: string;
614
+ short_name?: string;
615
+ version?: string | null;
616
+ task_count?: number;
617
+ reason?: string;
618
+ }
619
+ ```
620
+
621
+ ## Import fields
622
+
623
+ ### DatasetImport, failures, and warnings
624
+
625
+ `failure` is null unless a failure was recorded. `task_count` appears when known. Python represents missing `task_count` and timestamps as `None`, and defaults missing `receiving` to `False`. `DatasetImportStatus` is `QUEUED`, `RUNNING`, `COMPLETED`, or `FAILED`.
626
+
627
+ ```ts Fields
628
+ interface DatasetImport {
629
+ id: string;
630
+ status: DatasetImportStatus;
631
+ receiving?: boolean;
632
+ name: string;
633
+ version: string;
634
+ failure: DatasetImportFailure | null;
635
+ warnings: ImportWarning[];
636
+ progress: DatasetImportProgress | null;
637
+ task_count?: number;
638
+ created_at?: string;
639
+ updated_at?: string;
640
+ }
641
+
642
+ interface DatasetImportFailure {
643
+ code: string;
644
+ message: string;
645
+ failures?: { task_name: string; error: string }[];
646
+ }
647
+
648
+ interface ImportWarning {
649
+ code:
650
+ | "solutions_archiving_disabled"
651
+ | "no_solutions_archived"
652
+ | "partial_solutions_archived"
653
+ | "tasks_failed_to_build"
654
+ | "tests_dockerfile_not_built";
655
+ message?: string;
656
+ }
657
+ ```
658
+
659
+ ### Progress and phase counters
660
+
661
+ `done` and `total` describe each phase’s units. `images` separates built, mirrored, and reused (`banked`) images. `codebuild` records copy-build usage. Python maps `images` to `ImportImageCounts` and `codebuild` to `ImportCodeBuildMeter` dataclasses with these same field names. Progress is recorded at phase boundaries and coarse intervals, not every second.
662
+
663
+ ```ts Fields
664
+ type ImportPhase =
665
+ | "extracting"
666
+ | "parsing"
667
+ | "building"
668
+ | "copying"
669
+ | "verifying";
670
+
671
+ interface ImportPhaseProgress {
672
+ name: ImportPhase;
673
+ started_at: string;
674
+ completed_at?: string;
675
+ done: number;
676
+ total: number;
677
+ banked?: number;
678
+ }
679
+
680
+ interface DatasetImportProgress {
681
+ phase: ImportPhase;
682
+ started_at: string;
683
+ phases: ImportPhaseProgress[];
684
+ images: { built: number; mirrored: number; banked: number };
685
+ codebuild: { copy_builds: number; billed_minutes: number };
686
+ }
687
+ ```