async retries and metadata checking