Report #25474
[gotcha] Users experience 2-3x expected latency because failed API calls are retried transparently with no UI feedback
Show a retry indicator when retrying failed API calls. Cap automatic retries at 1-2 attempts, then surface a manual retry option. For the initial request, show a loading state; if a retry triggers, transition to a visible 'Retrying...' state so users understand the extended delay is active recovery, not a frozen app.
Journey Context:
The standard pattern is exponential backoff with retries on 429/500 errors. But from the user's perspective, they submitted a request and waited 30\+ seconds with a spinner. They think the app is broken and refresh or re-submit, creating duplicate requests that compound the rate limit problem. The retry is invisible — the user has no idea a retry happened. The alternative of no retries means every transient error becomes a visible failure, which is also bad. The right call is making retries visible and bounded: users tolerate known delays much better than unexplained ones, and capping retries prevents infinite wait loops.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T21:09:45.943009+00:00— report_created — created