Skip to content

v11.14.0

Choose a tag to compare

@WhispersOfJ WhispersOfJ released this 14 Aug 11:27
eafa6da

11.14.0 (2026-08-14)

Features

  • --anime/--sonarr-anime flags across fish CLI, new mdblist tracking commands (fee0098)
  • add curated software catalog (Phase 02 of the v3 design treatment) (22d00cb)
  • add disk health, live host resources, and backup UI (Phase 03) (321a8be)
  • add GAPS-2 (collection/franchise gap detection for movies and TV) (3e7eee1)
  • add host-privileged-action helper (reboot, pacman sync/upgrade) (c627a61)
  • add Letterboxd cache, tracked-list, and sync-log models (a20bfa6)
  • add news.newshosting.com as tertiary nzbdav usenet provider (ed790b0)
  • add ntfy (shared push-notification sink for Radarr/Sonarr/Prowlarr) (2b70fae)
  • add Organizr (single landing dashboard for the whole stack) (7981026)
  • add persisted settings and rack-console redesign to control-panel (8822d7b)
  • add plex-marked-deleted-db-contention diagnosis skill (72dd457)
  • add PlexAniSync (Phase 7) - anime watch state from Plex to AniList (c5bb824)
  • add Poster Studio gallery, before/after preview, quality scan (Phase 04) (95c5cec)
  • add Scrutiny (SMART trending + failure prediction for the host disk) (01f2967)
  • add Speedtest Tracker (hourly ISP link monitoring + history) (43ed2fb)
  • add stack-plex-butler-all fish function (691ac83)
  • add WatchState (Phase 6) - Plex watch-state sync via import + webhook (ff651a9)
  • anime Radarr/Sonarr support in Letterboxd import routes (bb9a5c9)
  • attach scraped Letterboxd tags as Radarr tags on add (62ec168)
  • cache Letterboxd slug->TMDb id lookups to skip re-fetching known slugs (6ad02e2)
  • control-panel: Phase 1 of evolved backend - scaffolding + auth (ef98a82)
  • control-panel: Phase 2 of evolved backend - fleet + settings (50a3cff)
  • control-panel: Phase 3 of evolved backend - Radarr/Sonarr/Prowlarr/Bazarr (90bd869)
  • control-panel: Phase 4 part 1 - Plex router (c3a5191)
  • control-panel: Phase 4 part 13 - new-apps health/backup sweep router (307c152)
  • control-panel: Phase 4 part 14 - poster-sync router (final Phase 4 service) (f277078)
  • control-panel: Phase 4 part 2 - NzbDAV router (5aeff6f)
  • control-panel: Phase 4 part 3 - host diagnostics (4924fa8)
  • control-panel: Phase 4 part 4 - backups router (dd2a973)
  • control-panel: Phase 4 part 5 - Tautulli router (894dd23)
  • control-panel: Phase 4 part 6 - Wrapperr router (18223e5)
  • control-panel: Phase 4 part 8 - Maintainerr router (29fe5e6)
  • control-panel: Phase 4 part 9 - Checkrr router (bcf89ff)
  • control-panel: Phase 4 parts 10-12 - Prefetcharr/Lingarr/Kometa routers (b7403c2)
  • control-panel: Phase 5 cutover - flip live backend from app.py to main.py (8ad0e89)
  • control-panel: redesign as a piping-and-instrumentation diagram (699cac1)
  • control-panel: register radarr-anime instance (core/arr_client.py, core/docker_client.py) (c56feed)
  • cross over TMDb-unmatched Letterboxd titles to Sonarr via series lookup (3f9f22f)
  • cut fish functions over to symlinks, drop restic orphans (Phase 8a) (610926c)
  • cut GAPS-2 to Movies/Shows and wire its Radarr/Sonarr (da052cf)
  • dashboard panel for tracked Letterboxd lists + sync history (d09d9be)
  • detect and auto-clear Radarr/Sonarr import starvation (860e27e)
  • enable InfiniDysk repair, streaming perf, and safety settings (17db2d3)
  • fish CLI commands for Letterboxd tracked-list sync + history (217e833)
  • MDBList as its own package, with anime Radarr/Sonarr routing (c6ab624)
  • nightly systemd-scheduled sync for tracked Letterboxd lists (d552ae6)
  • plex: mount anime-movies path for the new Anime Movies library (b4b8b54)
  • radarr-anime: add dedicated Radarr instance for anime movies (5be2982)
  • radarr: add Criterion Collection custom format (d667f50)
  • raise usenet provider max connections to 50 (dcef798)
  • rating-aware quality-profile mapping for Letterboxd list adds (bfa89cd)
  • re-add news.newshosting.com as tertiary nzbdav usenet provider (8fe471f)
  • reconcile Radarr/Sonarr file lists against Plex by exact path (f6ad170)
  • record + surface Letterboxd sync telemetry (GET /api/arr/letterboxd/history) (d6dec04)
  • register radarr-anime across fleet-tracking skill scripts (db3347c)
  • remove restic backup system entirely (cd841d6)
  • script to remove Radarr-orphaned empty movie folders (55abc4f)
  • stand up sonarr-anime as a full peer instance to radarr-anime (bb8b3e5)
  • symlink installer for fish functions (Phase 8a) (6fb8212)
  • tracked-list registration + sync-tick endpoint for scheduled Letterboxd sync (757493d)
  • trash-guides-applier: add radarr-anime custom-format profile (dual audio, uncensored, LQ groups) (82e2e91)
  • trash-guides-applier: add TRaSH custom-format converter script (d6f0e43)
  • unpackerr: wire radarr-anime as a second Radarr server (68cc9f8)
  • write the 4 fish functions commands.json already advertised (Phase 8a) (66e93e2)

