方寸 Portal

AI Engineer Portal

Your personal operating system for career transition.

Private mode

Exercise

Retry a provider call with timeout and backoff

Implement an async wrapper that retries retryable provider failures with a timeout and bounded backoff.

Api Async / medium / Step 1 of 23

Practice stage

Async and provider control

Hint

Make waiting behavior explicit. Timeouts, retries, and concurrency limits matter more than squeezing everything into one helper.

Success criteria
  • - Uses async boundaries coherently
  • - Makes timeout and retry decisions legible
  • - Would be maintainable under provider instability
Review checklist
  • - Is timeout behavior explicit?
  • - Is retryable failure separate from terminal failure?
  • - Would logs reveal what actually timed out?

Practice

Generate a variation

Generate a new exercise variation to deepen understanding or practice a related concept.

Attempt history

Recent submissions

What part of this implementation felt least trustworthy, and what will you change on the next rep?

solid

let me see the corret answer

96/100
needs-review

No notes

78/100
needs-review

No notes

78/100
needs-review

No notes

78/100

Reference

Correct answer and review notes

Use the reference solution to compare structure, not just syntax.

Reference solution
async def call_with_retry(client, request):
    return await client(request)
Why this answer works

Most AI API integrations fail operationally because timeout and retry policy are inconsistent rather than absent.