Fix L23/L78/L79: diagnostics hint, empty-state copy, SponsorBlock defaults

L23: Diagnostics error list now shows "Showing 20 of N errors." when there
     are more than 20 logged errors.
L78: DownloadsView empty-state copy updated from "Paste a URL above to get
     started" to "Paste a URL above, then click Download" -- matches the UI.
L79: SponsorBlock default categories expanded from ['sponsor'] to
     ['sponsor', 'selfpromo', 'interaction'] -- sponsor-only was silently
     covering almost nothing; the three new defaults are universally unwanted.
     Existing SB tests updated to pass explicit categories instead of using defaults.

typecheck + 242 tests + eslint + prettier green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-30 13:57:53 -04:00
parent 3086ac469f
commit 94c5723246
5 changed files with 18 additions and 7 deletions
+3 -3
View File
@@ -422,7 +422,7 @@ token system + shared primitives (UI/SIMP — high value, larger effort) · i18n
version/update/export/import — two patterns in one file.
- [ ] **L22 — DownloadOptionsForm shows both audio + video controls** regardless of the chosen
kind in the per-download override panel (audio format shown for a video download, etc.).
- [ ] **L23 — Diagnostics shows first 20 errors** with no "showing 20 of N" hint (the copied
- [x] **L23 — Diagnostics shows first 20 errors** with no "showing 20 of N" hint (the copied
report includes all).
- [ ] **L24 — `window.open(htmlUrl, '_blank')`** in SettingsView is the only `window.open` in the
app (relies on the window-open handler); elsewhere external opens go through IPC/`shell`.
@@ -522,9 +522,9 @@ token system + shared primitives (UI/SIMP — high value, larger effort) · i18n
`titleFromUrl` placeholder before metadata resolves ('YouTube video (id)').
- [x] **L77 — ffmpeg/ffprobe versions have no re-check affordance** (load once; "not found" sticks
with no retry) unlike the yt-dlp "Check version" button.
- [ ] **L78 — `DownloadsView` empty-state copy** ("Paste a URL above to get started") doesn't match
- [x] **L78 — `DownloadsView` empty-state copy** ("Paste a URL above to get started") doesn't match
the actual two-step Fetch→Download affordance.
- [ ] **L79 — SponsorBlock default categories = `['sponsor']` only** — enabling SB silently covers
- [x] **L79 — SponsorBlock default categories = `['sponsor']` only** — enabling SB silently covers
just sponsors until the user expands categories (expectation gap).
*Round 4 (2026-06-29) — doc/code drift, build artifacts, edge cases:*