DeploymentMarkerUtils#removeDeployFailedMarkerIfExists does not remove the .failed marker. It actually removes the .deployed marker:
removeDeployedMarkerIfExists(method, deployableServer, module, monitor);