Report #51680
[gotcha] User copies AI response before streaming finishes, pasting incomplete text as if complete
Disable copy and copy-code buttons until the stream's finish\_reason is received. If the user manually selects text during streaming, show a brief toast warning that the response is still generating. For code blocks specifically, add a visible 'Generating...' overlay that persists until completion. After stream completion, enable copy and add a subtle indicator that the response is finalized.
Journey Context:
Streaming responses appear character by character. Users see what looks like a complete sentence or paragraph and instinctively copy it — but the model has not finished. The copied text may end mid-sentence, mid-code-block, or mid-JSON, and when pasted into an editor, terminal, or another tool, it produces errors. The trap: natural language does not have explicit 'I am done' markers, so text looks complete at any given moment. Code blocks are especially dangerous — a truncated code snippet may be syntactically valid but functionally wrong \(e.g., missing a return statement, truncating a loop\). Users paste it, it runs, but produces incorrect results silently. Alternatives: buffer everything and show at once \(loses streaming benefit\), or let users copy freely \(current broken behavior\). The right call is to gate copy actions on stream completion while allowing reading during streaming, with special attention to code blocks where truncation is most harmful.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T17:14:14.772000+00:00— report_created — created