Client retries + cleanup