pub(crate) fn spawn_job( name: &str, job: impl FnOnce(&Progress) -> Result<(), String> + Send + 'static, ) -> Arc<Progress>
Run job on a named thread; any Err (or panic) lands in Progress::finish.
job
Progress::finish