mirror of
https://github.com/willmiao/ComfyUI-Lora-Manager.git
synced 2026-09-20 18:51:26 -03:00
aa630bf85b
A no-change Refresh still computed os.path.realpath for every model file in the library and for every cached entry. Both values are only ever consulted when a discovered file is missing from the cache, so on a 50k-file library they cost ~1.3s and ~0.6s while being used zero times. - Compute the per-file realpath only after the exact cache match fails - Build the physical-path alias map lazily on the first miss; the cross-run alias guard (overlapping roots / symlink layout changes) still keeps the cached entry instead of a delete + re-add, which would re-read metadata and re-hash the whole library - Snapshot get_model_roots() once for the new-file pass instead of re-reading it for every added file - Run the duplicate-path integrity pass only when the snapshot already contained duplicates or files were appended; a clean, unchanged cache has nothing to clean. Duplicates can only be introduced by external code rewriting raw_data or by this pass's own appends. Zero-change reconcile drops from ~1400ms to ~120ms on 50k files, and an alias flip still re-processes 0 files (#1108 investigation).