Porting from Daytona
Use this mapping to plan a port; it is not a compatibility promise. Names are used nominatively. Based on each provider's public documentation; check their current docs before migrating.
Call mapping
| Source call | CE call or workflow | Behaves differently |
|---|---|---|
| Daytona.create / get / list | Client.computers.create / get / list | Preserve CE image/size, ready waiter and list envelope. |
| sandbox.process.executeCommand | computer.exec | Use argv; optional data idempotency is caller-owned and replay returns process metadata. |
| sandbox.process.createSession / executeSessionCommand | Processes or PTY sessions | A retained process and a terminal are distinct CE resources, not a shared shell by default. |
| sandbox.fs.uploadFile / downloadFile | computer.files.write / read | CE launch transfers are bounded raw bytes; signed large-file URLs are not available at launch. |
| getPreviewLink / getSignedPreviewUrl | Previews, program tokens and share links | CE clean browser exchange, use counts and grant revocation are explicit. |
| setAutostopInterval / refreshActivity | PATCH timeout_seconds or POST extend | CE run deadlines are not activity-reset idle timers. |
| archive / fork | Stop or image/create workflow | No CE launch archive/fork-running equivalence is promised. |
Validate the port
Replace authentication, error parsing and list handling explicitly. Keep separate control/data credentials and inspect each accepted operation rather than assuming a synchronous return. Test expiry, revoked authority, an interrupted response and cleanup against the exact CE SDK/API version. Do not carry vendor-specific prices, timing claims or lifecycle defaults into CE configuration.
Dory is in development; these pages describe the planned service and may change. Questions: support@computeengines.com.