Fix session ID dropdown never appearing during active agentic chat
What does this MR do and why?
Fixes the session ID copy dropdown never appearing during active agentic chat.
content_container.vue's showSessionId computed property checked
activeTab.props?.mode === 'active', but ai_panel.vue constructs
activeTabObject as { title: this.currentTabTitle } — no props field.
The condition was permanently false, so the "Copy Chat Session ID"
ellipsis dropdown never rendered.
Fix: Replace the broken activeTab.props?.mode guard with a direct
$route?.name === AGENTIC_CHAT_SHOW_ROUTE check. This is reactive
(navigating away hides the dropdown, navigating back shows it), requires
no changes to ai_panel.vue or the state manager, and follows the same
pattern used by isShowingAgentSession in ai_panel.vue.
References
- The
activeTab.props?.modepattern was never wired up —activeTabObjecthas never included apropskey. content_container.vuealready watches$route.path, so$routeaccess is established.
Screenshots or screen recordings
How to set up and validate locally
- Open any project page (e.g.,
http://gdk.test:3000/gitlab-duo/test) - Click "Active GitLab Duo Chat" to open the AI panel
- Send a message and wait for the agentic workflow to start streaming
- Before fix: No ellipsis button appears in the chat header
- After fix: An ellipsis (⋮) "More options" button appears in the header. Clicking it shows "Copy Chat Session ID: <id>"
- Navigate to history tab → dropdown disappears
- Navigate back to active chat → dropdown reappears
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
