Get Workers
GET /system/workersPer worker: id, lanes, slots busy, heartbeat age, version (annex 15 §8).
The roster is fleet-wide and every admin sees all of it, deliberately (D-2478). A
worker is not a tenant asset: one process claims runs from every workspace in turn, so
there is no per-tenant worker for a per-tenant answer to be about — worker_registration
has no organization_id and no workspace_id, and the row carries nothing that
belongs to a tenant. It sits on the same catalogue policy as model_catalog_entry
(D-092): readable by anyone, writable only with platform access, which no tenant role
holds. Annex 05 §6.11 pins this route’s floor at admin, so narrowing it to operator
to avoid the question would be a contract change made for a reason that does not exist.
The scope bound here is the caller’s own, not an exemption, for the reason
/system/queue gives — the difference is that the catalogue predicate does not filter by
it, and that is the schema saying the same thing this docstring does (RULE SC-1).
Responses
Section titled “Responses”| Status | Description | Body |
|---|---|---|
200 | Successful Response | WorkersStatus |
Example
Section titled “Example”curl -X GET https://your-deployment.example.com/system/workers \ -H "Authorization: Bearer $COBRE_TOKEN"Response — WorkersStatus
Section titled “Response — WorkersStatus”| Field | Type | Notes | |
|---|---|---|---|
workers | WorkerStatus[] | required | — |
alive | integer | required | — |
lanes_served | string[] | required | — |
slots_total | integer | required | — |
slots_busy | integer | required | — |