fix: configure Sandbox0 benchmark resources and lifetime - #266
Merged
kisernl merged 2 commits intoAug 3, 2026
Conversation
laotoutou
force-pushed
the
fix/sandbox0-benchmark-hard-ttl
branch
from
July 31, 2026 20:38
5a85a04 to
f0c108f
Compare
laotoutou
marked this pull request as ready for review
July 31, 2026 20:41
Contributor License AgreementAll contributors are covered by a CLA. |
Contributor
Sandbox Benchmark ResultsSequential
Staggered
Burst
View full run · SVGs available as build artifacts |
Contributor
Sandbox Dax Benchmark Results
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed
Why
The TTI workloads only create a sandbox and run the first
node -vreadiness command. They do not need the 16 GiB footprint used by the DAX build workload, especially when staggered and burst runs create up to 100 sandboxes.A cancelled GitHub Actions job can also terminate the Node.js process before its
finallyblock callsdestroy(). Without a hard TTL, that can leave a claimed Sandbox0 sandbox running indefinitely.DAX allows up to 10 minutes per sandbox, so a 15-minute hard TTL leaves cleanup headroom. The DAX option merge overrides the 128 MiB base memory with 16 GiB while preserving the hard TTL.
Sandbox0 resource profile
Normal runs still call
destroy()immediately. The hard TTL is only a server-side fallback for interrupted or failed cleanup.Impact
This only changes Sandbox0 benchmark sandboxes. Other providers are unaffected.
Validation
pnpm typecheck@benchsdk/client,@benchsdk/runner, andcreate-bench@benchsdk/clienttests: 118 passed, 1 skipped@benchsdk/runnertests: 56 passedcreate-benchtests: 1 passed