Description:
The chat interface scrolling is fundamentally broken. A single scroll input (e.g., one mouse wheel tick) causes the page to jump uncontrollably across multiple conversation turns, making navigation impossible.
Root Cause Analysis:
The problem lies in the flawed interaction between the virtual scrolling mechanism and the custom scrollbar ().
-
The application correctly uses virtual scrolling, rendering only a fraction of the conversation turns at a time.
-
However, the custom scrollbar’s nodes are positioned based on the total number of turns in the entire conversation.
-
This creates a massive disconnect: scroll events are incorrectly mapped to the large, virtual height of the whole conversation, instead of the small, physical height of the currently rendered content.
This incorrect mapping is why a small physical scroll results in a huge, disproportionate jump in the conversation history.
Verification:
Deleting the element via developer tools and restoring the native scrollbar completely fixes the issue, confirming this component is the source of the flawed logic.
Suggested Action:
The scroll event mapping logic needs to be corrected to account for the virtualized content. Alternatively, provide an option to disable this component and use native scrolling.