looking at the code guarded against, I agree.  `handleFailure` could be retrying an error that occurred during `httpEngine.sendRequest()`.  Since transmission could have failed, retry of the request does not mean the server read it twice.

Ideally, we could isolate the failure handling between sending the request from errors reading the response.