diff options
| author | Dax Raad <[email protected]> | 2025-08-13 16:29:07 -0400 |
|---|---|---|
| committer | Dax Raad <[email protected]> | 2025-08-14 12:20:22 -0400 |
| commit | 796bc390dba5ef7f78c98a6a007dfc5efebcba49 (patch) | |
| tree | 2500ee5d3dafe297b7206b4791b3a47e6a46a0bf /packages/tui | |
| parent | 703ae4967556e0644a0860e9a7aa439ad2d4c2d1 (diff) | |
| download | opencode-796bc390dba5ef7f78c98a6a007dfc5efebcba49.tar.gz opencode-796bc390dba5ef7f78c98a6a007dfc5efebcba49.zip | |
fix for session stuck in "Working..."
Diffstat (limited to 'packages/tui')
| -rw-r--r-- | packages/tui/internal/app/app.go | 2 | ||||
| -rw-r--r-- | packages/tui/internal/components/chat/messages.go | 5 |
2 files changed, 6 insertions, 1 deletions
diff --git a/packages/tui/internal/app/app.go b/packages/tui/internal/app/app.go index ce3a54229..023b799d5 100644 --- a/packages/tui/internal/app/app.go +++ b/packages/tui/internal/app/app.go @@ -631,7 +631,7 @@ func (a *App) IsBusy() bool { if casted, ok := lastMessage.Info.(opencode.AssistantMessage); ok { return casted.Time.Completed == 0 } - return true + return false } func (a *App) SaveState() tea.Cmd { diff --git a/packages/tui/internal/components/chat/messages.go b/packages/tui/internal/components/chat/messages.go index 92259e93a..ec7735d58 100644 --- a/packages/tui/internal/components/chat/messages.go +++ b/packages/tui/internal/components/chat/messages.go @@ -203,6 +203,11 @@ func (m *messagesComponent) Update(msg tea.Msg) (tea.Model, tea.Cmd) { if msg.Properties.Part.SessionID == m.app.Session.ID { cmds = append(cmds, m.renderView()) } + case opencode.EventListResponseEventMessageRemoved: + if msg.Properties.SessionID == m.app.Session.ID { + m.cache.Clear() + cmds = append(cmds, m.renderView()) + } case opencode.EventListResponseEventMessagePartRemoved: if msg.Properties.SessionID == m.app.Session.ID { // Clear the cache when a part is removed to ensure proper re-rendering |
