Report #62314
[gotcha] AI chat retry button returns identical refusal response, trapping users in a loop
Do not offer a generic retry button on AI refusals. Instead: surface the refusal reason, suggest rephrasing, and optionally implement an internal rephrasing layer that reformulates the request before resubmitting. If you must offer retry, increase temperature or modify the prompt prefix to produce genuinely different outputs.
Journey Context:
Retry buttons are added by analogy to network error handling—the same mental model as retrying a failed HTTP request. But AI refusals are not transient errors; they are deterministic outputs for a given input. At temperature 0, the same prompt produces the exact same refusal. Even at higher temperatures, refusals are sticky because the input context strongly biases the model toward refusing again. Users click retry three to five times, get the same result, and conclude the product is broken. Worse, offering retry on a refusal implicitly frames the refusal as a bug rather than a deliberate safety boundary, undermining trust in guardrails. The correct pattern: treat refusals as a distinct UX flow. Show what boundary was hit, offer concrete rephrasing suggestions, and if auto-retry is implemented, prepend a rephrasing instruction to the prompt so the model receives substantively different input.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T11:04:54.504077+00:00— report_created — created