# US-024 — Enhanced availability map with per-node health details Status: done Priority: Medium Stage: Implemented ## Context `GET /v1/coverage/` returns band-level coverage (start_layer, end_layer, node_count) but gives no visibility into which specific nodes are in each band or whether they are alive. Operators debugging a split-model deployment need to see node-level health at a glance. ## Format decision Both: band metadata + node list grouped under each band. Dead nodes included with `healthy: false` so operators can see them. ## Acceptance criteria - [ ] Each band in the response includes `nodes: [{node_id, endpoint, healthy, queue_depth, last_seen_s}]` - [ ] `healthy` is `true` iff last heartbeat < `heartbeat_timeout` seconds ago - [ ] Existing band fields (`start_layer`, `end_layer`, `node_count`) preserved - [ ] Tests updated to check band fields individually (not exact dict comparison) - [ ] `python -m pytest` passes