Commit graph

  • 4487a9d2dc unverified-history reconcile + orphan-clean: hardening follow-up to #938 BoulderBadgeDad 2026-06-27 22:26:55 -0700
  • d84fba14ba
    Merge pull request #938 from nick2000713/fix/unverified-acoustid-934 BoulderBadgeDad 2026-06-27 22:14:01 -0700
  • 50c17ec9f7 discography 'add to wishlist': batch the per-track ownership check (fixes ~15-30s/track) BoulderBadgeDad 2026-06-27 19:51:28 -0700
  • 88b68b8073 worker orbs: drive the render loop with setInterval on firefox (permanent 1fps fix) BoulderBadgeDad 2026-06-27 18:27:31 -0700
  • 80d84c6de3 album completeness: fix excluded-sibling missing list + O(N) grouping (follow-up to #936) BoulderBadgeDad 2026-06-27 18:18:50 -0700
  • 60b0022122
    Merge pull request #936 from ragnarlotus/fix/album-completeness-fragmented-rows BoulderBadgeDad 2026-06-27 18:10:57 -0700
  • b683c7fb50 wishlist: render library-sourced art (album + artist) — fix blank wishlist images BoulderBadgeDad 2026-06-27 17:35:28 -0700
  • 4c53a8f3a2 preview-clip job: enable select-all/fix-all + give the re-wishlist proper album art BoulderBadgeDad 2026-06-27 17:10:07 -0700
  • 0be1952222 downloads(#934): opt-in "Clean orphaned" action for dead review-queue rows dev 2026-06-28 02:04:08 +0200
  • 27ea2ee735 downloads(#934): title-guard the reconcile basename match (fix self-introduced false-heal) dev 2026-06-28 01:49:41 +0200
  • 034a19b24f preview-clip findings: add Play button + length comparison to verify before approving BoulderBadgeDad 2026-06-27 16:27:27 -0700
  • bd3c5860f6 preview-clip job: fix scan hang + report live per-track progress BoulderBadgeDad 2026-06-27 16:24:31 -0700
  • 116edeb477 tools: add Preview Clip Cleanup repair job (detect ~30s previews, re-fetch full track) BoulderBadgeDad 2026-06-27 16:07:41 -0700
  • 319b6483a2 integrity: don't quarantine longer masters/versions as 'truncated' (#937) BoulderBadgeDad 2026-06-27 15:25:13 -0700
  • b85e9b40d9 perf: malloc_trim after GC so RSS actually drops (caps the peak) (#802) BoulderBadgeDad 2026-06-27 14:34:59 -0700
  • b4583f23be perf: growth-triggered GC instead of fixed timer — caps the peak (#802) BoulderBadgeDad 2026-06-27 14:24:05 -0700
  • f383a62c4f perf: periodic full GC to bound RSS (plexapi cyclic Element trees) (#802) BoulderBadgeDad 2026-06-27 14:17:58 -0700
  • de9e78cf95 debug: add lightweight one-shot /api/debug/memory/objects (gc, no tracemalloc) BoulderBadgeDad 2026-06-27 14:02:46 -0700
  • 5a54ffe14a dashboard: show SoulSync's own RAM next to system memory % BoulderBadgeDad 2026-06-27 13:42:14 -0700
  • 6802399805 dashboard/shell: drop frosted-glass blur on Firefox only (#935) BoulderBadgeDad 2026-06-27 13:36:15 -0700
  • 240dce0c1b worker-orbs: Firefox compositor keep-alive fixes post-hover 1fps slowdown (#935) BoulderBadgeDad 2026-06-27 13:07:03 -0700
  • c6caaaa599 dashboard: hide cursor-glow blobs on Firefox only (#935) BoulderBadgeDad 2026-06-27 12:53:10 -0700
  • 9faaf5c50c sidebar orbs: drop scale() from the drift so the blur stops re-rasterizing (#935) BoulderBadgeDad 2026-06-27 11:34:37 -0700
  • bce6a91aa2 dashboard: stop the cursor-blob pseudo-elements re-blurring every frame (#935) BoulderBadgeDad 2026-06-27 11:29:39 -0700
  • 28a539a840 ui: default Background Particles OFF (#935) BoulderBadgeDad 2026-06-27 10:48:07 -0700
  • 027cf74d47 ui(downloads): Unverified review rows get the Quarantine-style card design dev 2026-06-27 19:27:28 +0200
  • a42cf3b865 downloads(#934): instant startup reconcile of stuck-'unverified' history from tracks truth dev 2026-06-27 19:22:36 +0200
  • 3a92571c71 downloads: stop AcoustID scan duplicating history rows / leaving verified tracks 'unverified' (#934) BoulderBadgeDad 2026-06-27 09:52:39 -0700
  • 866c8a6400 Merge remote-tracking branch 'upstream/dev' into fix/album-completeness-fragmented-rows ragnarlotus 2026-06-27 13:38:10 +0200
  • eddaea2f93 watchlist history: record automatic scans too (#933) BoulderBadgeDad 2026-06-27 00:37:35 -0700
  • b1f061a2a8 manual search: float the pasted Qobuz/Tidal track to the top (#932) BoulderBadgeDad 2026-06-26 21:45:41 -0700
  • 7e2d2db08d watchlist: don't fuse different editions as the same album (Sokhi: Expedition 33) BoulderBadgeDad 2026-06-26 20:30:20 -0700
  • e96d62432f test(album-completeness): stop polluting sys.modules (fix flaky suite failure) BoulderBadgeDad 2026-06-26 19:56:11 -0700
  • 3a95fc45a4
    Merge pull request #931 from ragnarlotus/fix/album-completeness-canonical-source BoulderBadgeDad 2026-06-26 19:50:12 -0700
  • 31637e0096 canonical: recognize musicbrainz as a readable album source (PR #929 follow-up) BoulderBadgeDad 2026-06-26 19:04:24 -0700
  • 18f390b879
    Merge pull request #929 from ragnarlotus/fix/reorganize-musicbrainz-release-id BoulderBadgeDad 2026-06-26 18:58:03 -0700
  • 8eadadc1ae youtube retention: auto-clean old channel episodes (per-channel keep window) video BoulderBadgeDad 2026-06-26 17:24:59 -0700
  • 151bb7b542 video: hourly 'Update Video Database' safety net (the second-trigger pattern) BoulderBadgeDad 2026-06-26 16:39:28 -0700
  • 11c0c62a7e video enrichment: stop OMDb traceback spam from the detail/drawer path too BoulderBadgeDad 2026-06-26 16:28:37 -0700
  • 75f23641b3 youtube downloads: show 'Importing' during the ffmpeg merge, not a stuck 100% BoulderBadgeDad 2026-06-26 15:37:08 -0700
  • 85d5904846 fix album completeness fragmented rows ragnarlotus 2026-06-27 00:04:06 +0200
  • a6364ac283 fix album completeness canonical edition matching ragnarlotus 2026-06-26 06:22:07 +0200
  • f6360e90da youtube downloads: write episode sidecars (-thumb.jpg + .nfo), gated by toggles BoulderBadgeDad 2026-06-26 13:57:52 -0700
  • 02a319c350 gitignore: ignore database/*.histbak (the suffix slipped past the backup_* rule) BoulderBadgeDad 2026-06-26 13:41:50 -0700
  • ca1348b2c2 downloads: youtube 'open' goes to the in-app channel page, not youtube.com BoulderBadgeDad 2026-06-26 13:24:41 -0700
  • 3f924812da downloads: youtube card open button → YouTube link (was opening a random show) BoulderBadgeDad 2026-06-26 13:19:47 -0700
  • b916e6a2f3 downloads drawer: episode detail + youtube treatment + availability line BoulderBadgeDad 2026-06-26 13:06:44 -0700
  • c35ec43466 downloads drawer: rich TMDB detail + fix cast photos + stop OMDb quota burn BoulderBadgeDad 2026-06-26 12:49:11 -0700
  • a30a70fafd automations page: friendly labels + icons for the video maintenance actions BoulderBadgeDad 2026-06-26 11:51:29 -0700
  • 9aee723d1a video: 'Refresh Airing TV Schedules' automation — keep the calendar current BoulderBadgeDad 2026-06-26 11:47:15 -0700
  • 9a8550661b downloads page: click-to-expand detail drawer (synopsis + cast + facts) BoulderBadgeDad 2026-06-26 11:30:36 -0700
  • 458bf01599 downloads page: Cinema per-type theming + sidebar live count + status polish BoulderBadgeDad 2026-06-26 11:22:56 -0700
  • cc8cc78b97 video downloads: consistent stage→import→library pipeline + 'Importing' status BoulderBadgeDad 2026-06-26 11:11:29 -0700
  • 12cec4c042 video search: availability-aware ranking (best-in-class, like music) BoulderBadgeDad 2026-06-26 10:54:56 -0700
  • e84d1bcde5 slskd search: throttle creation to avoid 429 storms BoulderBadgeDad 2026-06-26 10:27:28 -0700
  • 6a1fa78995 video wishlist processor: show the actual slskd error on 'search didn't run' BoulderBadgeDad 2026-06-26 10:15:23 -0700
  • 1b3c18e4e6 slskd search: supply our own search id → fixes 'search didn't run' BoulderBadgeDad 2026-06-26 10:08:58 -0700
  • eb8498a792 video wishlist processor: surface 'search didn't run' vs genuine no-results BoulderBadgeDad 2026-06-26 10:02:49 -0700
  • 8fe73ac924 video: longer adaptive slskd wait + stop the automations page blink BoulderBadgeDad 2026-06-26 09:54:18 -0700
  • b55c245fe6 video downloads: re-download + clear history actions BoulderBadgeDad 2026-06-26 09:44:56 -0700
  • f380e8ac27 youtube scans: dedup against downloaded videos so they don't re-download BoulderBadgeDad 2026-06-26 09:34:58 -0700
  • bacc528ba1 video search: stop slskd searches when done → fixes movie-search flooding BoulderBadgeDad 2026-06-26 09:10:15 -0700
  • 6531a19c7a video wishlist processor: log WHY nothing grabbed (no results vs quality reject) BoulderBadgeDad 2026-06-26 08:44:40 -0700
  • fc045cd74e youtube download: don't clobber target_dir → fixes double-nested folders BoulderBadgeDad 2026-06-26 08:37:47 -0700
  • f0e1fda0fc video wishlist badge: poll so it reflects server-side removals (downloads) BoulderBadgeDad 2026-06-26 00:19:54 -0700
  • 1722618c6d video wishlist badge: stop the second writer clobbering it with the TV-only count BoulderBadgeDad 2026-06-25 23:21:59 -0700
  • 3fa7b48f4c video wishlist badge: count YouTube videos too (header + sidebar) BoulderBadgeDad 2026-06-25 23:15:45 -0700
  • 23c64e000a youtube playlists: same settings cog/modal as channels BoulderBadgeDad 2026-06-25 23:07:15 -0700
  • f734905ba1 youtube channels: per-channel settings modal UI (cog on the Channels tab) BoulderBadgeDad 2026-06-25 23:01:35 -0700
  • 7140b88948 youtube channels: per-channel overrides (custom show-name + quality) — core BoulderBadgeDad 2026-06-25 22:53:45 -0700
  • 5bb90053bf youtube fulfillment: orphan reaper for restart-stalled downloads BoulderBadgeDad 2026-06-25 22:48:54 -0700
  • 846d217dca video automations: order the System list as a logical pipeline BoulderBadgeDad 2026-06-25 22:38:26 -0700
  • 10895a7c16 video automations: migrate the Download->Process rename in seeded DBs BoulderBadgeDad 2026-06-25 22:33:03 -0700
  • 7d7d242e5d video automations: rename Download->Process + group into a clear pipeline BoulderBadgeDad 2026-06-25 22:26:31 -0700
  • b404420c76 video automations: auto-download movie + episode wishlist (soulseek) BoulderBadgeDad 2026-06-25 22:08:02 -0700
  • fb9459fb5c video automations: scan watchlist YouTube playlists (mirror-all) BoulderBadgeDad 2026-06-25 21:18:53 -0700
  • b83f314617 video automations: seed the three new ones as system automations BoulderBadgeDad 2026-06-25 20:56:37 -0700
  • 7a90b008f0 youtube fulfillment: drain the whole wishlist, cap concurrency not total BoulderBadgeDad 2026-06-25 20:10:45 -0700
  • 3254e8a6c4 settings: youtube path template field on the Library tab BoulderBadgeDad 2026-06-25 19:40:56 -0700
  • c47dccc7d7 youtube fulfillment: drain wishlist -> download queue BoulderBadgeDad 2026-06-25 19:30:02 -0700
  • 8e071719f9 youtube fulfillment: download worker (pure core) BoulderBadgeDad 2026-06-25 19:24:58 -0700
  • 00d05a04f5 video org: youtube channel template (Plex TV-by-date) BoulderBadgeDad 2026-06-25 19:20:18 -0700
  • 568e297d36 youtube quality: map profile -> yt-dlp format selection BoulderBadgeDad 2026-06-25 19:11:35 -0700
  • 31d284ab0d video automations: watchlist scans for people + channels BoulderBadgeDad 2026-06-25 19:07:06 -0700
  • 8a6b02b3fd test(reorganize): verify MusicBrainz integration ragnarlotus 2026-06-26 03:10:07 +0200
  • c8accf4e28
    Merge pull request #930 from Nezreka/dev 2.7.9 BoulderBadgeDad 2026-06-25 17:06:37 -0700
  • 580d9eb0f5 test: correct deezer popularity-threshold test to the 0-100 scale BoulderBadgeDad 2026-06-25 16:55:53 -0700
  • 92025f5fb3 lint: add strict=True to engine search zip() (B905) BoulderBadgeDad 2026-06-25 16:41:00 -0700
  • c033656fdf Popular Picks: fix empty result for deezer (popularity threshold scale mismatch) BoulderBadgeDad 2026-06-25 16:30:52 -0700
  • 30ff0bde49 Release 2.7.9: version bump + What's New / version modal + PR description + docker-publish default tag BoulderBadgeDad 2026-06-25 16:11:51 -0700
  • 086d153d77 Multi-disc (#927): capture real disc number at media-server scan time BoulderBadgeDad 2026-06-25 15:40:17 -0700
  • 3c33e31985
    Merge pull request #928 from nick2000713/fix/post-processing-race-and-followups BoulderBadgeDad 2026-06-25 14:52:53 -0700
  • dc813d67c1
    Merge pull request #926 from ramonskie/fix/issue-925-playlist-sync-label BoulderBadgeDad 2026-06-25 14:39:42 -0700
  • 9847d6f0a9 Wing It Pool: two-card landing (review + resolved), matching the Discovery Pool BoulderBadgeDad 2026-06-25 14:09:36 -0700
  • 602b035bad Wing It Pool: review + re-match tracks Wing It auto-matched BoulderBadgeDad 2026-06-25 13:57:50 -0700
  • e3915b63e6 Library cards: in-card badges no longer trigger artist-detail navigation BoulderBadgeDad 2026-06-25 13:57:34 -0700
  • 528aedbdfe fix(reorganize): include MusicBrainz release IDs ragnarlotus 2026-06-25 22:54:43 +0200
  • e29cc641cb chore(ui): drop redundant per-source "quality is global" notes dev 2026-06-25 22:13:17 +0200
  • 7a8b66fd2e Auto-Sync Manager: redesign hourly + weekly boards as horizontal lanes BoulderBadgeDad 2026-06-25 13:06:07 -0700
  • 2668980872 feat(ui): collapsible ⓘ help, rank-based toggle, tidier quality-profile settings dev 2026-06-25 22:01:09 +0200