Files
spinifex/contracts/cluster/v1

Cluster v1 contracts

This package owns the versioned cluster control-plane wire contracts. It is not an AWS tenant-facing API: it lets platform consumers identify responding daemon nodes and inspect their health.

NodesDiscoverSubject retains the deployed spinifex.nodes.discover route. NodeDiscoverResponse.Node is the node identifier used for responder-set coverage. Do not change either incompatibly in this package; add a new version when a wire change is required.

NodeHealthSubject retains the deployed per-node NATS route, while NodeHealthResponse is also the daemon HTTPS /health representation. Do not change their subject or JSON shape incompatibly in this package; add a new version when a wire change is required.

NodeVMsSubject retains the deployed spinifex.node.vms fan-out route. NodeVMsResponse is the VM inventory reply used by the SPX operator CLI and by EKS host lookup. It is distinct from node status and capacity reporting: do not add scheduling or physical-GPU inventory merely because those callers also inspect nodes. Do not change its subject or JSON shape incompatibly; add a new version when a wire change is required.

NodeStatusSubject retains the deployed spinifex.node.status fan-out route. NodeStatusResponse carries daemon-reported status, schedulable capacity and physical-GPU inventory for the SPX operator CLI and EC2/EKS placement callers. It is an observation contract, not the owner of capacity, scheduling or GPU allocation policy. Do not change its subject or JSON shape incompatibly; add a new version when a wire change is required.