async fn search_layer<O: Send>(
vector_store: &impl VectorStore,
graph: &impl HnswGraph,
measure: &impl MeasureDistance,
on_nearest_fn: impl OnNearestItem<O>,
entrypoints: BoundedNearest<(usize, O)>,
level_index: usize,
ef: usize,
stats: &mut HnswStats,
visited: &mut VecSet,
) -> HummockResult<BoundedNearest<(usize, O)>>