Skip to content

v0.2.3 — Per-channel sync visibility & controls

Choose a tag to compare

@AlpineArchitecture AlpineArchitecture released this 04 Jun 19:55
· 153 commits to master since this release

A follow-up to the Live Channels release (v0.2.2) that fills in the per-channel visibility and control the original plan called for.

Added

  • Per-channel "last synced" badge on the Channels page (e.g. "synced 2h ago" / "never"), backed by a new cosmetic data/recipe_state.json. It's UI-only — the change-detection diff still reads live Tunarr — and lives in its own file so it never races with channels.json edits or deploys.
  • "Save & Sync now" in the channel editor (live channels): saves the channel and immediately runs a cycle scoped to just that channel, applying the recipe in place without leaving the editor.
  • "Next run" on the Dashboard Auto-Updates card (e.g. "next ~in 11h").

Changed

  • /api/recipes/status now returns next_run_seconds and a per-channel channels map; /api/recipes/run accepts only=N to scope a cycle to one channel. The scheduler's last-run timestamp moved to wall-clock time.

Notes

  • Source/target agnosticism (Jellyfin source, ErsatzTV target) is captured as an explicit future goal with the in-place-update contract documented — intentionally not built yet (no second source/target to validate an adapter against).

Full notes in CHANGELOG.md.