Commit Graph

1444 Commits (378ae39bef740abc483a2354e01a2cd5ffbc7175)

Author SHA1 Message Date
BoulderBadgeDad 8236b95db0 fix: don't pass the 'custom' cookies sentinel to yt-dlp (unsupported browser error)
5 days ago
BoulderBadgeDad 91eae710b4 video automations: post-download scan chain (parity with music's batch→scan→update)
1 week ago
BoulderBadgeDad 40149d09f7 video automations: 'Scan Video Library' — the first video twin (shared engine)
1 week ago
BoulderBadgeDad 530d6f181f Video enrichment: add the 4 new workers to the dashboard header
1 week ago
BoulderBadgeDad 3a24fc24b1 YouTube worker: push status over the socket like the others (stop polling)
2 weeks ago
BoulderBadgeDad 80dd2ff21c Video side: own server connection (Plex/Jellyfin), music-style picker, isolated
2 weeks ago
BoulderBadgeDad 401a9be0ec video side: live dashboard via isolated /api/video blueprint
2 weeks ago
BoulderBadgeDad 09b97c5f63 #870: Deezer ARL 'resets itself' — test the SAVED token, not the redaction mask
2 weeks ago
BoulderBadgeDad b393866782 Remove old auto-acting Quality Scanner tool (replaced by Quality Upgrade Finder job)
2 weeks ago
BoulderBadgeDad c7ca657d56 Release 2.7.2: bump version + What's New / version modal + docker-publish default tag
2 weeks ago
BoulderBadgeDad fb260baa48 HiFi instances: 'Restore Defaults' button (re-adds removed defaults, keeps customs) + bigger tap targets for the ✔/✖ controls (Sokhi)
2 weeks ago
BoulderBadgeDad 6e7fd3ff5c M3U export: resolve paths via one bulk read instead of a per-artist search loop (fixes 'Export M3U hangs forever' under active enrichment/scan DB writes)
2 weeks ago
BoulderBadgeDad 651b904e92 Watchlist: per-artist 'auto-download' toggle (follow-only) — off = discover/surface releases but skip the wishlist add; default on
2 weeks ago
BoulderBadgeDad c62074d54a #865: resolve pasted SoundCloud links (incl. unlisted/private share URLs) via direct yt-dlp resolve; manual-search forces the SoundCloud source
2 weeks ago
BoulderBadgeDad ba5d62946a Mirrored playlists: custom name alias (overrides display + sync name, survives upstream refresh) — card rename button like the source-ref editor
2 weeks ago
BoulderBadgeDad c72e83bc2f #863: move YouTube artist recovery out of the (synchronous) parse into the async discovery worker — parse is fast again, no 120s timeout risk
2 weeks ago
BoulderBadgeDad 0093af89d2 #863: parallelize YouTube artist-recovery (5-worker pool) so the whole playlist resolves within the budget, not just the first ~dozen
2 weeks ago
BoulderBadgeDad 0a6325a87b #863: recover YouTube track artist via per-video uploader/channel when flat extraction returns title-only (budget-bounded)
2 weeks ago
BoulderBadgeDad 4f24c2af6d #863: derive YouTube track artist from music fields / -Topic channel / 'Artist - Title' instead of the playlist owner
2 weeks ago
BoulderBadgeDad f5787764d4 #859: DB-update stall watchdog + UI self-heal (no more wedged 'Starting...' / frozen bar)
2 weeks ago
BoulderBadgeDad 6e86bac6eb M3U: skip the auto-save no-op when export is disabled (fixes ~30s analysis jam)
2 weeks ago
BoulderBadgeDad d160c486ec Playlists: mirror-update trigger prunes removed tracks (the other half)
2 weeks ago
BoulderBadgeDad 87621b7191 Playlists: Settings UI (path + symlink/copy + rebuild button) + rebuild endpoint
2 weeks ago
BoulderBadgeDad a789fb71c0 Library export: export the whole library roster too (corruption's request)
2 weeks ago
BoulderBadgeDad f8652c106b Watchlist: export the roster to JSON / CSV / text (corruption's request)
2 weeks ago
BoulderBadgeDad 5b52d579c5 Login mode: enforce "every profile has a password" at every write-point (no gaps)
2 weeks ago
BoulderBadgeDad 123eb6139f Artist detail: "DB Record" inspector — everything the DB knows about an artist
2 weeks ago
BoulderBadgeDad ee4d514d60 CI: silence S110 on three intentional best-effort swallows (unblocks dev build)
2 weeks ago
BoulderBadgeDad 572a7c05f0 Release: bump version to 2.7.1 + default the docker publish tag to 2.7.1
2 weeks ago
BoulderBadgeDad 46eccbb237 #852: gate the WebSocket handshake — close the launch-PIN/login bypass
2 weeks ago
BoulderBadgeDad 87e5e1fa23 #702: make mirrored-playlist cancel/reset/delete idempotent (un-wedge LB weekly sync)
2 weeks ago
BoulderBadgeDad a207bd943b #845 tests: lift history-path resolver to core/ + seam-test the delete-safety
2 weeks ago
BoulderBadgeDad 17440329c1 #845 follow-up: admin-gate the mutating verification-review endpoints
2 weeks ago
BoulderBadgeDad eb35ba86fb
Merge pull request #845 from nick2000713/fix/import-folder-artist-override-optin
2 weeks ago
nick2000713 bf5affd03c resolve merge conflict in style.css
2 weeks ago
BoulderBadgeDad 3284af428d Discogs (#848 follow-up): tag collection album IDs for consistency
2 weeks ago
BoulderBadgeDad 654a5b4536 Release: bump version to 2.7.0 + default the docker publish tag to 2.7.0
2 weeks ago
BoulderBadgeDad 613688a9ad Login recovery (DB + backend): security question to reset a forgotten password
2 weeks ago
BoulderBadgeDad 21dfbb39b0 Native login (increment 3/3): login screen, set-password, Settings toggle, logout
2 weeks ago
BoulderBadgeDad 92cbef90f9 Native login (increment 2/3): login/logout endpoints + require_login gate
2 weeks ago
BoulderBadgeDad 86d0a0dd62 Security: trust a forward-auth proxy user header (Tier 3)
3 weeks ago
BoulderBadgeDad 0d1e949798 Security: brute-force limiter on the launch-PIN unlock (Tier 2)
3 weeks ago
BoulderBadgeDad aa3aae695d Security: opt-in reverse-proxy mode (ProxyFix + Secure cookie) + nginx guide
3 weeks ago
BoulderBadgeDad d82d02b921 Artist Sync: unify with deep scan — server-diff stale removal, scoped to one artist
3 weeks ago
BoulderBadgeDad 4d1b9a5639 Artist Sync: guard stale-removal against an unreachable mount + gate it admin-only
3 weeks ago
BoulderBadgeDad 27d738e7b1 Fix: Find & Add library search buried exact matches (case-sensitive ordering)
3 weeks ago
BoulderBadgeDad 1517794e23 Fix: manual Find & Add recreated the Jellyfin/Emby playlist (#837)
3 weeks ago
dev 5896f2dcc6 fix: eager config load + check acoustid.enabled for verification pill
3 weeks ago
dev 97b40cbd43 feat(verification): review queue — listen/compare/approve/delete unverified downloads
3 weeks ago
BoulderBadgeDad 783839349c Automations: per-profile playlist source reads in auto-sync (part 2)
3 weeks ago