Add getLiveTableState query and live-stream operations #288

Merged
colonelpanic merged 1 commits from live-table-state into master 2026-07-10 02:12:32 +00:00
Owner

Schema + operations for following a currently-recording stream in Shot Lab on a separate device.

  • getLiveTableState(videoId: Int!): LiveTableStateGQL! — server grabs a recent frame of the (possibly in-progress) video, applies the stream's stored homography, runs ball detection, and returns the table state in the canonical plane frame (LiveTableStateGQL { videoId, frameIndex, tableState }).
  • GetLiveTableState operation (shot_simulation.gql) and a lightweight GetLiveStreams picker operation (live_streams.gql) over getFeedVideos with isStreamCompleted: false, feedInput: {allUsers: true}, includePrivate: MINE.
  • Regenerated schema.gql (from the backend branch) and codegen outputs.

Branched from current master (63a376e), so the schema additions stack on the pending tier/pool-hall fields.

Merge order: this PR first, then backend railbird#live-table-state, then mobile railbird-mobile#shot-lab-live-follow.

🤖 Generated with Claude Code

Schema + operations for following a currently-recording stream in Shot Lab on a separate device. - `getLiveTableState(videoId: Int!): LiveTableStateGQL!` — server grabs a recent frame of the (possibly in-progress) video, applies the stream's stored homography, runs ball detection, and returns the table state in the canonical plane frame (`LiveTableStateGQL { videoId, frameIndex, tableState }`). - `GetLiveTableState` operation (shot_simulation.gql) and a lightweight `GetLiveStreams` picker operation (live_streams.gql) over `getFeedVideos` with `isStreamCompleted: false`, `feedInput: {allUsers: true}`, `includePrivate: MINE`. - Regenerated schema.gql (from the backend branch) and codegen outputs. Branched from current master (63a376e), so the schema additions stack on the pending tier/pool-hall fields. **Merge order**: this PR first, then backend railbird#live-table-state, then mobile railbird-mobile#shot-lab-live-follow. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
colonelpanic added 1 commit 2026-07-09 08:21:26 +00:00
Add getLiveTableState query and live-stream operations
All checks were successful
Tests / Tests (pull_request) Successful in 10s
a150e1a300
- schema: getLiveTableState(videoId) returning LiveTableStateGQL
  (videoId, frameIndex, tableState)
- operations: GetLiveTableState in shot_simulation.gql, lightweight
  GetLiveStreams listing in live_streams.gql
- regenerated TS client outputs

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
colonelpanic merged commit 958057764c into master 2026-07-10 02:12:32 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: railbird/railbird-gql#288
No description provided.