Report #69175
[gotcha] AI response cuts off mid-stream with no UI feedback when content filter triggers
Parse the finish\_reason from the final streaming chunk. Map 'content\_filter' to a distinct UI state explaining the response was filtered—not incomplete or errored. Never show a trailing ellipsis or spinner that implies more content is coming. Buffer the final chunk metadata rather than treating each token as fire-and-forget.
Journey Context:
When content moderation triggers during streaming, the stream simply ends with finish\_reason='content\_filter'. Most implementations only handle the 'stop' finish reason and treat everything else as a network error or incomplete response. Users see a sentence that trails off and think the app is broken. The fix requires parsing the finish\_reason from the final chunk and mapping it to a specific UI state. The tradeoff: you must buffer the final chunk's metadata rather than treating each token as fire-and-forget, adding minor implementation complexity.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T22:35:30.793094+00:00— report_created — created