b18a2aad143ef01a532548d96dd741a9f5c3b358
The directory healing step added every media file in the NAS folder as a manifest orphan — including files from other devices — inflating NAS Archive to 7421 and polluting the manifest with unrelated entries. Removed entirely. Root cause of the loop: when BackupEngine calls fileExists and skips a file already on NAS, it never added that file to manifestEntries. The file existed on NAS but not in the manifest, so every reconcile still showed it as pending, triggering a new backup on every app open. Fix: skipped files are now added to manifestEntries with their localIdentifier so they are written to the manifest at the end of the run (and at checkpoints). Next reconcile sees them as safe via localIdentifier match and needBackup decrements. Co-Authored-By: Kutesir <kutesir@provoc.ug> Co-Authored-By: Sentry <sentry@provoc.ug>
perf: eliminate full rescans with local caches; add queue tracking, notifications, SyncView redesign
perf: eliminate full rescans with local caches; add queue tracking, notifications, SyncView redesign
Description
Privacy-first iOS photo backup to NAS — SMB + SFTP, auto LAN trigger
Languages
Swift
100%