Skip to content

refactor: drop the presigned URL transfers, and name missing experiments and artifacts - #57

Merged
jwric merged 6 commits into
mainfrom
refactor/drop-url-transfers
Oct 14, 2026
Merged

jwric merged 6 commits into
mainfrom
refactor/drop-url-transfers

Conversation

@jwric

@jwric jwric commented Oct 14, 2026 •

Copy link
Copy Markdown
Member

Stacked on #55.

  • Presigned URL transfers. Client::upload_bytes_to_url and Client::download_from_url are removed, with the transport's upload client and the timeout they used. Both read or wrote a whole file in one request. Transfers to and from presigned URLs belong to the SDK's tracel-artifact, which streams them, uploads parts concurrently, and checks downloads. The client keeps to the Console's API; nothing else used them.
  • Not-found codes. ApiErrorCode gains Experiment, ExperimentArtifact and ObjectStorageFile, the codes the Console's experiment and artifact routes answer a 404 with. A client can now tell which was missing instead of reading all three as Unknown.

tracel-ai/tracel-cli#43 builds on both.

@jwric jwric changed the title refactor: drop the presigned URL transfers refactor: drop the presigned URL transfers, and name missing experiments and artifacts Oct 14, 2026
@jwric
jwric added this pull request to stack #56 October 14, 2026 19:43
@jwric
jwric marked this pull request as ready for review October 14, 2026 20:02
@jwric
jwric force-pushed the refactor/drop-url-transfers branch from 6748573 to c10573d Compare October 14, 2026 20:51
@jwric
jwric force-pushed the refactor/drop-url-transfers branch from c10573d to 8db334a Compare October 14, 2026 20:59
jwric added 6 commits October 14, 2026 17:22
- `list_jobs`, `get_job`, `get_job_logs` (byte-offset pages) and
  `cancel_job` mirror the server's project job routes; responses derive
  Serialize.
- `start_remote_job` returns the queue response, including `job_num`
  when the server sends it.
- `ApiErrorCode::ComputeProviderJob` names a missing job.
- `start_remote_job` becomes `queue_job(namespace, project_name,
  compute_provider_group_name, digest, command)`, matching the route
  and the argument order of every other project method.
- `rust-version` is 1.97.0, the lowest toolchain that builds and tests
  the workspace; the client itself uses `File::lock`, stable since 1.89.
`upload_bytes_to_url` and `download_from_url` read or wrote a whole file
in one request. Transfers to and from presigned URLs belong to the SDK's
tracel-artifact, which streams them, uploads parts concurrently and
checks downloads, so the client keeps to the Console's API.
`ApiErrorCode` gains `Experiment`, `ExperimentArtifact` and
`ObjectStorageFile`, the codes the Console's experiment and artifact
routes answer a 404 with, so a client can tell which was missing
instead of reading them all as `Unknown`.
@jwric
jwric force-pushed the refactor/drop-url-transfers branch from 8db334a to 46a1a46 Compare October 14, 2026 21:22
Base automatically changed from feat/jobs-api to main October 14, 2026 21:22
@jwric
jwric merged commit dcdbbf7 into main Oct 14, 2026
1 check passed
@jwric
jwric deleted the refactor/drop-url-transfers branch October 14, 2026 21:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants