What's New
✨ Features
- Sandbox create metrics —
Sandbox.CreateAsyncnow reports fire-and-forgetsandbox.createlatency events to the lifecycle server on success and failure paths. Reporting never blocks callers and can be disabled withOPENSANDBOX_DISABLE_METRICS=1orDisableMetrics. #1341 - Client IP header — the SDK now best-effort detects the host intranet IPv4 and sends it as
OPEN-SANDBOX-CLIENT-IPon wrapper, raw, SSE, and code-interpreter HTTP paths. User-provided headers are never overwritten. #1326 - Attach to isolated sessions —
AttachAsync(sessionId)support 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/usernsavailability, and unavailable requested modes fail with503 NOT_SUPPORTED. #1320 - Exact snapshot name filtering — snapshot listing now supports an exact
namefilter. #1301 - Isolated session bind mounts and listing — isolated sessions can now receive explicit bind mounts, and the SDK exposes isolated session listing so callers can inspect active sessions. #1264 #1269
- Credential Vault placeholder substitutions — request matching now supports opt-in placeholders for path, query, header, and body surfaces, including passthrough auth bindings. #1251
🐛 Bug Fixes
- Isolated UID/GID range fix — isolated session UID/GID fields now use a wider integer type so values in the execd
uint32range deserialize and serialize correctly aboveInt32.MaxValue. #1298
📦 Misc
- Bumped C# sandbox SDK version and default User-Agent string for this release. #1384