Skip to content

MiniClient: negotiate optional media capabilities - #525

Draft
jzhvymetal wants to merge 1 commit into
google:masterfrom
opensagetv-vibe:sagetv-review/miniclient-capability-protocol
Draft

jzhvymetal wants to merge 1 commit into
google:masterfrom
opensagetv-vibe:sagetv-review/miniclient-capability-protocol

Conversation

@jzhvymetal

@jzhvymetal jzhvymetal commented Sep 29, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • add explicit capability negotiation for optional media state, DVD navigation and disc policy, playback rate, and caption state
  • require negotiated support before sending new commands
  • preserve legacy behavior when a client or server does not recognize a capability
  • add focused protocol tests

Validation

  • Focused Java protocol tests passed in the Vibe extraction workspace.

Review state

Draft protocol proposal: identifiers, versioning, fallback behavior, and cross-client compatibility require OpenSageTV design approval before merge.


This replaces OpenSageTV#10, which was opened against an intermediate fork instead of the canonical SageTV repository. The topic was replayed without patch changes onto the current canonical master.

Maintenance triage (2026-09-29)

Disposition: draft protocol proposal; not requested for merge.

This is not a correction for an existing stock-client failure. It defines optional capabilities used by newer clients while preserving legacy fallback. The focused protocol tests demonstrate internal compatibility, but they do not establish that upstream should adopt the names, command, state ownership, or versioning model.

Do not merge without an upstream design discussion covering identifiers, negotiation/versioning, old-client and old-server behavior, every supported MiniClient implementation, and which capabilities are general SageTV contracts rather than Vibe features.

@google-cla

google-cla Bot commented Sep 29, 2026

Copy link
Copy Markdown

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

@jzhvymetal
jzhvymetal force-pushed the sagetv-review/miniclient-capability-protocol branch from a120146 to 175ed34 Compare September 29, 2026 12:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant