Skip to content

Add GPU sandbox provisioning, image builds, and computer actions - #135

Open
Dingway98 wants to merge 1 commit into
mainfrom
codex/gpu-sdk-parity
Open

Dingway98 wants to merge 1 commit into
mainfrom
codex/gpu-sdk-parity

Conversation

@Dingway98

@Dingway98 Dingway98 commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

Summary

GPU launches return provisioning with no runtime or token, and GPU image publication can finish after the ordinary build. This adds the current GPU API contract so callers can build a GPU image, request single/multi-GPU or on-demand capacity, wait for readiness, and use the sandbox runtime safely.

Changes

  • Add GPU launch fields, metadata/capabilities, nullable runtimes, and 12–512 GiB GPU disk validation.
  • Add waitUntilReady() with transient-read retries, bounded polling, AbortSignal cancellation, terminal close reasons, and no automatic stop/recreate. Keep provisioning separate from the list API's supported status filters.
  • Add remote Dockerfile GPU publication, GPU-aware waits/cache identities/conflict joining, and readiness-verified image reuse. Reject unsupported prebuilt GPU imports.
  • Add sandbox.computerAction() through runtime authentication and token refresh; cover existing GPU network updates and authenticated ports.
  • Add shared Node/Python wire fixtures, type coverage, examples, and opt-in live GPU smoke tests.

Validation

  • yarn test — 872 passed across 33 files.
  • yarn typecheck, yarn lint, and yarn build — passed.
  • Final focused GPU/image-resolution run — 54 passed.
  • npm pack --dry-run --json — passed.
  • Live GPU smoke test was collected and skipped: no API key or GPU image is configured locally.

Consumer impact: Sandbox.runtime is now nullable, so direct URL access needs a readiness/null check. Explicit gvisor-cpu launches require a GPU, matching the current backend. GPU cache lookup verifies the latest 100 completed builds exposed by the API; older images safely rebuild when readiness cannot be verified. No package release is included.

Companion PR: Python SDK #147.

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.

1 participant