mirror of
https://github.com/phantomptr/ps5upload.git
synced 2026-10-22 03:42:55 -05:00
The Files screen started one AVA1 job per picked file (~0.46 s each in the engine; 5,000 small files took 44 min). Two or more local files of a pick now go up as ONE POST /api/transfer/file-list job under a client-minted tx_id. - state/fsUploadPlan: settles name conflicts before the job (Skip / Keep both / Replace, Merge for a folder onto a folder, "do the same for the other N") against a fresh listing, then groups the pick into steps. A single file and each folder keep their own job (folder jobs already are one job and carry excludes, empty dirs, module renames, remote sources); remote:// files stay per-file. - state/fsUpload: runs steps. A list shows overall bytes, finished files and the file in flight; cancel ends the one job; a stop names the files not yet on the PS5; retry/resume/restart re-send the same list under the same id so the console journal skips finished files. An engine/shell without the route falls back to per-file jobs. - ConflictAsk dialog replaces the all-or-nothing Overwrite confirm. - startTransferFileList, Tauri transfer_file_list, browserInvoke mapping. - 10 new strings in all 21 locales; retired fs_add_files_conflict_*. Phat 13.60, release engine: 240 files/348 MB 137.7 s -> 4.6 s; 5,000 small files 44 min -> 27.7 s. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RxCGb8Asp1A1AQYiv1kbgS