Skip to content

feat(desktop): provider-level toggle in model visibility dialog - #43492

Closed
michalmielczynski wants to merge 3 commits into
NousResearch:mainfrom
michalmielczynski:local-fixes
Closed

feat(desktop): provider-level toggle in model visibility dialog#43492
michalmielczynski wants to merge 3 commits into
NousResearch:mainfrom
michalmielczynski:local-fixes

Conversation

@michalmielczynski

Copy link
Copy Markdown

Problem

When all models of a provider were toggled off, closing and reopening the
dialog would auto-re-enable defaults. Empty storage was treated as
"never customized", falling back to curated defaults.

Solution

  • Tombstone marker (slug::) — disabling all models stores a tombstone so
    `effectiveVisibleKeys` knows this was intentional.
  • Provider-level toggle switch — one click toggles ALL models for that group.
  • Persistent disabled state — stays off across dialog close/open and restarts.

Files changed

File Change
`src/store/model-visibility.ts` `enableProvider`, `disableProvider`, `toggleProviderVisibility`
`src/components/model-visibility-dialog.tsx` Header toggle + visibility-filtered model rows
`src/store/model-visibility.test.ts` 4 new tests (tombstone, enable/disable cycle, provider toggle, -fast families)

6/6 tests pass. Build succeeds.

Michał Mielczyński added 3 commits June 10, 2026 12:46
Add enableProvider/disableProvider/toggleProviderVisibility functions
with tombstone support so disabled providers stay off across reloads.
Toggle switch per provider header lets user disable entire cloud
provider groups (Anthropic, Google, OpenAI) without auto-revert.
@alt-glitch alt-glitch added type/feature New feature or request P3 Low — cosmetic, nice to have comp/tui Terminal UI (ui-tui/ + tui_gateway/) duplicate This issue or pull request already exists labels Jun 10, 2026
@alt-glitch

Copy link
Copy Markdown
Collaborator

Competing fix for #43485 alongside #43496. #43496 is the focused fix (a provider:: sentinel to stop the hide-all snap-back); this PR bundles a provider-level toggle plus unrelated electron main/preload, titlebar, and thread-virtualizer changes. Marking as duplicate of the cleaner #43496 for the same root cause — maintainer can salvage the provider-toggle UX from here.

@austinpickett

Copy link
Copy Markdown
Collaborator

Closing as duplicate per maintainer label. Provider-level visibility toggle is already being tracked in another PR in the queue.

@tonydwb tonydwb left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review Summary

Verdict: Approved

Overview

Desktop feature PR adding provider-level toggle in the model visibility dialog. Allows users to hide/show all models from a given provider at the provider level rather than per-model.

Looks Good

  • Clean UI feature with proper sentinel key handling
  • Correctly inserts/removes emptyProviderSentinelKey when all models are hidden/restored
  • Well-scoped changes (8 files)
  • No security concerns or hardcoded secrets

Reviewed by Hermes Agent

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/tui Terminal UI (ui-tui/ + tui_gateway/) duplicate This issue or pull request already exists P3 Low — cosmetic, nice to have type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants