[Improve] Show provider headers in multi-provider model choosers#392
Merged
mrubens merged 2 commits intoJul 15, 2026
Merged
Conversation
Contributor
Author
|
No new code issues found. See task
Reviewed 6d938e9 |
mrubens
marked this pull request as ready for review
July 15, 2026 17:40
mrubens
requested review from
brunobergher,
daniel-lxs and
mrubens
as code owners
July 15, 2026 17:40
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Related issue
Internal consistency fix — no linked issue.
Why this PR exists
What changed
Launch model choosers (home, onboarding, preview, and settings role selects) now show the same provider section headers as the settings coding-model dropdown when more than one display provider is represented in the list.
Shared grouping now lives in
groupModelsByDisplayProvider, and launch options includechatgptConnectedso subscription OpenAI models group under ChatGPT (subscription) instead of OpenAI when appropriate. With only one provider group present, headers stay hidden so a single-provider list stays flat.Connecting or disconnecting a ChatGPT subscription now also invalidates
taskModels.launchOptions, so the home/launch model chooser refetches and regroups immediately instead of keeping a stalechatgptConnectedflag.Why this change was made
With multiple inference providers connected, the home/launch model dropdown was a flat list while Settings already grouped by provider, making multi-provider catalogs harder to scan and inconsistent across surfaces. After the grouping fix landed, ChatGPT connect/disconnect still left launch options cached, so the chooser could keep the wrong provider headers until a full refresh.
Impact
Opening any multi-provider model chooser now shows labeled provider sections (for example OpenRouter and OpenAI / ChatGPT subscription) above the models. Single-provider lists remain unchanged visually. ChatGPT subscription connect/disconnect updates the launch chooser grouping without a page reload.
How it was tested
pnpm --filter @roomote/types exec vitest run src/model-provider-config.test.tspnpm --filter @roomote/web exec vitest run src/components/tasks/ModelSelect.client.test.tsxpnpm --filter @roomote/web exec vitest run src/components/settings/ModelSettingsSection.test.tsxpnpm --filter @roomote/web exec vitest run src/components/settings/InferenceProviderSection.test.tsxScreenshots
Checklist
[Fix],[Feat],[Improve],[Refactor],[Docs], or[Chore]followed by a user-facing descriptionpnpm lintandpnpm check-typespass locallypnpm changeset