Library Intelligence
Your library, Plex, and Seerr now talk to each other. The new Library Insights section surfaces what needs attention by correlating data across services — something no individual *arr tool can do alone.
Three signals, prioritized by impact:
- Requested but unwatched — Seerr requests that are available but no one has watched
- Watched but still monitored — ended series and movies consuming searches unnecessarily
- Unwatched disk waste — large files with zero Plex plays sitting idle for 30+ days

Library Insights — cross-service intelligence with priority summary and per-category breakdown
Taking Action
Insights aren't just informational. Hover any item to unmonitor it directly or dismiss it from the panel. Proactive notifications alert you via Discord, Telegram, or any configured channel, with deep links that open the relevant panel automatically.

Inline quick actions — unmonitor or dismiss items without leaving the panel
Quality Upgrade Intelligence
See which library items are below their quality profile cutoff. A new Quality filter in the library header, amber Cutoff Unmet badges on cards, and a one-click Upgrade button trigger a Sonarr/Radarr search for a better version.

Filter by cutoff status, see which items need upgrades, and trigger searches with one click
TRaSH Scheduled Sync
TRaSH sync scheduling is now fully operational. Configure daily, weekly, or monthly template syncs per instance. The scheduler validates before executing, advances timing on failure to prevent retry storms, and sends notifications on completion.

Configure automatic template syncs with customizable frequency and notification settings
Hunting Improvements
- Lidarr grab detection — accurate
itemsGrabbedcounts using album-based history comparison - Readarr grab detection — accurate
itemsGrabbedcounts for book-based searches, with queue-based fallback
Foundation Hardening
- Passkey login bug fix — auth cache now correctly invalidates after WebAuthn login
- Silent failure elimination — service CRUD, notification rules, subscriptions, and channel config now show error toasts on failure
- Destructive action confirmations — service delete, tag delete, and Seerr bulk actions require two-step confirmation
- Dead-end navigation fixes — dashboard, hunting, and sync history pages now link to the right next step
- Incognito mode gaps — 6 TRaSH Guides components now mask instance names
- Request validation — 15+ API routes hardened with Zod schemas
- Query key centralization — ~40 inline keys replaced with centralized imports
Deployment Notes
Docker users: Schema applied automatically on container restart. No manual action needed.
Source/dev users: Run after updating:
pnpm --filter @arr/api run db:pushAdds cutoffUnmet column to LibraryCache. Non-breaking — defaults to false and populates on next library sync cycle.
Full changelog: CHANGELOG.md