soulsync/webui/static/video
BoulderBadgeDad b6d8f07516 Dashboard: YouTube date enricher as a 4th worker orb + Follow→Watchlist consistency
- The standalone enricher now reports orb telemetry: stats()/pause()/resume();
  /enrichment/youtube/status (+pause/resume) special-cased in the route. Added
  the 4th header worker button (red ▶), WORKER_DEFS entry, and SERVICES wiring —
  it's not on the socket so video-enrichment.js polls it every 3s. It animates
  (idle → active orb + inbound pulses) while a followed channel's dates are being
  fetched, like the TMDB/TVDB/OMDb orbs.
- Channel detail now uses the SAME standard watchlist button as shows/movies
  (library-artist-watchlist-btn, ✓/+ icon, 'In Watchlist'/'Watchlist') instead
  of a bespoke 'Follow' — consistency. Still wired to the channel follow action.

176 backend tests green; JS balanced; music untouched.
2026-06-17 11:05:59 -07:00
..
video-calendar.js Calendar: keep hero side panels >=10% wide + make Compact the default view 2026-06-17 00:03:49 -07:00
video-dashboard.js video dashboard: Library card is a live scan tool (parity with music) 2026-06-14 09:28:14 -07:00
video-detail.js Dashboard: YouTube date enricher as a 4th worker orb + Follow→Watchlist consistency 2026-06-17 11:05:59 -07:00
video-discover.js Discover: fix grid pagination + session cache + responsive pass 2026-06-16 15:44:36 -07:00
video-enrichment-manager.js video: coverage-card click re-queues failed matches (match music manager) 2026-06-15 14:27:25 -07:00
video-enrichment.js Dashboard: YouTube date enricher as a 4th worker orb + Follow→Watchlist consistency 2026-06-17 11:05:59 -07:00
video-get-modal.js Wishlist: episode synopsis + clickable cards + FIFO/newest sort 2026-06-16 18:21:26 -07:00
video-library.js Video: airing shows get BOTH the watchlist eye AND the get/download button 2026-06-16 11:07:53 -07:00
video-person.js Video: wire the eye/get button onto every card surface 2026-06-16 10:41:07 -07:00
video-scan.js video Tools: rehydrate scan state on page refresh (parity with music) 2026-06-14 07:59:44 -07:00
video-search.js Search UX: no 'No results' flash before YouTube loads + avatar fallback 2026-06-17 09:42:02 -07:00
video-settings.js Video side: own server connection (Plex/Jellyfin), music-style picker, isolated 2026-06-15 16:42:22 -07:00
video-side.css Channel detail: fix episode-row layout + graceful seasons 2026-06-17 10:07:51 -07:00
video-side.js Merge YouTube channels into the TV-show detail page 2026-06-17 09:17:41 -07:00
video-watchlist-btn.js Watchlist eye: confirm before removing (the standard yes/no dialog) 2026-06-16 09:29:31 -07:00
video-watchlist.js YouTube next-level (UI): channel detail page + wishlist YouTube tab = TV nebula 2026-06-17 01:20:13 -07:00
video-wishlist.js YouTube: proxy channel/video images so avatars + thumbnails always load 2026-06-17 08:40:33 -07:00
video-worker-orbs.js Dashboard: YouTube date enricher as a 4th worker orb + Follow→Watchlist consistency 2026-06-17 11:05:59 -07:00
video-youtube.js Search avatars: proxy with a UA + graceful initials fallback 2026-06-17 09:57:42 -07:00