improvement(security): isolated-vm env construction (v8s escape case) - #6116
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
PR SummaryHigh Risk Overview A regression test in Runtime alignment for the sandbox worker: CI ( Reviewed by Cursor Bugbot for commit 0e5c067. Configure here. |
Greptile SummaryThe PR reduces sandbox-worker secret exposure and updates its runtime compatibility.
Confidence Score: 5/5The PR appears safe to merge, with the worker allowlist covering all environment variables currently consumed by the sandbox process. The sandbox worker reads only the two forwarded IVM limit variables, both retain worker-side defaults, and the production image rebuilds the native isolated-vm addon against its Node.js 24 runtime.
|
| Filename | Overview |
|---|---|
| apps/sim/lib/execution/isolated-vm.ts | Adds a complete environment allowlist for the current worker requirements and applies it when spawning workers. |
| apps/sim/lib/execution/isolated-vm.test.ts | Adds regression coverage confirming sandbox workers do not inherit application secrets or unexpected variables. |
| docker/app.Dockerfile | Upgrades the sandbox-worker runtime to Node.js 24 while retaining the native isolated-vm rebuild step. |
| apps/sim/package.json | Upgrades isolated-vm to 6.1.2 for the updated runtime. |
| .github/workflows/test-build.yml | Aligns the primary test and build jobs with Node.js 24. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart LR
App[Application process<br/>full environment] -->|buildWorkerEnv| Allowlist[Explicit environment allowlist]
Allowlist -->|spawn Node 24| Worker[Sandbox worker process]
Worker --> Isolate[isolated-vm isolate]
Secrets[Database and provider secrets] -. blocked .-> Worker
Reviews (1): Last reviewed commit: "upgrade main node to v24" | Re-trigger Greptile
Summary
Type of Change
Testing
Tested manually
Checklist