Skip to content

fix(web): hide removed app views - #5202

Open
igoramf wants to merge 1 commit into
mainfrom
ocultar-tool-mcp-removida
Open

fix(web): hide removed app views#5202
igoramf wants to merge 1 commit into
mainfrom
ocultar-tool-mcp-removida

Conversation

@igoramf

@igoramf igoramf commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

What changed

  • filter persisted app views, layout tabs, expanded tools, and default app views against the current tools/list response for each MCP connection
  • keep persisted views visible while tools/list is pending or failed, so transient outages do not erase valid UI
  • extract app-view tool resolution into shared helpers with unit coverage for namespaced and stale tool names
  • replace the raw "tool not found" message with localized empty-state copy when an app view is no longer available

Why

Persisted app views can outlive the downstream MCP tool that originally backed them. When that happens, Studio could keep exposing stale tabs or route the user into a broken app view.

Impact

Users no longer see removed app views in the main panel, and stale direct links fall back to a clearer unavailable state instead of a broken tool lookup.

Root cause

We were trusting persisted app-view metadata without validating it against the connection's current tool catalog.

Validation

  • bun test apps/web/src/routes/project-app-tool.test.ts
  • bun run fmt
  • bun run check

Summary by cubic

Hide stale or removed app views by validating pinned views, layout tabs, and expanded tools against each MCP connection’s current tools list. If a view is unavailable, we redirect to a safe tab and show a clear, localized message instead of a broken UI.

  • Bug Fixes
    • Filter persisted views (pinned, layout tabs, expanded tools) using the latest tools/list for each connection.
    • Preserve views while tools/list is pending or failed to avoid transient outages erasing UI.
    • Fall back to Chat when the configured default app view is unavailable; auto-resolve an invalid active tab.
    • Replace the raw “tool not found” with a localized unavailable state (en, pt-BR).
    • Extract shared helpers for tool resolution (handles namespaced vs base tool names) with unit tests.

Written for commit 44b205e. Summary will update on new commits.

Review in cubic

@igoramf
igoramf marked this pull request as ready for review July 24, 2026 16:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant