Report #79932
[gotcha] Why do users sit waiting after a streaming AI response finishes
Always provide a clear visual terminal state when streaming completes: re-enable the input field, show a completion checkmark or border change, collapse any 'generating' animation, and auto-scroll to the end of the response. Test that your UI has zero ambiguity between 'stream paused' and 'stream complete.'
Journey Context:
Traditional loading patterns \(spinners, progress bars\) have clear terminal states — they disappear when the operation completes. Streaming is fundamentally different: content gradually appears and then simply stops. There is no inherent visual 'done' signal. The stream ending looks identical to a brief pause while the AI generates the next token. Users sit waiting for more content that is not coming. This is worse than a slow response because it is ambiguous — the user does not know whether to wait, scroll, or start typing. The OpenAI streaming API sends a \[DONE\] marker in the SSE stream, but this backend signal often does not translate to a visible UI change. The gotcha is that developers test with short responses where completion is obvious, but in production with longer responses, users lose time waiting for content that has already finished generating.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T16:45:53.601682+00:00— report_created — created