Regeneration button is present on AI responses
Why it matters
When an AI response misses the mark and the user's only recourse is to delete the message and retype the full prompt, abandonment spikes. Regeneration is the single most-used control in production AI interfaces because models are stochastic by design — the same prompt yields different outputs on each call, and users expect to resample without paying the typing tax. Missing this control also skews feedback signals: users who would have rerolled instead churn, and you lose the data that shows response quality varies.
Severity rationale
Critical because it is a table-stakes control whose absence triggers immediate task abandonment on any unsatisfactory output.
Remediation
Wire a regenerate action onto the last assistant message that re-sends the prior user turn with the same context. In a Vercel AI SDK project the reload() helper from useChat does this in one line; otherwise trim the last assistant message from state and re-invoke your submit handler with the last user message. See src/components/chat/message-actions.tsx for the component.
const { reload } = useChat()
<button onClick={() => reload()} aria-label="Regenerate response">Regenerate</button>
DetectionPro
The detection method for this pattern is part of AuditBuffet Pro.
The full method (what to look for, pass and fail conditions, and how results get reported) ships inside the AI UX Patterns Audit. The pattern definition, severity rationale, and remediation remain openly licensed under CC-BY-4.0.
Taxons
History
- 2026-04-18·v1.0.0·Initial import from ai-ux-patterns·automated