Goal
Expose Blaze sandbox management through one HTTP namespace and remove the former instance-route compatibility surface.
Required behavior
Blaze must register only these sandbox lifecycle and guest-operation routes:
GET /v1/sandboxes
POST /v1/sandboxes
GET /v1/sandboxes/{id}
DELETE /v1/sandboxes/{id}
POST /v1/sandboxes/{id}/exec
POST /v1/sandboxes/{id}/read
POST /v1/sandboxes/{id}/write
The former /v1/instances namespace must not be registered. Requests below it must return 404 Not Found without reading or changing sandbox lifecycle, runtime, or storage state.
Action-style reset, checkpoint, and destroy routes must not be registered under /v1/sandboxes. Canonical destruction remains DELETE /v1/sandboxes/{id}.
This route removal does not rename the existing JSON fields, including instance and instance_id, and does not change the successful sandbox routes' status codes or resource effects.
Checkpoint capture and checkpoint listing are delivered separately by #2444 and #2472.
Acceptance criteria
- Production routing contains no
/v1/instances handler or compatibility adapter.
- The seven sandbox routes above use the existing lifecycle and guest-operation implementations.
- Tests prove that former instance routes and unregistered sandbox action routes return
404 without changing sandbox state.
- Tests cover successful sandbox create, list, get, exec, read, write, and delete operations.
- English and Chinese component documentation and user guidance describe the route removal and client migration.
- The component lifecycle design records the namespace and ownership boundary.
- No prerequisite pull request other than the current
main branch is required for this route change.
Implemented by #2585.
Goal
Expose Blaze sandbox management through one HTTP namespace and remove the former instance-route compatibility surface.
Required behavior
Blaze must register only these sandbox lifecycle and guest-operation routes:
GET /v1/sandboxesPOST /v1/sandboxesGET /v1/sandboxes/{id}DELETE /v1/sandboxes/{id}POST /v1/sandboxes/{id}/execPOST /v1/sandboxes/{id}/readPOST /v1/sandboxes/{id}/writeThe former
/v1/instancesnamespace must not be registered. Requests below it must return404 Not Foundwithout reading or changing sandbox lifecycle, runtime, or storage state.Action-style reset, checkpoint, and destroy routes must not be registered under
/v1/sandboxes. Canonical destruction remainsDELETE /v1/sandboxes/{id}.This route removal does not rename the existing JSON fields, including
instanceandinstance_id, and does not change the successful sandbox routes' status codes or resource effects.Checkpoint capture and checkpoint listing are delivered separately by #2444 and #2472.
Acceptance criteria
/v1/instanceshandler or compatibility adapter.404without changing sandbox state.mainbranch is required for this route change.Implemented by #2585.