Changelog
2026-06-15
Payload building moved out of domain into StreamerClient
Why: buildCastisPayload was living in domain/playback/helper.go, meaning the playback domain had to know Castis-specific field names ("transcoders", top-level "url"). That knowledge belongs with the client that talks to Castis, not the domain orchestrating channels.
What changed: Moved to pkg/StreamerClient/client.go as BuildPayload. playback/helper.go's buildCastisPayload deleted; call sites updated to streamerclient.BuildPayload(...).
CoreAPI: domain/playback, pkg/StreamerClient
Earlier
BuildStreamID,CreateStream,DeleteStream,GetStreams,GetTraffic,PlaybackURL,ProbeUDPestablished as the initial client surface, called fromdomain/playbackchannel create/delete flows.service.Streamerestablished as the DB record passed into every client function —Host/APIPortfor server-side calls,PublicHost/HTTPPortfor browser-facing playback URLs.