v0.1.28 — fix: exit dialog could get stuck at "Records remaining: 0"
The desktop app's close/exit dialog ("Uploading your data...") could
get stuck indefinitely even after the sync flush genuinely finished,
if the underlying window-destroy call ever failed for any reason —
there was no error handling and no fallback. Now bounded to 5s with a
hard process-exit fallback, so the app always actually closes once the
flush completes.