Seen 2026-08-19 ~23:50 on cosmic-pretzel-98 (node-4c2be4b0) AND boom-pickle-38 (node-74f9fbf2), every 30s in hydrabody.log:
[sunshine] trim: list clients failed: parsing clients: json: cannot unmarshal object into Go value of type []sunshine.ClientInfo
The current Sunshine build returns the clients list as a JSON object, hydrabody expects a bare array. Consequence: the fast stale-client trim never runs, so a stalled stream (e.g. iPad app backgrounded mid-stream) holds the body until the slower grace-period watchdog force-stops it. Observed today: iPad heads at sint-niklaas-tourism-office stalled both eligible bodies; watchdog recovered them after the grace period (cleanup logged 23:47:20 on cosmic-pretzel-98).
Fix: parse the object shape (or both shapes) in hydrabody's sunshine client, then verify trim runs clean on both bodies.