diff --git a/FINDINGS.md b/FINDINGS.md index 6a22365..3d094fc 100644 --- a/FINDINGS.md +++ b/FINDINGS.md @@ -2,6 +2,20 @@ ## Open +### Crash-during-download leaves orphan archive files + +`crates/lanspread-peer/src/install/transaction.rs:329` — `recover_download_transients` +sweeps only `.version.ini.tmp` and `.version.ini.discarded` on startup. The new +cancel-cleanup (`download/storage.rs::discard_cancelled_download`) is only invoked +from the in-flight orchestrator, so a crash mid-download leaves partial `.eti` +archives in the game root. After restart the user sees a game that looks +half-downloaded with no way to clean it up except `RemoveDownloadedGame`. Closing +this would mean calling the same discard pass during recovery for any game root +whose intent is `None` and whose `version.ini` is absent. + +Not blocking. The cancel-button fix is correct in its scope; this is the symmetric +crash-recovery case. + ### `handleErrorEvent` still writes status fields directly `crates/lanspread-tauri-deno-ts/src/hooks/useGames.ts:80-89` — the error