PR: https://git.cafe/pingdotgg/t3code/pulls/29360 Main: 71646e031a (github/main) PR exact head: 068b53be025eefac93eeec17c9e0e721eac68864 Installed both using vp i; one background dev server at a time. Main: server 16733, web 8693. PR: server 13773, web 5733, explicit isolated .t3 home. Browser: repository Playwright 1.60.0, /usr/bin/google-chrome. Created project through Add project > Local folder. Selected Codex GPT-6.1-Sol. Real Codex turn created release-review DOCX/XLSX/ZIP/SQLite from actual git log. Uploaded real files through composer file input, with controlled browser MIME labels. Main: all 8 persisted attachment previews said No preview for this file. PR: same persisted bytes, names, and MIME labels; all 8 rendered. Two aliases: binary/octet-stream, application/unknown. DOCX: 1 page; XLSX: commits sheet with 5 rows; ZIP: report.txt; SQLite: commits table, 5 rows and 2 columns. React read-only inspection confirmed all 8 preview props retain alias MIME and hasFile=false (server asset path). Real Codex PR turn re-read uploaded attachment paths: both SQLite files have 5 rows; both ZIPs contain report.txt. Neighbor checks: standard DOCX renders; Markdown renders; Save file downloads DOCX with byte-identical contents. Blacksmith focused suite: 87/87 passed. Blacksmith check:changed against PR parent: format, lint, knip, affected typechecks, 88 tests passed. CI at exact head: 30 successful, 0 failing, 0 pending. No source changes, commits, pushes, labels, or merge actions. Not verified: native desktop/mobile; remote/tunnel; actual OS MIME assignment; other Office/archive formats and generic aliases.