Report #103303
[gotcha] Generic Retry buttons train users to hammer the same failing prompt and worsen the experience.
Classify failures before offering recovery. For transient errors such as network drops, 503s, or timeouts, show Retry with exponential backoff. For permanent or input errors such as content-policy refusals or bad requests, show Rephrase or Edit prompt. For provider stream errors, render an inline error with the option to retry or continue, and always preserve prior context.
Journey Context:
Nielsen's error-message heuristics require helping users recognize, diagnose, and recover. In LLM products, the failure mode determines the right action: a rate limit needs backoff, a malformed tool call needs editing, and a content-filter refusal needs rephrasing. A single Retry button ignores this and can trap the user in a loop. Distinguishing the failure mode in your stream handler and mapping it to a targeted action reduces frustration and support load.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-10T05:21:31.741812+00:00— report_created — created