You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add the Vercel isolated sandbox provider — the first real implementation of the isolated factory abstraction declared in #3 (Types). Provisions a Firecracker microVM via @vercel/sandbox. Imported from @missingstudio/sanddune/sandboxes/vercel.
Implements the full isolated handle contract: exec (with optional streaming via onLine), copyIn (file or directory), copyFileOut, close, and worktreePath (the sandbox-side path where the repo lives). sanddune handles syncing code in (via copyIn) and extracting commits out (via copyFileOut + git plumbing).
Parent
#1
What to build
Add the Vercel isolated sandbox provider — the first real implementation of the isolated factory abstraction declared in #3 (Types). Provisions a Firecracker microVM via
@vercel/sandbox. Imported from@missingstudio/sanddune/sandboxes/vercel.Implements the full isolated handle contract:
exec(with optional streaming viaonLine),copyIn(file or directory),copyFileOut,close, andworktreePath(the sandbox-side path where the repo lives). sanddune handles syncing code in (viacopyIn) and extracting commits out (viacopyFileOut+ git plumbing).Default branch strategy: merge-to-head (per #3 — isolated providers reject
head).Acceptance criteria
vercel()factory exported from@missingstudio/sanddune/sandboxes/vercelcreateIsolatedSandboxProvider@vercel/sandboxexec(withonLinestreaming),copyIn(file or directory),copyFileOut,close,worktreePathexecreturns{ stdout, stderr, exitCode }copyInto sync the repo into the sandbox at start,copyFileOut+ git ops to extract commits at endheadrejected at type level (already enforced in [Types] Public types, interfaces, entry-point stubs (no implementation) #3) and runtimeenvprovider option supportednamefield exported for telemetry/error messages (e.g. "vercel sandbox failed: ...")VERCEL_TOKEN) confirms a commit landsbun testandbun run typecheckpassBlocked by