The catastrophic query shape is resolved by the EVisibility redesign (#93): the base filter is now an indexable column filter on Album.Visibility/Person.Visibility instead of the 3-level…
Superseded by the merged incremental-scan work in PR #188 (#183/#184) and the job-system review in #189. The feature/filesystem-watcher branch no longer exists. Closing as superseded.
Superseded by #155. All listed component extractions are complete; the remaining candidates are tracked as #155 child issues. Closing as completed/superseded.
Implemented by PR #188 (merged 2026-08-20): CreatePersonsJob merged into CreateAlbumsJob as the single discovery job, incremental per-folder cursor, keyset pagination, AssetAlbumStaging…
Implemented by PR #188 (merged 2026-08-20): repeatable folder=<guid> parameter, Jobs page launch modal with folder checklist + Incremental/Deep toggle, and per-folder Scan/Deep scan buttons in…
Implemented by PR #188 (merged 2026-08-20): JobRequestDto.Parameters deep convention bypasses scan state for FileSystemScan and CreateAlbums, wired through scheduler, controller, and the…
Implemented by PR #188 (merged 2026-08-20): per-directory batched inserts/updates/soft-deletes with a dedicated asset context, replacing per-file Save() round-trips. Closing as completed.
Implemented by PR #188 (merged 2026-08-20): DirectoryScanState table with per-directory mtime skip, incremental reconciliation, and the IX_Assets_FolderId_Id keyset index. Closing as completed.