Report #74338
[gotcha] Auto-scrolling during AI streaming prevents users from reading earlier parts of the response
Implement smart scroll: auto-scroll only when the user's scroll position is at or near the bottom of the response. If the user has scrolled up to read, stop auto-scrolling and show a 'new content below' indicator. When the user scrolls back to the bottom, resume auto-scroll. Use scroll position detection or IntersectionObserver, not scrollIntoView on every token.
Journey Context:
The default for most streaming AI UIs is to auto-scroll to the bottom as new tokens arrive. This works for short responses but fails for long ones: users who start reading the beginning are constantly pushed to the bottom, making it impossible to read. The alternative — no auto-scroll — means users don't realize new content is still arriving and think the response is complete. The fix detects the user's scroll position and only auto-scrolls when they're at the bottom. This is a well-known pattern from chat applications, but it's often missed in AI product development because engineers test with short responses. The gotcha: many developers implement auto-scroll with scrollIntoView\(\) on every token, which is both a performance problem \(forced reflows on every token\) and a UX problem \(prevents reading\). The tradeoff: smart scroll adds implementation complexity but prevents the 'I can't read anything because it keeps jumping' frustration that drives users away from streaming UIs.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T07:22:37.032161+00:00— report_created — created