Bug Fixes

  • add missing Control Panel/radarr_anime vars to .env.example (d16b12b)
  • add missing RADARR_ANIME_API_KEY to cp_main_app test fixture (0eb7281)
  • add missing tertiary nzbdav usenet vars to .env.example (7bd400b)
  • bump Pillow 11.3.0 -> 12.3.0, clears 18 open Dependabot alerts (7aa4e7e)
  • control-panel: add login UI and static-file mount for evolved backend (4b37554)
  • control-panel: allow service-key auth on add-from-letterboxd-list (d982fca)
  • control-panel: don't let one unmatched file 500 a whole bulk import (3711926)
  • control-panel: extend service-key auth to every fish-CLI-called route (1437035)
  • control-panel: validate actual TCP source, not just spoofable Host header (e360961)
  • control-panel: wire CONTROL_PANEL_SERVICE_API_KEY through to __stack_api.fish (5809a63)
  • docker-compose-manager: add radarr-anime to FUSE mount cascade dependents (aa2f6a6)
  • green up Validate Compose and widen its lint/profile coverage (e070b54)
  • health-monitor: add 7 missing services to HTTP reachability check (1c8c853)
  • kometa: switch to manual-only runs (784a579)
  • lower nzbdav usenet connections to 25 per provider (8feda56)
  • nzbdav_rclone: remove --no-modtime, was poisoning Plex direct-play (e031300)
  • nzbdav: add anime-movies to NZBDAV_CONFIG__API__CATEGORIES (de1405b)
  • nzbdav: revert usenet MaxConnections back to 25/provider (36d9a45)
  • raise nzbdav usenet connections to 50/provider, document DB deadlock (3e81eed)
  • reconcile against the Plex API, not deleted_at (corrects a false positive) (d799609)
  • remove tertiary nzbdav usenet provider (f2f433b)
  • remove thundernews, set newshosting primary and ninja as backup (d1b27b5)
  • repair drifted skill scripts and port 3 missing control-panel routes (de6133f)
  • request-manager-integrator: resolve real container hostname, not app_name (b13ce2d)
  • restore nzbdav usenet connections to 50 per provider (553bde6)
  • self-heal stale FUSE mountpoint on nzbdav_rclone start (5d43a0f)
  • send X-Api-Key from stack-* fish CLI commands (e8fae06)
  • set all three nzbdav usenet providers to priority 0 (172edfa)
  • trash-guides-applier: build real quality-profile items from schema, register radarr_anime (c8aa4b5)
  • treat radarr_anime as a Radarr-type app in queue/import/blocklist paths (eafa540)
  • wire cleanuparr and seerr routers into main.py (b5bf585)

Performance Improvements

  • raise NzbDAV provider MaxConnections 26 -> 50 on both providers (0d9c39f)