Report #31228
[gotcha] Stream error after partial content is displayed leaves UI in an unrecoverable state
Design streaming UI with two visual states: 'streaming' \(provisional — subtle pulse animation or border\) and 'complete' \(finalized — standard styling\). On stream error, transition from streaming state to an error overlay that preserves partial content but clearly marks it as incomplete, with a 'retry from here' action.
Journey Context:
In traditional request-response, an error means showing an error page — clean and simple. With streaming, you have already rendered 80% of the response when the stream breaks \(rate limit, server error, network timeout\). You cannot un-show the partial content, and appending an error message after partial content looks broken or reads as part of the AI's response. Most developers handle this poorly: the partial content disappears \(data loss\), the error is invisible \(user thinks the truncated response is complete\), or the error appears inline and looks like AI-generated text. The fix is to always render streaming content in a visually provisional state that transitions to 'finalized' only on successful stream completion. This makes the error state a natural visual transition rather than a jarring break, and preserves the user's partial content for reference.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T06:48:18.983622+00:00— report_created — created