What's Changed
- chore: bump version to 1.9.0 by @jinbai340997 in #1078
- feat(admin): add image registry mirror lookup for sandbox start by @jake11-oho in #1082
- fix: unify archive_prefix default to
rock-archives/for config and CLI by @jinbai340997 in #1087 - feat(sandbox): inject INSTANCE_ROCK_REGISTRY env var into launched sandboxes by @jake11-oho in #1090
- docs(sandbox): add sandbox proxy user guide #1083 by @zhongwen666 in #1084
- feat(sdk): add patch field to VerifierConfig (#1097) by @xdlkc in #1098
- feat(sdk): add Sandbox.attach() for cross-process sandbox lifecycle by @zhangjaycee in #1091
- fix(admin): guard FileCleanupTask Step 2 empty-dir delete with -mmin by @jinbai340997 in #1108
- Feat/fiber support cpu overcut 0521 by @zhongwen666 in #1117
- fix(model-service): use file-based transfer for large anti-call-llm payloads by @jingyushen in #1116
- docs: add career page by @kkkky123 in #1118
- feat(archive): define storage interfaces with S3, OSS, and Registry V2 implementations by @zhangjaycee in #1094
- feat(admin): add RESTful sandbox restart API endpoint by @zhangjaycee in #1125
- fix(admin): always reset registry credentials on mirror image rewrite (#1128) by @jake11-oho in #1129
- chore: bump version to 1.9.2 by @jake11-oho in #1131
- docs: add v1.9.0 documentation and promote it as latest in README by @jinbai340997 in #1134
- fix(admin): support OCI manifest format in mirror image probe (#1135) by @jake11-oho in #1136
- docs: fix v1.9.0 release date from TBD to June 11, 2026 by @jinbai340997 in #1140
- fix(archive): self-healing cleanup for stale temp dirs and soft-signal trap by @jinbai340997 in #1142
- feat(sdk-py): server-first OSS config + prefix-aware object keys (hardened) by @jinbai340997 in #1151
- feat(sdk-ts): server-first OSS config + prefix-aware object keys (hardened) + perf by @jinbai340997 in #1153
- feat(deployments): add XFS project quota fallback for containerd image store (#1123) by @jake11-oho in #1124
- feat(deploy): enforce disk quota on anonymous volumes and clean up on removal by @zhangjaycee in #1154
- feat: support configurable runtime env by @zhangjaycee in #1149
- feat(admin): probe original namespace before mirror namespace in image registry mirror (#1161) by @jake11-oho in #1162
- docs: add missing sandbox_proxy.md to 1.9.x versioned docs by @zhangjaycee in #1164
- feat(sandbox): add user-facing disk quota with Ray scheduling and metrics by @zhangjaycee in #977
- Remove dead get_status_v2 code path and GET_STATUS_SWITCH flag by @zhongwen666 in #1178
- feat(sandbox): record state transition history and fix stale phases on restart by @zhangjaycee in #1167
- feat(sdk): inject sandbox_image and sandbox_id into harbor labels by @zhangjaycee in #1182
- feat(admin): run proxy as multi-worker uvicorn via app factory (#1191) by @zhongwen666 in #1194
- feat(oss): route sandbox log archive over in-VPC endpoint with fallback by @jinbai340997 in #1188
- feat(logger): multi-worker safe log append with deploy-time reset (#1192) by @zhongwen666 in #1195
- feat(proxy): reuse shared httpx clients instead of per-request clients (#1193) by @zhongwen666 in #1196
- fix(metrics): exclude BadRequestRockError from request.failure metrics (#1138) by @jake11-oho in #1139
- feat(ts-sdk): align TypeScript SDK with Python SDK by @xdlkc in #1137
- perf(admin): adopt uvloop/httptools and simplify request metrics by @zhongwen666 in #1201
- perf(admin): reuse shared httpx client for registry manifest probes by @zhongwen666 in #1205
- Add dedicated Ray executor thread pool and improve error observability by @zhongwen666 in #1209
- Fix admin event-loop starvation: move DB layer to sync engine + dedicated thread pool by @zhongwen666 in #1211
- Proxy get_status endpoint and lazy state machine init in SandboxManager by @zhongwen666 in #1213
- Add scheduler task to auto-restart exited Docker daemon on workers by @zhongwen666 in #1190
- feat(archive): integrate archive lifecycle into sandbox state machine, operator, and reconciler by @zhangjaycee in #1095
- fix(archive): add RayOperator.get_remote_status override so archiving state advances by @zhangjaycee in #1218
- fix(rocklet): skip bash installation when already present in musl containers by @zhangjaycee in #1219
Full Changelog: v1.9.6...v1.10.0