• v3.3.103 7f636258d4

    Administrator released this 2026-06-21 20:54:55 +02:00 | 6 commits to master since this release

    v3.3.103 — Smooth batch start: the file-size checks no longer freeze the main thread

    The v3.3.102 log confirmed the big wins held: the History view is instant and steady-state uploads are pristine (32 fps, event-loop ~12ms). The one remaining rough spot was the first few seconds after a large batch starts — the main thread froze for ~336ms and the UI janked briefly, then settled.

    A multi-agent investigation (with an adversarial review that caught and rejected a tempting-but-wrong fix that would have reintroduced an old queue-persistence bug) traced it to the real cause: when a batch starts, the app checked every file's size with a synchronous fs.statSync — up to 200 of them in a single tick (~336ms of blocking I/O on the VM), made worse by the disk already being busy with the 1MB read-ahead.

    Fix: those file-size checks now run asynchronously on a background thread pool, in parallel, so the main thread never blocks on them. Same data, same behavior — just off the UI thread. The 336ms freeze at batch start drops to zero; the brief UI jank and the inherited tab-click lag during spin-up should go with it.

    407 tests pass. No upload behavior changed.

    Downloads