pub(crate) async fn supervise( full_id: String, path: impl AsRef<OsStr>, args: Vec<impl AsRef<OsStr>>, command_wrapper: Vec<String>, port_allocator: Arc<PortAllocator>, ports: HashMap<String, u16>, suppress_output: bool, port_metadata_file_location: PathBuf)