Valid PDF thumbnails remain unpublished during bounded media probes #1417

Open
opened 2026-10-07 22:49:19 +00:00 by kayg · 0 comments
Owner

Non-blocking PDF preview-publication finding from #1403's real release-server adversarial round. tests/adversarial/media_uploads.py uploads a valid one-page PDF, an equal-byte PDF under .pdf and .txt suffixes, and malformed/hostile document fixtures.

Verbatim failures:

!! PDF thumbnail worker: valid one-page PDF did not produce a thumbnail
!! kind-specific thumbnail worker: both content-classified PDF items did not publish a preview
media upload findings: 2

The valid files appeared in Files, but has_thumbnail stayed false. The first loop polls 60 times at 250 ms; the equal-byte loop has the same polling budget. The probe does not record the job state, renderer error or queue depth. It ran after the round's 20,000-file watcher fixture and write storms. SLOW versus a permanent renderer failure is not proved.

Keep the existing content-classification and cache-family expectations. Record queued/running/failed state and renderer diagnostics before changing the deadline or accepting missing previews. The malformed fixture did not get a thumbnail; native document isolation and explicit PDF/SVG loaders passed at round startup. Files PDF Quick Look's client text/accessibility checks passed separately.

No crash, data loss, authorization leak or sync collision is shown. This is missing derived preview data; source files remain listed.

Non-blocking PDF preview-publication finding from #1403's real release-server adversarial round. `tests/adversarial/media_uploads.py` uploads a valid one-page PDF, an equal-byte PDF under `.pdf` and `.txt` suffixes, and malformed/hostile document fixtures. Verbatim failures: ``` !! PDF thumbnail worker: valid one-page PDF did not produce a thumbnail !! kind-specific thumbnail worker: both content-classified PDF items did not publish a preview media upload findings: 2 ``` The valid files appeared in Files, but `has_thumbnail` stayed false. The first loop polls 60 times at 250 ms; the equal-byte loop has the same polling budget. The probe does not record the job state, renderer error or queue depth. It ran after the round's 20,000-file watcher fixture and write storms. SLOW versus a permanent renderer failure is not proved. Keep the existing content-classification and cache-family expectations. Record queued/running/failed state and renderer diagnostics before changing the deadline or accepting missing previews. The malformed fixture did not get a thumbnail; native document isolation and explicit PDF/SVG loaders passed at round startup. Files PDF Quick Look's client text/accessibility checks passed separately. No crash, data loss, authorization leak or sync collision is shown. This is missing derived preview data; source files remain listed.
Commenting is not possible because the repository is archived.
No labels
No milestone
No project
No assignees
1 participant
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
kayg/calternal-v0#1417
No description provided.