pub fn select_evictions(
files: Vec<SlotFileMeta>,
budget_bytes: u64,
) -> Vec<PathBuf>Expand description
Given all cached slot files and a byte budget, return the paths to delete.
Deletes oldest-mtime-first until the surviving total is <= budget_bytes.
Ties on mtime break on path so the result is deterministic. A single
file larger than the entire budget is still evicted (an empty cache is a
valid outcome; a cache permanently over budget is not).