anomalyco / anomalyco/opencode
tui: purple completed-session dot persists after client restart until session is interacted with
@simonklee is already working on this.
Since Sep 16, 2026.
- Dominant language
- TypeScript
- Stars
- 209k
- Forks
- 27.5k
- PR merge metrics
- PR metrics pending
Description
Summary
After closing and reopening the TUI client, the purple "completed" dot indicator on previously finished sessions persists incorrectly. It only clears when the user closes and reopens the session, or sends a new message before clicking the marked session.
Environment
- opencode version: 2.0.3
- OS: Windows_NT 10.0.26200 (win32 x64)
- Terminal: xterm-256color
- Shell: cmd.exe
- Install/channel: latest
- Active plugins: None
Reproduction
- Open TUI and start a conversation that completes (the purple dot appears next to the session in the sidebar)
- Close the TUI client entirely
- Reopen the TUI client
- Click on the session that had the purple dot — the dot remains visible and does not clear
- (Alternative) Send a new message, then click on the previously marked sessions — the dot disappears as expected
Expected Behavior
When reopening the TUI client and clicking on a session with a "completed" purple dot, the dot should clear immediately to indicate the session has been viewed, just as it does when sending a new message.
Actual Behavior
The purple dot indicator persists on previously completed sessions after client restart. It does not clear when simply clicking/navigating to the session. It only clears when the user either:
- Closes and reopens the session, or
- Sends a new message and then clicks the marked session
Additional Context
This appears to be a state persistence issue — the "read/viewed" status of the session indicator is not being properly re-evaluated when a session is loaded from storage on client startup. The session's completion state is persisted correctly, but the UI marker isn't syncing with the session state on initial load.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.