What's New
✨ Features
-
Add sandbox metadata patch support to the Python SDK. Async and sync
Sandbox/SandboxManagerflows can now apply JSON merge-patch updates through the new metadata patch API, including add, update, and delete behavior for metadata keys. The generated lifecycle bindings and handwritten adapters were updated to match the new spec and server implementation. #857 #861 #863 -
Add stable Diagnostics API support to the Python SDK. Async and sync clients now expose
get_diagnostic_logsandget_diagnostic_eventsfrom bothSandboxandSandboxManager, backed by generated diagnostic client bindings, adapters, converters, and focused tests.scopeis required for the stable API; existing legacy DevOps behavior is preserved for old clients, while the current open-source server returnsDIAGNOSTICS_NOT_IMPLEMENTEDfor stable diagnostic requests until the backend implementation lands. #869
🐛 Bug Fixes
- Tune Python sandbox pool degraded warmup backoff to reduce backend and quota pressure during prolonged create failures. The degraded retry window now starts at an effective 30 seconds, grows up to a 1-day cap, and avoids advancing exponential attempts more than once for multiple concurrent warmup failures in the same reconcile batch. #865 #873
👥 Contributors
Thanks to these contributors ❤️