Skip to content

v0.9.0 - Playlist Session Control Plane

Choose a tag to compare

@beastyrabbit beastyrabbit released this 22 Feb 22:01
· 254 commits to main since this release
75649bc

Infinitune v0.9.0

Features

  • Unified playlist sessions with the device-auth control plane so each playlist is treated as the control/session target.
  • Added house-wide control commands for automation and remote integrations.
  • Added a typed house sessions snapshot endpoint for API-first orchestration.

Fixes

  • Fixed authenticated owner ID mapping so playlist/device ownership checks use persisted user IDs correctly.
  • Prevented duplicate playlist session rooms by reusing existing playlist-backed room state.
  • Preserved playlist/session hydration in WebSocket auto-join flows.
  • Stabilized daemon reassignment and reconnect behavior after token/config updates.
  • Improved room play recovery for stale/disconnected session state.
  • Enforced authorization order and device ownership checks in control routes.
  • Invalidated control/session queries after command mutations to keep UI state current.

Developer and Testing Improvements

  • Expanded coverage across actor resolution, control routes, room WS behavior, and CLI room playback edge cases.
  • Added/updated API docs for house control endpoints.

Breaking Changes / Warnings

  • Custom clients that assumed room IDs as the primary control key should migrate to playlist/session-driven control flows.
  • Device assignment and control operations now rely on authenticated ownership semantics; ensure device token + user linkage is configured for remote control workflows.

Assets

  • House control UI screenshot: release-rooms-control.png