Related server scope: Silo-Server/silo-server#1279 and Silo-Server/silo-server#1280.
The server adds a staged Watch Together lobby. A lobby may have selected_content_id set while nothing is playing; selection_revision advances on start and stop, while staging only advances generation. Native clients need to understand this contract before exposing the new flow.
Acceptance:
- Read
/api/v2/watch-together/capabilities and respect individual feature flags, including unavailable member-state, picker, or socket support.
- Enter playback only for
phase == playing. Render a selected lobby item as staged; handle start, stop back to the lobby, and mode switches.
- Use
lobby_ready for the advisory lobby check and keep it distinct from playback buffering readiness. Consume membership and readiness across API servers.
- Integrate the bounded member-state and picker reads under the current profile and room proof. Handle inaccessible IDs being omitted.
- Treat selection revision as the playback epoch; test stop/start, reconnect, host rejoin at the room position, and stale responses after profile replacement.
Apple follow-up scope: track the native contract and UI work for any future Watch Together integration. This ticket does not schedule a feature launch. Verify the state transitions in shared client logic and validate each enabled Apple platform before release.
AI disclosure: drafted during the server PR review using Codex in T3 Code, model gpt-6-astra, gh CLI, and repository source inspection. No native implementation or device validation was performed. The server review reproduced and repaired shared membership, catalog access, readiness, and capability-reporting defects; native implementation remains the work tracked here.
Related server scope: Silo-Server/silo-server#1279 and Silo-Server/silo-server#1280.
The server adds a staged Watch Together lobby. A lobby may have
selected_content_idset while nothing is playing;selection_revisionadvances on start and stop, while staging only advances generation. Native clients need to understand this contract before exposing the new flow.Acceptance:
/api/v2/watch-together/capabilitiesand respect individual feature flags, including unavailable member-state, picker, or socket support.phase == playing. Render a selected lobby item as staged; handle start, stop back to the lobby, and mode switches.lobby_readyfor the advisory lobby check and keep it distinct from playback buffering readiness. Consume membership and readiness across API servers.Apple follow-up scope: track the native contract and UI work for any future Watch Together integration. This ticket does not schedule a feature launch. Verify the state transitions in shared client logic and validate each enabled Apple platform before release.
AI disclosure: drafted during the server PR review using Codex in T3 Code, model
gpt-6-astra, gh CLI, and repository source inspection. No native implementation or device validation was performed. The server review reproduced and repaired shared membership, catalog access, readiness, and capability-reporting defects; native implementation remains the work tracked here.