python/sandbox/v0.1.15

Alishahryar1/free-claude-codepython/sandbox/v0.1.15Jul 24, 2026by ninan-nn

AI Summary

This release adds retrying pool acquire policies, metrics reporting, and a one-call destroy helper for sandbox management.

Key Highlights

  • Added retrying pool acquire policies (`RETRY_NEXT_IDLE`).
  • Added sandbox create metrics reporting.
  • Added ability to attach to isolated sessions.
  • Added one-call destroy helper.

New Features

  • Retrying pool acquire policies.
  • Sandbox create metrics.
  • Client IP header.
  • Attach to isolated sessions.
  • UID mode availability.
  • Exact snapshot name filtering.
  • Isolated session bind mounts and listing.
  • Credential Vault placeholder substitutions.
  • One-call destroy helper.

Full Release Notes

## What's New

### ✨ Features

- **Retrying pool acquire policies** — Python sandbox pools now support `RETRY_NEXT_IDLE` and `RETRY_NEXT_IDLE_THEN_CREATE`, allowing `acquire` to skip stale idle candidates before failing or falling back to direct create. Existing policies keep their current behavior; `max_acquire_retries` defaults to 3. #1347
- **Sandbox create metrics** — async and sync `Sandbox.create` now report fire-and-forget `sandbox.create` latency events to the lifecycle server. Reporting never blocks callers and can be disabled with `OPENSANDBOX_DISABLE_METRICS=1`. #1307
- **Client IP header** — the SDK now best-effort detects the host intranet IPv4 and sends it as `OPEN-SANDBOX-CLIENT-IP` on outbound requests. Detection is cached and never overwrites a user-provided header. #1326
- **Attach to isolated sessions** — `sandbox.isolation.attach(session_id)` lets stateless workers rebuild a handle for an existing execd isolated session while that in-memory session is still alive. #1295
- **UID mode availability** — isolated session responses now expose per-mode `setpriv` / `userns` availability, and unavailable requested modes fail with `503 NOT_SUPPORTED`. #1320
- **Exact snapshot name filtering** — snapshot listing now supports an exact `name` filter. #1301
- **One-call destroy helper** — `Sandbox.destroy()` and `SandboxSync.destroy()` now perform remote termination plus local cleanup, preserving the original termination exception if `kill()` fails. #1291

### 📦 Misc

- Bumped Python sandbox SDK version, default User-Agent strings, and generated lifecycle client comments for this release. #1384

### 👥 Contributors

- @FAUST-BENCHOU
- @Pangjiping
- @jianpingpei
- @ninan-nn
- @ruirui6946