Known Issues
Current limitations and workarounds.
Known Issues
Step endpoint path mismatch
The SDK's complete_step / fail_step send requests to PATCH /api/v1/steps/{step_id}, but the backend expects PATCH /api/v1/runs/{run_id}/steps/{step_id}. These calls will 404 against the current backend.
Workaround: Use the decorator-based API (@step), which handles step lifecycle internally. If using the client directly, be aware that step completion/failure may not persist to the backend.
register_step response shape
The SDK expects the created Step in the response body, but the backend returns the updated Run object. The SDK needs to extract the step from the run's steps list.
Status: Pending fix in either SDK or backend.
Checkpoint and budget/policy endpoints
The SDK transport layer has methods for save_checkpoint, load_checkpoint, check_budget, and check_policy, but the backend has not yet implemented the corresponding routes. These calls will return errors against the HTTP transport.
Workaround: Checkpoints work fully with multirun.init_local() (in-memory transport). Use local transport for testing checkpoint/replay flows.