async fn fetch_cipher(attempt: &Attempt<'_>) -> Result<Cipher, ApiError>
Fetches the cipher with retries. Callers handle failure, since the sync state differs.