6c6a23e672
Binary IPC (tauri::ipc::Response) came back as an unrecognised shape on the user's runtime — the frontend couldn't extract an ArrayBuffer and every thumbnail resolved to null, so every card rendered the placeholder icon. Added: - Widened the invoke typing to ArrayBuffer | Uint8Array | number[] so all three known Tauri/WebView2 deserialisation shapes parse. - A one-time console.warn when the Response body lands as an unknown object shape, so the real wire format can be diagnosed if this ever trips again. - An automatic tier-2 fallback: if the binary path produced 0 usable bytes, re-invoke the legacy base64 command and decode client-side. Slower on the JS thread than binary IPC but known to work across all Tauri 2.x runtimes. Net behaviour: thumbnails render again. If the binary path works on a given build, we get the fast path; otherwise the base64 fallback keeps the picker usable. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>