feat: sync with upstream API changes 2026-04-20#18
Conversation
There was a problem hiding this comment.
This PR only modifies api/upstream-openapi.json. No CLI commands, client methods, or tests are changed, so backwards compatibility is unaffected.
What changed in the spec:
opi__api__task_models__ProcessingStatusis renamed toProcessingStatus(the richer task-level schema). References across the six modified v2 endpoints are updated accordingly.- The old simpler
ProcessingStatus(router-level) is renamed toopi__api__router__ProcessingStatus. Two schemas that pointed to it are updated. - New
ComponentFailureInfoschema added, andcomponent_failures: list[ComponentFailureInfo] | nullis added toProcessingStatus.
No issues with the spec update itself — the rename is consistent and all dangling opi__api__task_models__ProcessingStatus references are resolved.
One minor observation for a future follow-up:
The new component_failures field in ProcessingStatus carries per-component failure details (failure_type, message, logs). The CLI never reads the processing field from result objects (confirmed: no usage in src/), so this data is silently dropped today. When tasks fail, users only see the generic "Task failed" string. Surfacing error / component_failures in error output would improve debuggability, but that is a separate ticket — nothing wrong with this spec-only sync PR.
API Sync - 2026-04-20
Upstream API changes detected and auto-implemented by Claude.
API diff
New Endpoints: None
Deleted Endpoints: None
Modified Endpoints: 6
POST /api/v2/projects/{project_name}/:refresh
POST /api/v2/projects/{project_name}/:upsert-deployment
POST /api/v2/projects/{project_name}/components
POST /api/v2/projects/{project_name}/deployments/{deployment_name}/:refresh
POST /api/v2/projects/{project_name}/deployments/{deployment_name}/components
POST /api/v2/projects/{project_name}/services
Coverage
Upstream API: 47 current endpoints
Covered by CLI: 33
Not covered: 14
Deprecated v1: 10 (skipped, CLI uses v2)
Non-API/infra: 0 (skipped)
Uncovered endpoints:
GET /api/federation/health
Federation Health [federation]
GET /api/federation/peers
List Peers [federation]
POST /api/projects/{project_name}/registries/by-credentials
Add Registry By Credentials [v1 (deprecated)]
POST /api/projects/{project_name}/registries/by-secret
Add Registry By Secret [v1 (deprecated)]
POST /api/tasks
Create Task [tasks]
POST /api/v1/backup/namespace/{namespace}/all
Backup Namespace All [backup]
POST /api/v1/backup/pvc/{namespace}/{pvc_name}
Backup Pvc [backup]
POST /api/v1/projects/{project_name}/images/push
Push Image [images]
POST /api/v1/restore/project/{project_name}/deployment/{deployment_name}
Restore Deployment Resource [restore]
GET /api/v1/restore/snapshots/{cluster}/{namespace}/{pvc_name}
List Pvc Snapshots [restore]
POST /api/v2/admin/cleanup/trigger
Trigger Cleanup [admin]
GET /api/v2/admin/marked-for-deletion
List Marked For Deletion [admin]
DELETE /api/v2/admin/marked-for-deletion/{mark_id}
Delete Mark [admin]
POST /api/v2/admin/reconciliation/trigger
Trigger Reconciliation [admin]
Review carefully before merging. All changes should be additive only.