pub(crate) async fn jobs<F, Fut>( name: &str, count: usize, concurrency: usize, token: &CancellationToken, execute: F, ) -> PhaseReportwhere F: Fn(usize) -> Fut + Send + Sync + 'static, Fut: Future<Output = Outcome> + Send + 'static,