Skip to content

fix(vercel): honor author-supplied runtime instead of forcing the eve image#257

Open
serhiizghama wants to merge 2 commits into
vercel:mainfrom
serhiizghama:fix/vercel-honor-runtime
Open

fix(vercel): honor author-supplied runtime instead of forcing the eve image#257
serhiizghama wants to merge 2 commits into
vercel:mainfrom
serhiizghama:fix/vercel-honor-runtime

Conversation

@serhiizghama

Copy link
Copy Markdown

Closes #239.

vercel({ runtime: "python3.13" }) was silently ignored. createVercelEveImageSandbox always spread __image: "vercel/eve:latest" onto the create call, and since __image takes precedence over runtime in the SDK, the requested runtime never reached the sandbox — no error, no warning, just the default image.

The eve image is only meant to be a default base, so I made it conditional: when the author supplies a runtime, the image is left off and the runtime flows through to Sandbox.create as-is. This mirrors how source already works as a template base — runtime becomes the base for the template create and is stripped from session creates by the existing snapshot path. The base setup script only requires bash, which the supported runtimes provide, so nothing else changes.

There was already a test asserting runtime reaches the SDK, but it injected a mock createSandbox that bypasses the __image binding, so the real drop went unnoticed. Added a test that goes through the default binding and checks the runtime is forwarded and __image is absent.

@vercel

vercel Bot commented Jun 24, 2026

Copy link
Copy Markdown

@serhiizghama is attempting to deploy a commit to the Vercel Team on Vercel.

A member of the Team first needs to authorize it.

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.

vercel() sandbox backend ignores the runtime option and always runs vercel/eve:latest

1 participant