pub(crate) async fn sweep(
state: &AppState,
first_seen: &mut HashMap<String, Instant>,
now: Instant,
min_age: Duration,
) -> Vec<String>Expand description
One sweep. first_seen carries each candidate’s first sighting across
sweeps; a block that got placed (or deleted) in between drops out of it.
Returns the block ids it closed.