Explorar o código

tui: fix session resumption with --session-id flag to navigate after app initialization

Previously when passing a session ID directly, the route was set during initial
render which could cause navigation issues before the router was fully ready.
Now the session navigation happens after initialization completes, ensuring
the TUI properly loads the requested session when users resume with --session-id.
Dax Raad hai 4 meses
pai
achega
a27d3c1623
Modificáronse 1 ficheiros con 7 adicións e 1 borrados
  1. 7 1
      packages/opencode/src/cli/cmd/tui/app.tsx

+ 7 - 1
packages/opencode/src/cli/cmd/tui/app.tsx

@@ -150,7 +150,7 @@ export function tui(input: {
                 <ToastProvider>
                   <RouteProvider
                     initialRoute={
-                      (input.args.sessionID || input.args.continue) && !input.args.fork
+                      input.args.continue
                         ? {
                             type: "session",
                             sessionID: "dummy",
@@ -342,6 +342,12 @@ function App(props: { onSnapshot?: () => Promise<string[]> }) {
           })
         local.model.set({ providerID, modelID }, { recent: true })
       }
+      if (args.sessionID && !args.fork) {
+        route.navigate({
+          type: "session",
+          sessionID: args.sessionID,
+        })
+      }
     })
   })