async fn keep_peer<O>(peer: &Peer, task: impl Future<Output = O>) -> (&Peer, O)
Await the task (usually some RPC) and keep its peer to aid debugging.