Add attachments, Spark-style tooltips and a native ARM64 build

Attachments: messages keep each file's name, type and size, and the
thread shows them as tiles that open in the default app or save with a
Save dialog ("Save all" for every file). Files download on demand from
IMAP (found again by Message-ID once archived) or Microsoft Graph.
Program files are never opened, and downloads get the mark of the web.
The composer attaches files from a picker, Ctrl+Shift+A or a drop on the
window; forwards keep the original's attachments, fetched when sent.
Local files are copied into the outbox (schema version 2), so undo and
Send Later don't depend on the originals. SMTP sends multipart/mixed;
Graph uploads through a draft, with upload sessions over 3 MB. Over
25 MB in total is refused.

Tooltips: one layer replaces the native title tooltips app-wide, with
shortcuts as keycaps and quick switching along toolbars. The main
actions show Spark's feature cards ("Important email? Mark it as
Priority").

Native build: tools/win-arm64/cargo.cmd builds on Windows ARM64 without
Docker, using clang-cl for aws-lc-sys. spark-desktop now embeds the UI
in any cargo build (Tauri's custom-protocol feature); before, a plain
cargo build loaded the dev server and showed an empty window.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
66fb996b65Michael Rodriguez committed on 10/22/2026, 9:14:58 PMparent11794ad
38 files changedLine totals unavailable