feat(diagnostics): persist full stderr detail behind a "Show details" toggle

describeDownloadError condenses a postprocessing failure to one line for
the queue/notification, discarding the rest of yt-dlp's stderr. The
persisted error log now also keeps the fuller non-noise transcript
(stderrDetail) as an optional `detail` field, and the Diagnostics card
gets a collapsible "Show details" expander per row so a failure like
"Postprocessing: Conversion failed!" can be inspected -- and copied
into a bug report -- without re-running the download from a terminal.
This commit is contained in:
2026-07-05 14:56:09 -04:00
parent 6cb9c5ca47
commit 27cae28e12
9 changed files with 155 additions and 17 deletions
+7
View File
@@ -845,6 +845,13 @@ export interface ErrorLogEntry {
url: string
kind: MediaKind
error: string
/**
* Fuller non-noise stderr context behind the Diagnostics card's "Show
* details" toggle — undefined when `error` already says everything (most
* failures), present for the generic "Postprocessing: Conversion failed!"
* wrapper where the useful detail is the tagged step lines that preceded it.
*/
detail?: string
/** epoch milliseconds */
occurredAt: number
}