wso2 / wso2/api-platform

Setup-progress banner doesn't persist dismissal (LLM Provider / AI Gateway / MCP Proxy)

Open
#3,266 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Aspect/UI Severity/Minor Type/Bug
Dominant language
Go
Stars
71
Forks
111
Avg merge
1d 14h
Merged PRs (30d)
110

Description

Please select the area the issue is related to

AI Workspace

Please select the aspect the issue is related to

Aspect/UI (Frontend layouts, components, styling)

Description

The dismissible setup-progress banners on LLM Provider, AI Gateway, and MCP Proxy overview pages don't persist their dismissed state. Clicking the "x", or completing all steps and navigating away, doesn't stick — the banner reappears every time the page remounts, even for fully-configured items.

Confirmed via code: LLLMStepBanner.tsx, AIGatewayStepBanner.tsx, and ExternalServerStepBanner.tsx each use local component state (useState(true) for visibility), set to false only in the "x" onClick handler. Nothing is persisted to localStorage or the backend, so remounting the component (e.g. navigating away and back) always resets it to visible.

The fix pattern already exists elsewhere in this codebase: the onboarding-wizard skip flow persists dismissal via localStorage.setItem('qs_wizard_dismissed_${orgId}', 'true') (quickStartWizard/Main.tsx, read in appShellMain.tsx). Recommend mirroring that pattern, keyed per-entity-id, in the three banner components.

Steps to Reproduce
  1. Create or open an LLM Provider (or AI Gateway, or MCP Proxy) with a visible setup-progress banner.
    1. Click the x to dismiss it, or complete all setup steps and navigate away.
    1. Navigate back to the same item overview page.
    1. Banner reappears (expected: it should stay dismissed).
Severity Level of the Issue

Severity/Minor (Non-critical functionality. Can be fixed in future releases)

Environment Details (with versions)

Reproduces in all environments (code-level bug, not environment-specific).

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with LLLMStepBanner.tsx, AIGatewayStepBanner.tsx, and ExternalServerStepBanner.tsx, then compare their state handling with quickStartWizard/Main.tsx and appShellMain.tsx. Persist dismissal per entity ID using the existing onboarding pattern, and verify that dismissing or completing setup keeps the banner hidden after navigating away and back.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
75/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.