What's New
Behavior Changes
- Sandbox Pool now skips idle sandboxes that are too close to expiry before returning them from
pool.acquire(). This avoids a race wherecheckReadycan time out because the selected sandbox expires server-side before it can be renewed. The default threshold ismin(60s, idle_timeout / 2)and can be disabled withacquire_min_remaining_ttl=timedelta(0). #986
Features
- Added
skip_accumulationsupport for execution handlers. When enabled, stdout/stderr events are still delivered to callbacks but are not appended toExecutionLogs, allowing long-running or high-output executions to stream with constant memory. #990 - Added SDK model support for PVC auto-provisioning fields. #749
- Added
secure_accesssupport for sandbox creation and endpoint access headers. This is opt-in and currently supported by Kubernetes ingress gateway mode. #745
Bug Fixes
- The Python SSE parser now tolerates
traceback: nullfrom older or mixed execd deployments, keeping command-start error handling compatible across versions. #701 - Pool warmup now renews sandboxes before returning them to idle state, keeping store TTL and server-side TTL aligned. #986
Misc
- Updated dependency lockfiles, including
idnaandpytestupdates from Dependabot.