feat: replace MCP sessions inline filter bar with collapsible sidebar - #5916
Conversation
oauth_configs to new mcp_oauth_flows table
#5709
|
|
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@ui/app/workspace/mcp-sessions/page.tsx`:
- Around line 112-118: The MCP sessions layout currently keeps
MCPSessionsFilterSidebar beside the table at all viewport sizes, leaving
insufficient mobile width. Update the responsive layout around
MCPSessionsFilterSidebar and the table pane to stack them or render filters
through a drawer/sheet on narrow screens, while preserving the desktop
side-by-side layout and ensuring the table retains its minimum usable width
across loading, empty, error, and mobile states.
In `@ui/app/workspace/mcp-sessions/views/mcpSessionsFilterSidebar.tsx`:
- Around line 41-44: Update KIND_OPTIONS so OAuth is represented as a
UI-specific filter value, then expand that selection to both token and flow
before invoking useGetMCPSessionsQuery in the MCP sessions page. Keep Headers
mapped to header and preserve the existing query behavior for other filters.
- Around line 100-106: Rename the data-testid values in the MCP sessions filter
sidebar, including the symbols around the show toggle and the related reset and
hide controls, to kebab-case using the three-part entity-element-qualifier
convention. Update all corresponding E2E selectors to match the new identifiers.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 315eb904-8a92-4d8c-917e-2a2dafd10abc
📒 Files selected for processing (4)
ui/app/workspace/mcp-sessions/page.tsxui/app/workspace/mcp-sessions/views/mcpSessionsFilterSidebar.tsxui/app/workspace/mcp-sessions/views/sessionsFilterBar.tsxui/app/workspace/mcp-sessions/views/sessionsTable.tsx
💤 Files with no reviewable changes (1)
- ui/app/workspace/mcp-sessions/views/sessionsFilterBar.tsx
7703653 to
fd6de71
Compare
fd38b7f to
792c734
Compare
|
Note GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer. |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@ui/app/workspace/mcp-sessions/page.tsx`:
- Around line 40-47: Update setFilters and the sidebar reset behavior to include
mcp_client_id and identity, and add corresponding controls so every filter
consumed by useGetMCPSessionsQuery can be cleared from the page. Preserve
offset: 0 when filters change, and ensure clearing removes both query fields
rather than leaving URL-provided values active.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: a168facf-dbaf-455a-ae78-16f3314eac50
📒 Files selected for processing (4)
ui/app/workspace/mcp-sessions/page.tsxui/app/workspace/mcp-sessions/views/mcpSessionsFilterSidebar.tsxui/app/workspace/mcp-sessions/views/sessionsFilterBar.tsxui/app/workspace/mcp-sessions/views/sessionsTable.tsx
💤 Files with no reviewable changes (1)
- ui/app/workspace/mcp-sessions/views/sessionsFilterBar.tsx
🚧 Files skipped from review as they are similar to previous changes (2)
- ui/app/workspace/mcp-sessions/views/mcpSessionsFilterSidebar.tsx
- ui/app/workspace/mcp-sessions/views/sessionsTable.tsx
fd6de71 to
e91665c
Compare
792c734 to
7bc34ab
Compare
Merge activity
|
The base branch was changed.
7bc34ab to
8b926fe
Compare
Summary
Replaces the inline filter bar (search + multi-select dropdowns) on the MCP Sessions page with a collapsible sidebar panel, matching the filter UX pattern already used on the MCP Clients and MCP Library pages.
Changes
MCPSessionsFilterSidebarcomponent (mcpSessionsFilterSidebar.tsx) with collapsible checkbox sections for Type, Status, and Identity filters. The sidebar collapses to a narrow rail with an active-filter-count badge, and its collapsed state is persisted tolocalStorage.sessionsFilterBar.tsxand its inline multi-select dropdowns. The search input is now rendered directly insideSessionsTable, keeping it above the table without the sidebar owning it.kindFilter,onKindFilterChange,statusFilter,onStatusFilterChange,authModeFilter,onAuthModeFilterChange,onClearFilters) fromSessionsTable, since filter state is now managed by the sidebar.MCPSessionFilterstype andEMPTY_FILTERSconstant to represent the three filterable dimensions as a single object, passed between the page and sidebar viafilters/onFiltersChangeprops.UserRound/KeyRound/Fingerprintfor identity mode) intentionally match the vocabulary used in the table's rendered cells.Type of change
Affected areas
How to test
Screenshots/Recordings
Before: Inline filter bar with search input and three multi-select dropdowns above the table.
After: Collapsible sidebar with checkbox sections for Type, Status, and Identity; search input remains above the table inline.
Breaking changes
Related issues
Security considerations
None. Filter values are URL-state-bound strings with no auth, secrets, or PII implications.
Checklist
docs/contributing/README.mdand followed the guidelines