Chat does not auto-scroll during thinking or tool activity
- Dominant language
- TypeScript
- Stars
- 909
- Forks
- 116
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 156
Description
### Before filing
- [x] I searched open and closed issues for duplicates.
- [x] I reproduced this on the latest release (Berd 0.6.2).
- [x] This is one bug, not several bundled together.
### Closest existing issue
None found.
### What's broken
When a chat is already at the bottom, Berd does not keep the viewport pinned to new thinking or tool activity. It shows “Jump to latest” and only returns to the bottom when the final assistant response arrives.
### Steps to reproduce
1. Launch Berd 0.6.2 on macOS.
2. Open an existing Goose chat with prior history, using `gpt-5.6-sol` (provider unknown).
3. Scroll to the bottom of the transcript.
4. Send a message that causes visible thinking or tool activity.
5. Do not manually scroll upward.
6. Observe that live content grows below the viewport and “Jump to latest” appears.
7. Wait for the final assistant response and observe that the viewport then snaps to the bottom.
### What you expected to happen
Because the viewport was at the bottom when the message was sent, it should remain pinned to the latest thinking, tool activity, streamed content, and final response. Auto-follow should stop only after deliberate upward scrolling.
### What actually happened
The viewport stopped following during thinking or tool activity, despite no manual upward scrolling. It offered “Jump to latest,” then snapped to the bottom only when the final assistant response arrived.
### How often does it happen?
Every time in the affected chat during the observed reproduction attempts. Broader frequency across new chats has not been established.
### Berd version
0.6.2 (the latest release at the time of filing)
### Operating system
macOS (Apple Silicon)
### Model and provider
`gpt-5.6-sol` via an unknown provider, using the Goose harness.
### Relevant log output
```text
No relevant log output. This appears to be a transcript viewport/rendering issue; the app log was checked around the reproduction period.
```
### Screenshots, recordings, or other context
No screenshot or recording is attached yet. The visible UI offered “Jump to latest” while live activity continued below the viewport.
Contributor guide
Research direction
Start by reproducing the issue in Berd 0.6.2 on macOS with an existing Goose chat, keeping the transcript at the bottom while thinking and tool activity streams. Trace the transcript viewport/rendering behavior around the “Jump to latest” state. Done means the viewport remains pinned through thinking, tool activity, streamed content, and the final response, stopping only after deliberate upward scrolling.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100