Read-only playback observability for venue audio, the follow-on to the probe (#540) and the read-first counterpart of #563 (control, nice-to-have).
Venue staff already control the Sonos through the Sonos app; Hydra does not need to drive it. What Hydra lacks is eyes: is the Bar PA playing, from which source, at what volume. Read-only state completes the venue picture in hydraneck and hydravenues and costs no actuator-authorization design.
x-rincon-stream: = line-in, x-rincon: = grouped slave, URL = app stream/radio), RenderingControl GetVolume/GetMute.hydraroar status [--targets ...] printing one JSON document per the contract discipline (additive fields only).POST /api/v1/probe with "status": true (or a sibling endpoint) returning per-player transport state, source kind, volume, mute alongside the existing describe fields.Same as the probe: routed venues via the scale, cloud-seven via the CLI on cosmic-pretzel-98 until #550/#554.
On cloud-seven via cosmic: status for Bar and Yoga shows transport state, source kind, volume; play something from the Sonos app in the venue (or line-in) and see the state change on the next poll. hydraneck scan carries the fields through to /network; hydravenues renders them on the two audio assets. Docs per repo convention.
hydraroar status CLI, "status": true on the probe API. Read-only throughout.Live verification on cosmic-pretzel-98 against both cloud-seven Ports: Bar STOPPED / source none / vol 100 / variable output; Yoga STOPPED / vol 0 - with a variable line-out, playback to Yoga is silent at the PA until the volume is raised (real finding, flag to the venue). The PLAYING/line-in transition remains to be observed during actual venue use.
Remaining scope: the scale-side status merge lights up per venue only when the scale can reach the players (#550); cloud-seven works via the CLI meanwhile. GENA push eventing stays the later refinement (point 5).
The scoped feature is delivered and verified: status reads live (hydraroar v0.3.0), carried by hydraneck v0.15.1 and shown by hydravenues v0.6.2. What remains is not this issue's scope: