summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAiden Cline <[email protected]>2025-07-15 05:40:29 -0500
committerGitHub <[email protected]>2025-07-15 05:40:29 -0500
commit636fe0fb6407f35f55088caaf0facc3cd4c91f70 (patch)
tree1122a90604c06cd09c95c30b18e186e75398f743
parent95e0957d64efaef352ffc8799893b0171dcaac81 (diff)
downloadopencode-636fe0fb6407f35f55088caaf0facc3cd4c91f70.tar.gz
opencode-636fe0fb6407f35f55088caaf0facc3cd4c91f70.zip
Fix: failed to open session (#999)
-rw-r--r--packages/tui/internal/app/app.go7
-rw-r--r--packages/tui/internal/tui/tui.go3
2 files changed, 8 insertions, 2 deletions
diff --git a/packages/tui/internal/app/app.go b/packages/tui/internal/app/app.go
index 5f95cc429..52be32694 100644
--- a/packages/tui/internal/app/app.go
+++ b/packages/tui/internal/app/app.go
@@ -50,6 +50,9 @@ type App struct {
IsLeaderSequence bool
}
+type SessionCreatedMsg = struct {
+ Session *opencode.Session
+}
type SessionSelectedMsg = *opencode.Session
type SessionLoadedMsg struct{}
type ModelSelectedMsg struct {
@@ -380,7 +383,7 @@ func (a *App) InitializeProject(ctx context.Context) tea.Cmd {
}
a.Session = session
- cmds = append(cmds, util.CmdHandler(SessionSelectedMsg(session)))
+ cmds = append(cmds, util.CmdHandler(SessionCreatedMsg{Session: session}))
go func() {
_, err := a.Client.Session.Init(ctx, a.Session.ID, opencode.SessionInitParams{
@@ -456,7 +459,7 @@ func (a *App) SendChatMessage(
return a, toast.NewErrorToast(err.Error())
}
a.Session = session
- cmds = append(cmds, util.CmdHandler(SessionSelectedMsg(session)))
+ cmds = append(cmds, util.CmdHandler(SessionCreatedMsg{Session: session}))
}
message := opencode.UserMessage{
diff --git a/packages/tui/internal/tui/tui.go b/packages/tui/internal/tui/tui.go
index 02df5d6e1..ebd2ff1a0 100644
--- a/packages/tui/internal/tui/tui.go
+++ b/packages/tui/internal/tui/tui.go
@@ -498,6 +498,9 @@ func (a appModel) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
a.app.Session = msg
a.app.Messages = messages
return a, util.CmdHandler(app.SessionLoadedMsg{})
+ case app.SessionCreatedMsg:
+ a.app.Session = msg.Session
+ return a, util.CmdHandler(app.SessionLoadedMsg{})
case app.ModelSelectedMsg:
a.app.Provider = &msg.Provider
a.app.Model = &msg.Model