Repository navigation
Open existing agent chats and retained panes from their rows - #34650
Conversation
|
Important Review skippedReview was skipped as selected files did not have any reviewable changes.
|
There was a problem hiding this comment.
Actionable comments posted: 1

Review info
-
Run configuration-
- Source mode: Auto
- Repository: Unavailable
- Branch: Unavailable
- File: No configuration file from this repository applied
- Commit: Unavailable
- Layers: Repository UI
- Review profile: CHILL
- Plan: Advanced
- Run ID:
1232e156-6395-4488-aa3f-946631b4b87f
Files selected for processing: 10-
src/renderer/src/components/dashboard-popout/AgentTerminalDialog.test.tsxsrc/renderer/src/components/dashboard-popout/AgentTerminalPreview.test.tsxsrc/renderer/src/components/dashboard-popout/terminal-preview-unavailable-message.tssrc/renderer/src/components/dashboard/reveal-dashboard-agent.test.tssrc/renderer/src/components/dashboard/reveal-dashboard-agent.tssrc/renderer/src/components/sidebar/WorktreeCardAgents.activation.test.tsxsrc/renderer/src/components/sidebar/WorktreeCardAgents.test.tsxsrc/renderer/src/components/sidebar/WorktreeCardAgents.tsxsrc/renderer/src/components/sidebar/activate-retained-agent-row.tssrc/shared/dashboard-snapshot.ts
Files with no reviewable changes: 1-
- src/renderer/src/components/sidebar/WorktreeCardAgents.test.tsx
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 2 remain after this review.
-
|
Dashboard native-chat cards previously entered terminal activation, while an unavailable preview incorrectly claimed the pane had closed. Retained sidebar rows could also refuse an existing native chat or route a live terminal through the workspace’s default host. Cards and retained rows now open their current destination through the existing activation path. Native chats use the current tab’s owner; retained terminals use their exact live pane’s owner. An unavailable preview now says “No preview available — open the workspace to view this agent.” Two full review rounds are clean, with no deferred findings. Fixed the native-tab host mismatch, exact terminal-owner routing, missing production-store integration coverage, and CI fixture/catalog errors. Main’s basic live retained-terminal fix in #20804 is preserved. The common pattern is destination-scoped navigation. Intended differences are current-live terminal validation and host/path validation for Orca’s several-host and folder-workspace support; scope is opening existing destinations. Validation: 90 tests across six named suites passed after the catalog-only main integration, and six affected rewind tests passed after importing main’s already-merged CI fix #34721. The required merge hooks passed. Final CI is green on The branch screenshot uses the official component-fixture tool with the shipping board, card and preview. Its interaction asserts the exact text, “Open worktree,” and absence of the false closure message; final capture exited 0 with no page errors. Captured on this head. Local server/browser processes stopped, temporary files removed, real config hashes unchanged, and checkout clean. Both main-integration merges preserved the five reviewed shipping source files byte-for-byte. For Brennan’s review |
#34914) #34650 removed dashboardPopout.terminal.closed from en.json, but ru.json, tr.json and zh-Hant.json kept it, so verify:localization-catalogs fails on main ("extra: dashboardPopout.terminal.closed"). Drop it from those three. No other locale has extra keys; ru's _few/_many plural forms are expected.

Dashboard sends native-chat cards to terminal activation, and an unavailable preview incorrectly says the pane has closed. Retained sidebar rows cannot open an existing native chat, and terminal navigation can use the workspace’s default host instead of the exact live pane’s owner.
Cards and rows now open their current destination through the existing activation path. Native chats use the current tab’s owner. Retained terminals use their exact live pane’s owner, so a workspace’s default host cannot redirect the click. Preview absence says only that a preview is unavailable.
The change uses the common pattern: destination identity determines navigation, independently of status bookkeeping and preview availability. It adds no saved state, wire format, session creation or missing-pane resume behavior. Review path: full.
Intended behavior: retained rows without a current destination stay inert; persisted layout alone does not authorize a terminal click. A live remote pane absent from this renderer’s current inventory stays inert. A native card closed before its click retains the existing fallback. A current native tab with an unresolved owner cannot fall through to a different host’s terminal. Existing terminal preview panels and live-row hydration behavior remain part of Orca’s terminal and multi-host support.
Validation: regression cases failed before their fixes. Production-store integration covers snapshot -> rendered Dashboard -> actual dispatcher/native surface, retained sidebar activation, git and folder workspace selection, missing-workspace failure, and host-qualified terminal notification. Targeted renderer and activation tests passed through tc-gate; the normal pre-commit hook passed. Final CI, review and preview screenshot evidence are recorded in the review-loop status comment.
The basic live retained-terminal activation case is already on main in #20804; this PR preserves it and completes native-chat and host-qualified navigation.
Tracked in STA-7489.
Tracked in STA-7592.