Loyal-Young opened a new issue, #5780: URL: https://github.com/apache/rocketmq-dashboard/issues/5780
### Before Creating the Bug Report - [x] Searched existing issues and PRs for `useConversationTimeline`. #4696 guards the active run; #5589 isolates request generations. Neither scopes the displayed rows or incremental cursor to the loaded conversation. ### Studio Version `rocketmq-studio@c99b9ad50b79467546997e51f3401d57ceebea5f`. ### Describe the Bug After loading conversation A, switching to conversation B changes the route immediately but leaves A's `items`, `bubbles`, `lastSeq` and `nextAfter` in the hook until B's full timeline succeeds. If B fails to load, the old transcript remains indefinitely. Calling Load More can then pass A's cursor to B and append B's events to A's rows. Only `activeRun` has a conversation ownership check. ### Steps to Reproduce 1. Load conversation A with a remaining forward cursor. 2. Switch to B and delay or reject its first timeline request. 3. Observe A's transcript under B's route and invoke Load More. 4. The incremental request uses B's ID with A's cursor. ### Expected Behavior Hide rows and cursor state that belong to another conversation, and reject incremental loading until the current conversation has a snapshot. Preserve the last successful snapshot during a same-conversation refresh. ### Verification Plan Deferred hook tests for pending and failed conversation switches, incremental loads, and same-conversation refresh behavior. ### Are You Willing to Submit a Pull Request? Yes. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
