feat(web): redesign provider editor and models list - #8508

Merged
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign
Sep 2, 2026
Merged

feat(web): redesign provider editor and models list#8508
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign

Conversation

@StiensWout

@StiensWoutStiensWout commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

The provider editor was a long stack of full-width label-over-input fields, a four-column table for usually zero to two environment variables, and a Models tab capped at 160px with four always-visible icon buttons per row. Codex models also never showed "Fast mode" because the label only matched the boolean fastMode descriptor, not Codex's serviceTier select.

What changes:

  • Configuration tab regrouped into a label-left grid (new grid variant of ProviderSettingsForm; the Add wizard's dialog variant is untouched): display name and accent swatches on one line, then Runtime and Environment groups under small divider labels. Each driver field is one line, with its description beside a fixed-width input. Environment variables are compact NAME = value rows with a lock toggle for sensitive values. Delete instance moves to the editor header.
  • Models tab: no height cap, rows are a fixed-column grid (star, name and slug, capabilities, reorder and remove, picker switch) so capabilities line up and the reorder arrows stay in the row instead of appearing on hover. Picker visibility is a per-row switch (custom models show a disabled checked switch since they are always offered), favorites are grouped first with hidden models sunk to the bottom, a filter input appears above eight models, and "Add custom model" is a ghost button that expands into the input. The Models tab label shows the model count and how many are hidden.
  • Capability labels count a Codex serviceTier select with a "Fast" tier as Fast mode, matching the composer's logic.
  • Section header: "Checked Xs ago" and refresh are one compact ghost button next to Add provider.

Before

Configuration tab:

Provider editor before, Configuration

Models tab:

Provider editor before, Models

After

Screenshots predate the last commit, which made each driver field one line, aligned the model columns, and added the model count to the tab.

Configuration tab:

Provider editor after, Configuration

Models tab:

Provider editor after, Models

Checks

  • vp test run on the four provider settings test files (21 tests), including a new groupModelsForDisplay test
  • vp run --filter @t3tools/web typecheck
  • Focused lint and format on the changed files

Built with Claude Fable 5.1 in the Claude Code harness via T3 Code.


Note

Medium Risk
Model list ordering and hidden-model grouping change persisted modelOrder semantics and what users see for edge cases (e.g. custom slugs in hidden prefs); otherwise UI-only settings changes with new test coverage for grouping.

Overview
Redesigns the provider instance Configuration and Models tabs plus related settings chrome.

The Configuration tab moves to a label-left two-column grid: display name shares a row with an inline accent swatch row (ProviderAccentColorPickerlayout="inline"), driver fields use a new grid variant on ProviderSettingsForm (description beside fixed-width controls), and Runtime / Environment sections get divider labels. Environment variables drop the bordered table for compact NAME = value rows with lock/unlock for sensitivity and inline remove. Delete instance moves from the list header icon to a text button in the editor header.

The Models tab removes the short height cap and info popovers in favor of a fixed-column row layout: inline capability tags (including Fast mode for Codex serviceTier selects), always-visible reorder/remove actions, and a picker visibility switch instead of eye icons. Lists are ordered via new groupModelsForDisplay (favorites, then visible, then hidden built-ins; custom models never treated as hidden). Reorder only swaps neighbors within the same group; filtering appears when there are more than eight models; add-custom-model is collapsible with cancel/Escape and scroll-to-new-row. The Models tab label shows total and hidden counts.

Providers section header combines refresh and “Checked … ago” into one compact button (sr-only label for tests); read-only mode shows last-checked text and keeps Advanced health-interval labels readable while controls stay inert.

Reviewed by Cursor Bugbot for commit d6fb0bb. Bugbot is set up for automated code reviews on this repo. Configure here.

Note

Add inline layout option to ProviderAccentColorPicker

Extracts the custom picker, preset swatches, and clear action into a reusable swatch row. The new optional stacked/inline layout prop defaults to stacked, which keeps the label and description. inline mode renders only the swatch row.

Macroscope summarized d6fb0bb.

@coderabbitai

coderabbitaiBot commented Aug 28, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: a4150b38-4d2a-4471-af42-52f97c78b786

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 942ff02 to 50cda2fCompareAugust 28, 2026 07:45
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Reviewed the provider list/editor redesign for shared-primitive and Tailwind-ownership consistency. Three findings, all in changed lines, about icon-color indirection through Button and a call-site override of Switch geometry. Layout/inert/read-only handling, the new grid variant of ProviderSettingsForm, and the models grouping helper look consistent with the existing contracts.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review

Four findings, all in changed lines. Three are shared-primitive contract issues where a call-site class never reaches the element it is meant to style:

  • Button routes icon color through --control-icon-color ([&_svg:not([class*='text-'])]:text-[var(--control-icon-color)]), so text-* on the button does not tint a bare icon child. The favorite star and the sensitive/lock toggle lose their state colors as a result.
  • Input applies className to the outer input-control wrapper, not the inner <input>, so h-8 / text-xs at the call site do not resize the control; size="compact" is the existing contract for that.

No issues found with the grid variant in ProviderSettingsForm, the layout="inline" accent picker, the read-only inert scoping in ProviderInstanceCard / ProviderSettingsPanel, or the --thumb-size switch override (an established call-site pattern).

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
@macroscopeapp

macroscopeappBot commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Not approved

Macroscope's review found this PR not approvable — This is a substantial provider-settings redesign with new model filtering and visibility interactions plus changed persistence semantics for model ordering. The configuration and environment editor behavior also changes across the production settings surface, warranting human review.

You can add or adjust custom eligibility rules. Learn more.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 50cda2f to 266be5dCompareAugust 28, 2026 08:30
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One accessibility regression found in the reworked Providers section header. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete buttons, size="compact" on the env and filter inputs, switch thumb sizing) is addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 3da2fcc to 15ab68aCompareAugust 28, 2026 08:47
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the provider editor header/configuration grid. Prior comments on icon-color indirection and compact input sizing have been addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two layout findings in the redesigned provider list row / environment rows. Everything flagged in earlier runs (icon-color indirection on the star and lock buttons, size="compact" on the env and filter inputs, the switch thumb override, and the refresh button's accessible name) looks resolved.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review: two findings on the redesigned provider panels. Earlier findings (icon-color indirection on the star/lock buttons, size="compact" on the env/filter inputs, switch thumb sizing, refresh-button accessible name) look resolved on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One new finding on the redesigned models list; details inline. The coarse-pointer issue flagged on the previous push (hover-only reorder / remove-custom-model actions in ProviderModelsSection) still stands and is not re-posted here.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the redesigned provider panel. Everything flagged in earlier runs (icon-color indirection, compact input sizing, coarse-pointer row actions, refresh button accessible name, fixed row height) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 7985270 to fa7e6dcCompareAugust 28, 2026 11:46
@github-actionsgithub-actionsBot added size:XXL 1,000+ changed lines (additions + deletions). and removed size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
StiensWoutand others added 8 commits September 2, 2026 11:35
Configuration tab now has an Identity row (name and accent swatches on one
line) and a Runtime group in a label-left grid, with environment variables as
compact NAME=value rows and Delete moved into a footer. The Models tab drops
the 160px cap, shows slug and capabilities inline, reveals actions on hover,
and groups favorites first with hidden models sunk to the bottom.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Each built-in model row gets an always-visible switch for picker visibility,
reorder and remove stay on hover, a filter appears above eight models, and
adding a custom model expands from a ghost button. Codex service tiers with a
fast tier now count as Fast mode in the capability labels.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
A favorited model that was also hidden rendered as visible, ghost buttons
never showed their star, lock, or destructive tones because Button pins bare
svg color, env and filter inputs used the compact size through classes the
wrapper overrides, the model switch shrank the mobile touch target, and an
empty catalog read as a failed filter.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…-only sessions
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… text outgrows them
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
StiensWoutand others added 2 commits September 2, 2026 11:35
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… delete button by its label
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from fa7e6dc to 2ff8b73CompareSeptember 2, 2026 09:37
@github-actionsgithub-actionsBot added size:XL 500-999 changed lines (additions + deletions). and removed size:XXL 1,000+ changed lines (additions + deletions). labels Sep 2, 2026
…el count in the tab
Configuration: each driver field is one line, with its description beside a
fixed-width input, under small Runtime and Environment divider labels.
Models: rows are a fixed-column grid (star, name and slug, capabilities,
reorder and remove, picker switch), so capabilities line up and the reorder
arrows stay in the row instead of appearing on hover. The Models tab shows
the model count and how many are hidden.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
The narrow-viewport model list is height-capped, so a model added at the
bottom could land out of sight once the input closed. Remember the added slug
and scroll its row into view after the updated list renders.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One layout finding on the redesigned models list; details inline. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete/update buttons, size="compact" on the env and filter inputs, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, the coarse-pointer row actions, and the missing height cap below lg) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings on this head; details inline. Everything flagged in earlier runs (icon-color indirection, compact input sizing, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, coarse-pointer row actions, the missing height cap below lg, the 3rem actions track, and the filter clearing on add) reads as addressed.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsForm.tsx
…ields for assistive tech
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@cursorcursorBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 71ceb4f. Configure here.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@maria-rcks
maria-rcks merged commit 6effe0a into pingdotgg:mainSep 2, 2026
27 checks passed
juliusmarminge added a commit that referenced this pull request Sep 2, 2026
Renumbers the v2 migrations 044-052 to 045-053 behind main's
044_ClearAutomaticProjectModelDefaults, and adopts main's sticky
new-thread selection (#9164), local-only worktree bases in the v2 launch
path (#8751), the PR summary read for settlement (#9176), Claude per-cwd
skills (#9210), the provider editor redesign with the branch's dedicated
environment fields re-grafted (#8508), and the client half of
continue-threads-across-restart (#9167). The server-side continuation
markers stay unported: they live in the v1 session directory, and v2
recovery terminalizes running runs on restart, so the capability is
withheld until the v2 runtime carries them.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL500-999 changed lines (additions + deletions).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@StiensWout@maria-rcks
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

feat(web): redesign provider editor and models list - #8508

Merged
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign
Sep 2, 2026
Merged

feat(web): redesign provider editor and models list#8508
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign

Conversation

@StiensWout

@StiensWoutStiensWout commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

The provider editor was a long stack of full-width label-over-input fields, a four-column table for usually zero to two environment variables, and a Models tab capped at 160px with four always-visible icon buttons per row. Codex models also never showed "Fast mode" because the label only matched the boolean fastMode descriptor, not Codex's serviceTier select.

What changes:

  • Configuration tab regrouped into a label-left grid (new grid variant of ProviderSettingsForm; the Add wizard's dialog variant is untouched): display name and accent swatches on one line, then Runtime and Environment groups under small divider labels. Each driver field is one line, with its description beside a fixed-width input. Environment variables are compact NAME = value rows with a lock toggle for sensitive values. Delete instance moves to the editor header.
  • Models tab: no height cap, rows are a fixed-column grid (star, name and slug, capabilities, reorder and remove, picker switch) so capabilities line up and the reorder arrows stay in the row instead of appearing on hover. Picker visibility is a per-row switch (custom models show a disabled checked switch since they are always offered), favorites are grouped first with hidden models sunk to the bottom, a filter input appears above eight models, and "Add custom model" is a ghost button that expands into the input. The Models tab label shows the model count and how many are hidden.
  • Capability labels count a Codex serviceTier select with a "Fast" tier as Fast mode, matching the composer's logic.
  • Section header: "Checked Xs ago" and refresh are one compact ghost button next to Add provider.

Before

Configuration tab:

Provider editor before, Configuration

Models tab:

Provider editor before, Models

After

Screenshots predate the last commit, which made each driver field one line, aligned the model columns, and added the model count to the tab.

Configuration tab:

Provider editor after, Configuration

Models tab:

Provider editor after, Models

Checks

  • vp test run on the four provider settings test files (21 tests), including a new groupModelsForDisplay test
  • vp run --filter @t3tools/web typecheck
  • Focused lint and format on the changed files

Built with Claude Fable 5.1 in the Claude Code harness via T3 Code.


Note

Medium Risk
Model list ordering and hidden-model grouping change persisted modelOrder semantics and what users see for edge cases (e.g. custom slugs in hidden prefs); otherwise UI-only settings changes with new test coverage for grouping.

Overview
Redesigns the provider instance Configuration and Models tabs plus related settings chrome.

The Configuration tab moves to a label-left two-column grid: display name shares a row with an inline accent swatch row (ProviderAccentColorPickerlayout="inline"), driver fields use a new grid variant on ProviderSettingsForm (description beside fixed-width controls), and Runtime / Environment sections get divider labels. Environment variables drop the bordered table for compact NAME = value rows with lock/unlock for sensitivity and inline remove. Delete instance moves from the list header icon to a text button in the editor header.

The Models tab removes the short height cap and info popovers in favor of a fixed-column row layout: inline capability tags (including Fast mode for Codex serviceTier selects), always-visible reorder/remove actions, and a picker visibility switch instead of eye icons. Lists are ordered via new groupModelsForDisplay (favorites, then visible, then hidden built-ins; custom models never treated as hidden). Reorder only swaps neighbors within the same group; filtering appears when there are more than eight models; add-custom-model is collapsible with cancel/Escape and scroll-to-new-row. The Models tab label shows total and hidden counts.

Providers section header combines refresh and “Checked … ago” into one compact button (sr-only label for tests); read-only mode shows last-checked text and keeps Advanced health-interval labels readable while controls stay inert.

Reviewed by Cursor Bugbot for commit d6fb0bb. Bugbot is set up for automated code reviews on this repo. Configure here.

Note

Add inline layout option to ProviderAccentColorPicker

Extracts the custom picker, preset swatches, and clear action into a reusable swatch row. The new optional stacked/inline layout prop defaults to stacked, which keeps the label and description. inline mode renders only the swatch row.

Macroscope summarized d6fb0bb.

@coderabbitai

coderabbitaiBot commented Aug 28, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: a4150b38-4d2a-4471-af42-52f97c78b786

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 942ff02 to 50cda2fCompareAugust 28, 2026 07:45
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Reviewed the provider list/editor redesign for shared-primitive and Tailwind-ownership consistency. Three findings, all in changed lines, about icon-color indirection through Button and a call-site override of Switch geometry. Layout/inert/read-only handling, the new grid variant of ProviderSettingsForm, and the models grouping helper look consistent with the existing contracts.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review

Four findings, all in changed lines. Three are shared-primitive contract issues where a call-site class never reaches the element it is meant to style:

  • Button routes icon color through --control-icon-color ([&_svg:not([class*='text-'])]:text-[var(--control-icon-color)]), so text-* on the button does not tint a bare icon child. The favorite star and the sensitive/lock toggle lose their state colors as a result.
  • Input applies className to the outer input-control wrapper, not the inner <input>, so h-8 / text-xs at the call site do not resize the control; size="compact" is the existing contract for that.

No issues found with the grid variant in ProviderSettingsForm, the layout="inline" accent picker, the read-only inert scoping in ProviderInstanceCard / ProviderSettingsPanel, or the --thumb-size switch override (an established call-site pattern).

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
@macroscopeapp

macroscopeappBot commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Not approved

Macroscope's review found this PR not approvable — This is a substantial provider-settings redesign with new model filtering and visibility interactions plus changed persistence semantics for model ordering. The configuration and environment editor behavior also changes across the production settings surface, warranting human review.

You can add or adjust custom eligibility rules. Learn more.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 50cda2f to 266be5dCompareAugust 28, 2026 08:30
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One accessibility regression found in the reworked Providers section header. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete buttons, size="compact" on the env and filter inputs, switch thumb sizing) is addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 3da2fcc to 15ab68aCompareAugust 28, 2026 08:47
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the provider editor header/configuration grid. Prior comments on icon-color indirection and compact input sizing have been addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two layout findings in the redesigned provider list row / environment rows. Everything flagged in earlier runs (icon-color indirection on the star and lock buttons, size="compact" on the env and filter inputs, the switch thumb override, and the refresh button's accessible name) looks resolved.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review: two findings on the redesigned provider panels. Earlier findings (icon-color indirection on the star/lock buttons, size="compact" on the env/filter inputs, switch thumb sizing, refresh-button accessible name) look resolved on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One new finding on the redesigned models list; details inline. The coarse-pointer issue flagged on the previous push (hover-only reorder / remove-custom-model actions in ProviderModelsSection) still stands and is not re-posted here.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the redesigned provider panel. Everything flagged in earlier runs (icon-color indirection, compact input sizing, coarse-pointer row actions, refresh button accessible name, fixed row height) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 7985270 to fa7e6dcCompareAugust 28, 2026 11:46
@github-actionsgithub-actionsBot added size:XXL 1,000+ changed lines (additions + deletions). and removed size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
StiensWoutand others added 8 commits September 2, 2026 11:35
Configuration tab now has an Identity row (name and accent swatches on one
line) and a Runtime group in a label-left grid, with environment variables as
compact NAME=value rows and Delete moved into a footer. The Models tab drops
the 160px cap, shows slug and capabilities inline, reveals actions on hover,
and groups favorites first with hidden models sunk to the bottom.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Each built-in model row gets an always-visible switch for picker visibility,
reorder and remove stay on hover, a filter appears above eight models, and
adding a custom model expands from a ghost button. Codex service tiers with a
fast tier now count as Fast mode in the capability labels.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
A favorited model that was also hidden rendered as visible, ghost buttons
never showed their star, lock, or destructive tones because Button pins bare
svg color, env and filter inputs used the compact size through classes the
wrapper overrides, the model switch shrank the mobile touch target, and an
empty catalog read as a failed filter.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…-only sessions
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… text outgrows them
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
StiensWoutand others added 2 commits September 2, 2026 11:35
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… delete button by its label
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from fa7e6dc to 2ff8b73CompareSeptember 2, 2026 09:37
@github-actionsgithub-actionsBot added size:XL 500-999 changed lines (additions + deletions). and removed size:XXL 1,000+ changed lines (additions + deletions). labels Sep 2, 2026
…el count in the tab
Configuration: each driver field is one line, with its description beside a
fixed-width input, under small Runtime and Environment divider labels.
Models: rows are a fixed-column grid (star, name and slug, capabilities,
reorder and remove, picker switch), so capabilities line up and the reorder
arrows stay in the row instead of appearing on hover. The Models tab shows
the model count and how many are hidden.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
The narrow-viewport model list is height-capped, so a model added at the
bottom could land out of sight once the input closed. Remember the added slug
and scroll its row into view after the updated list renders.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One layout finding on the redesigned models list; details inline. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete/update buttons, size="compact" on the env and filter inputs, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, the coarse-pointer row actions, and the missing height cap below lg) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings on this head; details inline. Everything flagged in earlier runs (icon-color indirection, compact input sizing, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, coarse-pointer row actions, the missing height cap below lg, the 3rem actions track, and the filter clearing on add) reads as addressed.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsForm.tsx
…ields for assistive tech
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@cursorcursorBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 71ceb4f. Configure here.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@maria-rcks
maria-rcks merged commit 6effe0a into pingdotgg:mainSep 2, 2026
27 checks passed
juliusmarminge added a commit that referenced this pull request Sep 2, 2026
Renumbers the v2 migrations 044-052 to 045-053 behind main's
044_ClearAutomaticProjectModelDefaults, and adopts main's sticky
new-thread selection (#9164), local-only worktree bases in the v2 launch
path (#8751), the PR summary read for settlement (#9176), Claude per-cwd
skills (#9210), the provider editor redesign with the branch's dedicated
environment fields re-grafted (#8508), and the client half of
continue-threads-across-restart (#9167). The server-side continuation
markers stay unported: they live in the v1 session directory, and v2
recovery terminalizes running runs on restart, so the capability is
withheld until the v2 runtime carries them.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL500-999 changed lines (additions + deletions).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@StiensWout@maria-rcks
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(web): redesign provider editor and models list - #8508

Merged
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign
Sep 2, 2026
Merged

feat(web): redesign provider editor and models list#8508
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign

Conversation

@StiensWout

@StiensWoutStiensWout commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

The provider editor was a long stack of full-width label-over-input fields, a four-column table for usually zero to two environment variables, and a Models tab capped at 160px with four always-visible icon buttons per row. Codex models also never showed "Fast mode" because the label only matched the boolean fastMode descriptor, not Codex's serviceTier select.

What changes:

  • Configuration tab regrouped into a label-left grid (new grid variant of ProviderSettingsForm; the Add wizard's dialog variant is untouched): display name and accent swatches on one line, then Runtime and Environment groups under small divider labels. Each driver field is one line, with its description beside a fixed-width input. Environment variables are compact NAME = value rows with a lock toggle for sensitive values. Delete instance moves to the editor header.
  • Models tab: no height cap, rows are a fixed-column grid (star, name and slug, capabilities, reorder and remove, picker switch) so capabilities line up and the reorder arrows stay in the row instead of appearing on hover. Picker visibility is a per-row switch (custom models show a disabled checked switch since they are always offered), favorites are grouped first with hidden models sunk to the bottom, a filter input appears above eight models, and "Add custom model" is a ghost button that expands into the input. The Models tab label shows the model count and how many are hidden.
  • Capability labels count a Codex serviceTier select with a "Fast" tier as Fast mode, matching the composer's logic.
  • Section header: "Checked Xs ago" and refresh are one compact ghost button next to Add provider.

Before

Configuration tab:

Provider editor before, Configuration

Models tab:

Provider editor before, Models

After

Screenshots predate the last commit, which made each driver field one line, aligned the model columns, and added the model count to the tab.

Configuration tab:

Provider editor after, Configuration

Models tab:

Provider editor after, Models

Checks

  • vp test run on the four provider settings test files (21 tests), including a new groupModelsForDisplay test
  • vp run --filter @t3tools/web typecheck
  • Focused lint and format on the changed files

Built with Claude Fable 5.1 in the Claude Code harness via T3 Code.


Note

Medium Risk
Model list ordering and hidden-model grouping change persisted modelOrder semantics and what users see for edge cases (e.g. custom slugs in hidden prefs); otherwise UI-only settings changes with new test coverage for grouping.

Overview
Redesigns the provider instance Configuration and Models tabs plus related settings chrome.

The Configuration tab moves to a label-left two-column grid: display name shares a row with an inline accent swatch row (ProviderAccentColorPickerlayout="inline"), driver fields use a new grid variant on ProviderSettingsForm (description beside fixed-width controls), and Runtime / Environment sections get divider labels. Environment variables drop the bordered table for compact NAME = value rows with lock/unlock for sensitivity and inline remove. Delete instance moves from the list header icon to a text button in the editor header.

The Models tab removes the short height cap and info popovers in favor of a fixed-column row layout: inline capability tags (including Fast mode for Codex serviceTier selects), always-visible reorder/remove actions, and a picker visibility switch instead of eye icons. Lists are ordered via new groupModelsForDisplay (favorites, then visible, then hidden built-ins; custom models never treated as hidden). Reorder only swaps neighbors within the same group; filtering appears when there are more than eight models; add-custom-model is collapsible with cancel/Escape and scroll-to-new-row. The Models tab label shows total and hidden counts.

Providers section header combines refresh and “Checked … ago” into one compact button (sr-only label for tests); read-only mode shows last-checked text and keeps Advanced health-interval labels readable while controls stay inert.

Reviewed by Cursor Bugbot for commit d6fb0bb. Bugbot is set up for automated code reviews on this repo. Configure here.

Note

Add inline layout option to ProviderAccentColorPicker

Extracts the custom picker, preset swatches, and clear action into a reusable swatch row. The new optional stacked/inline layout prop defaults to stacked, which keeps the label and description. inline mode renders only the swatch row.

Macroscope summarized d6fb0bb.

@coderabbitai

coderabbitaiBot commented Aug 28, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: a4150b38-4d2a-4471-af42-52f97c78b786

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 942ff02 to 50cda2fCompareAugust 28, 2026 07:45
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Reviewed the provider list/editor redesign for shared-primitive and Tailwind-ownership consistency. Three findings, all in changed lines, about icon-color indirection through Button and a call-site override of Switch geometry. Layout/inert/read-only handling, the new grid variant of ProviderSettingsForm, and the models grouping helper look consistent with the existing contracts.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review

Four findings, all in changed lines. Three are shared-primitive contract issues where a call-site class never reaches the element it is meant to style:

  • Button routes icon color through --control-icon-color ([&_svg:not([class*='text-'])]:text-[var(--control-icon-color)]), so text-* on the button does not tint a bare icon child. The favorite star and the sensitive/lock toggle lose their state colors as a result.
  • Input applies className to the outer input-control wrapper, not the inner <input>, so h-8 / text-xs at the call site do not resize the control; size="compact" is the existing contract for that.

No issues found with the grid variant in ProviderSettingsForm, the layout="inline" accent picker, the read-only inert scoping in ProviderInstanceCard / ProviderSettingsPanel, or the --thumb-size switch override (an established call-site pattern).

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
@macroscopeapp

macroscopeappBot commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Not approved

Macroscope's review found this PR not approvable — This is a substantial provider-settings redesign with new model filtering and visibility interactions plus changed persistence semantics for model ordering. The configuration and environment editor behavior also changes across the production settings surface, warranting human review.

You can add or adjust custom eligibility rules. Learn more.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 50cda2f to 266be5dCompareAugust 28, 2026 08:30
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One accessibility regression found in the reworked Providers section header. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete buttons, size="compact" on the env and filter inputs, switch thumb sizing) is addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 3da2fcc to 15ab68aCompareAugust 28, 2026 08:47
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the provider editor header/configuration grid. Prior comments on icon-color indirection and compact input sizing have been addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two layout findings in the redesigned provider list row / environment rows. Everything flagged in earlier runs (icon-color indirection on the star and lock buttons, size="compact" on the env and filter inputs, the switch thumb override, and the refresh button's accessible name) looks resolved.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review: two findings on the redesigned provider panels. Earlier findings (icon-color indirection on the star/lock buttons, size="compact" on the env/filter inputs, switch thumb sizing, refresh-button accessible name) look resolved on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One new finding on the redesigned models list; details inline. The coarse-pointer issue flagged on the previous push (hover-only reorder / remove-custom-model actions in ProviderModelsSection) still stands and is not re-posted here.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the redesigned provider panel. Everything flagged in earlier runs (icon-color indirection, compact input sizing, coarse-pointer row actions, refresh button accessible name, fixed row height) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 7985270 to fa7e6dcCompareAugust 28, 2026 11:46
@github-actionsgithub-actionsBot added size:XXL 1,000+ changed lines (additions + deletions). and removed size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
StiensWoutand others added 8 commits September 2, 2026 11:35
Configuration tab now has an Identity row (name and accent swatches on one
line) and a Runtime group in a label-left grid, with environment variables as
compact NAME=value rows and Delete moved into a footer. The Models tab drops
the 160px cap, shows slug and capabilities inline, reveals actions on hover,
and groups favorites first with hidden models sunk to the bottom.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Each built-in model row gets an always-visible switch for picker visibility,
reorder and remove stay on hover, a filter appears above eight models, and
adding a custom model expands from a ghost button. Codex service tiers with a
fast tier now count as Fast mode in the capability labels.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
A favorited model that was also hidden rendered as visible, ghost buttons
never showed their star, lock, or destructive tones because Button pins bare
svg color, env and filter inputs used the compact size through classes the
wrapper overrides, the model switch shrank the mobile touch target, and an
empty catalog read as a failed filter.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…-only sessions
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… text outgrows them
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
StiensWoutand others added 2 commits September 2, 2026 11:35
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… delete button by its label
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from fa7e6dc to 2ff8b73CompareSeptember 2, 2026 09:37
@github-actionsgithub-actionsBot added size:XL 500-999 changed lines (additions + deletions). and removed size:XXL 1,000+ changed lines (additions + deletions). labels Sep 2, 2026
…el count in the tab
Configuration: each driver field is one line, with its description beside a
fixed-width input, under small Runtime and Environment divider labels.
Models: rows are a fixed-column grid (star, name and slug, capabilities,
reorder and remove, picker switch), so capabilities line up and the reorder
arrows stay in the row instead of appearing on hover. The Models tab shows
the model count and how many are hidden.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
The narrow-viewport model list is height-capped, so a model added at the
bottom could land out of sight once the input closed. Remember the added slug
and scroll its row into view after the updated list renders.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One layout finding on the redesigned models list; details inline. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete/update buttons, size="compact" on the env and filter inputs, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, the coarse-pointer row actions, and the missing height cap below lg) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings on this head; details inline. Everything flagged in earlier runs (icon-color indirection, compact input sizing, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, coarse-pointer row actions, the missing height cap below lg, the 3rem actions track, and the filter clearing on add) reads as addressed.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsForm.tsx
…ields for assistive tech
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@cursorcursorBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 71ceb4f. Configure here.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@maria-rcks
maria-rcks merged commit 6effe0a into pingdotgg:mainSep 2, 2026
27 checks passed
juliusmarminge added a commit that referenced this pull request Sep 2, 2026
Renumbers the v2 migrations 044-052 to 045-053 behind main's
044_ClearAutomaticProjectModelDefaults, and adopts main's sticky
new-thread selection (#9164), local-only worktree bases in the v2 launch
path (#8751), the PR summary read for settlement (#9176), Claude per-cwd
skills (#9210), the provider editor redesign with the branch's dedicated
environment fields re-grafted (#8508), and the client half of
continue-threads-across-restart (#9167). The server-side continuation
markers stay unported: they live in the v1 session directory, and v2
recovery terminalizes running runs on restart, so the capability is
withheld until the v2 runtime carries them.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL500-999 changed lines (additions + deletions).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@StiensWout@maria-rcks
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(web): redesign provider editor and models list - #8508

Merged
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign
Sep 2, 2026
Merged

feat(web): redesign provider editor and models list#8508
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign

Conversation

@StiensWout

@StiensWoutStiensWout commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

The provider editor was a long stack of full-width label-over-input fields, a four-column table for usually zero to two environment variables, and a Models tab capped at 160px with four always-visible icon buttons per row. Codex models also never showed "Fast mode" because the label only matched the boolean fastMode descriptor, not Codex's serviceTier select.

What changes:

  • Configuration tab regrouped into a label-left grid (new grid variant of ProviderSettingsForm; the Add wizard's dialog variant is untouched): display name and accent swatches on one line, then Runtime and Environment groups under small divider labels. Each driver field is one line, with its description beside a fixed-width input. Environment variables are compact NAME = value rows with a lock toggle for sensitive values. Delete instance moves to the editor header.
  • Models tab: no height cap, rows are a fixed-column grid (star, name and slug, capabilities, reorder and remove, picker switch) so capabilities line up and the reorder arrows stay in the row instead of appearing on hover. Picker visibility is a per-row switch (custom models show a disabled checked switch since they are always offered), favorites are grouped first with hidden models sunk to the bottom, a filter input appears above eight models, and "Add custom model" is a ghost button that expands into the input. The Models tab label shows the model count and how many are hidden.
  • Capability labels count a Codex serviceTier select with a "Fast" tier as Fast mode, matching the composer's logic.
  • Section header: "Checked Xs ago" and refresh are one compact ghost button next to Add provider.

Before

Configuration tab:

Provider editor before, Configuration

Models tab:

Provider editor before, Models

After

Screenshots predate the last commit, which made each driver field one line, aligned the model columns, and added the model count to the tab.

Configuration tab:

Provider editor after, Configuration

Models tab:

Provider editor after, Models

Checks

  • vp test run on the four provider settings test files (21 tests), including a new groupModelsForDisplay test
  • vp run --filter @t3tools/web typecheck
  • Focused lint and format on the changed files

Built with Claude Fable 5.1 in the Claude Code harness via T3 Code.


Note

Medium Risk
Model list ordering and hidden-model grouping change persisted modelOrder semantics and what users see for edge cases (e.g. custom slugs in hidden prefs); otherwise UI-only settings changes with new test coverage for grouping.

Overview
Redesigns the provider instance Configuration and Models tabs plus related settings chrome.

The Configuration tab moves to a label-left two-column grid: display name shares a row with an inline accent swatch row (ProviderAccentColorPickerlayout="inline"), driver fields use a new grid variant on ProviderSettingsForm (description beside fixed-width controls), and Runtime / Environment sections get divider labels. Environment variables drop the bordered table for compact NAME = value rows with lock/unlock for sensitivity and inline remove. Delete instance moves from the list header icon to a text button in the editor header.

The Models tab removes the short height cap and info popovers in favor of a fixed-column row layout: inline capability tags (including Fast mode for Codex serviceTier selects), always-visible reorder/remove actions, and a picker visibility switch instead of eye icons. Lists are ordered via new groupModelsForDisplay (favorites, then visible, then hidden built-ins; custom models never treated as hidden). Reorder only swaps neighbors within the same group; filtering appears when there are more than eight models; add-custom-model is collapsible with cancel/Escape and scroll-to-new-row. The Models tab label shows total and hidden counts.

Providers section header combines refresh and “Checked … ago” into one compact button (sr-only label for tests); read-only mode shows last-checked text and keeps Advanced health-interval labels readable while controls stay inert.

Reviewed by Cursor Bugbot for commit d6fb0bb. Bugbot is set up for automated code reviews on this repo. Configure here.

Note

Add inline layout option to ProviderAccentColorPicker

Extracts the custom picker, preset swatches, and clear action into a reusable swatch row. The new optional stacked/inline layout prop defaults to stacked, which keeps the label and description. inline mode renders only the swatch row.

Macroscope summarized d6fb0bb.

@coderabbitai

coderabbitaiBot commented Aug 28, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: a4150b38-4d2a-4471-af42-52f97c78b786

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 942ff02 to 50cda2fCompareAugust 28, 2026 07:45
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Reviewed the provider list/editor redesign for shared-primitive and Tailwind-ownership consistency. Three findings, all in changed lines, about icon-color indirection through Button and a call-site override of Switch geometry. Layout/inert/read-only handling, the new grid variant of ProviderSettingsForm, and the models grouping helper look consistent with the existing contracts.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review

Four findings, all in changed lines. Three are shared-primitive contract issues where a call-site class never reaches the element it is meant to style:

  • Button routes icon color through --control-icon-color ([&_svg:not([class*='text-'])]:text-[var(--control-icon-color)]), so text-* on the button does not tint a bare icon child. The favorite star and the sensitive/lock toggle lose their state colors as a result.
  • Input applies className to the outer input-control wrapper, not the inner <input>, so h-8 / text-xs at the call site do not resize the control; size="compact" is the existing contract for that.

No issues found with the grid variant in ProviderSettingsForm, the layout="inline" accent picker, the read-only inert scoping in ProviderInstanceCard / ProviderSettingsPanel, or the --thumb-size switch override (an established call-site pattern).

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
@macroscopeapp

macroscopeappBot commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Not approved

Macroscope's review found this PR not approvable — This is a substantial provider-settings redesign with new model filtering and visibility interactions plus changed persistence semantics for model ordering. The configuration and environment editor behavior also changes across the production settings surface, warranting human review.

You can add or adjust custom eligibility rules. Learn more.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 50cda2f to 266be5dCompareAugust 28, 2026 08:30
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One accessibility regression found in the reworked Providers section header. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete buttons, size="compact" on the env and filter inputs, switch thumb sizing) is addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 3da2fcc to 15ab68aCompareAugust 28, 2026 08:47
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the provider editor header/configuration grid. Prior comments on icon-color indirection and compact input sizing have been addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two layout findings in the redesigned provider list row / environment rows. Everything flagged in earlier runs (icon-color indirection on the star and lock buttons, size="compact" on the env and filter inputs, the switch thumb override, and the refresh button's accessible name) looks resolved.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review: two findings on the redesigned provider panels. Earlier findings (icon-color indirection on the star/lock buttons, size="compact" on the env/filter inputs, switch thumb sizing, refresh-button accessible name) look resolved on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One new finding on the redesigned models list; details inline. The coarse-pointer issue flagged on the previous push (hover-only reorder / remove-custom-model actions in ProviderModelsSection) still stands and is not re-posted here.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the redesigned provider panel. Everything flagged in earlier runs (icon-color indirection, compact input sizing, coarse-pointer row actions, refresh button accessible name, fixed row height) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 7985270 to fa7e6dcCompareAugust 28, 2026 11:46
@github-actionsgithub-actionsBot added size:XXL 1,000+ changed lines (additions + deletions). and removed size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
StiensWoutand others added 8 commits September 2, 2026 11:35
Configuration tab now has an Identity row (name and accent swatches on one
line) and a Runtime group in a label-left grid, with environment variables as
compact NAME=value rows and Delete moved into a footer. The Models tab drops
the 160px cap, shows slug and capabilities inline, reveals actions on hover,
and groups favorites first with hidden models sunk to the bottom.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Each built-in model row gets an always-visible switch for picker visibility,
reorder and remove stay on hover, a filter appears above eight models, and
adding a custom model expands from a ghost button. Codex service tiers with a
fast tier now count as Fast mode in the capability labels.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
A favorited model that was also hidden rendered as visible, ghost buttons
never showed their star, lock, or destructive tones because Button pins bare
svg color, env and filter inputs used the compact size through classes the
wrapper overrides, the model switch shrank the mobile touch target, and an
empty catalog read as a failed filter.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…-only sessions
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… text outgrows them
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
StiensWoutand others added 2 commits September 2, 2026 11:35
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… delete button by its label
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from fa7e6dc to 2ff8b73CompareSeptember 2, 2026 09:37
@github-actionsgithub-actionsBot added size:XL 500-999 changed lines (additions + deletions). and removed size:XXL 1,000+ changed lines (additions + deletions). labels Sep 2, 2026
…el count in the tab
Configuration: each driver field is one line, with its description beside a
fixed-width input, under small Runtime and Environment divider labels.
Models: rows are a fixed-column grid (star, name and slug, capabilities,
reorder and remove, picker switch), so capabilities line up and the reorder
arrows stay in the row instead of appearing on hover. The Models tab shows
the model count and how many are hidden.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
The narrow-viewport model list is height-capped, so a model added at the
bottom could land out of sight once the input closed. Remember the added slug
and scroll its row into view after the updated list renders.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One layout finding on the redesigned models list; details inline. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete/update buttons, size="compact" on the env and filter inputs, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, the coarse-pointer row actions, and the missing height cap below lg) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings on this head; details inline. Everything flagged in earlier runs (icon-color indirection, compact input sizing, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, coarse-pointer row actions, the missing height cap below lg, the 3rem actions track, and the filter clearing on add) reads as addressed.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsForm.tsx
…ields for assistive tech
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@cursorcursorBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 71ceb4f. Configure here.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@maria-rcks
maria-rcks merged commit 6effe0a into pingdotgg:mainSep 2, 2026
27 checks passed
juliusmarminge added a commit that referenced this pull request Sep 2, 2026
Renumbers the v2 migrations 044-052 to 045-053 behind main's
044_ClearAutomaticProjectModelDefaults, and adopts main's sticky
new-thread selection (#9164), local-only worktree bases in the v2 launch
path (#8751), the PR summary read for settlement (#9176), Claude per-cwd
skills (#9210), the provider editor redesign with the branch's dedicated
environment fields re-grafted (#8508), and the client half of
continue-threads-across-restart (#9167). The server-side continuation
markers stay unported: they live in the v1 session directory, and v2
recovery terminalizes running runs on restart, so the capability is
withheld until the v2 runtime carries them.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL500-999 changed lines (additions + deletions).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@StiensWout@maria-rcks
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

feat(web): redesign provider editor and models list - #8508

Merged
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign
Sep 2, 2026
Merged

feat(web): redesign provider editor and models list#8508
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign

Conversation

@StiensWout

@StiensWoutStiensWout commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

The provider editor was a long stack of full-width label-over-input fields, a four-column table for usually zero to two environment variables, and a Models tab capped at 160px with four always-visible icon buttons per row. Codex models also never showed "Fast mode" because the label only matched the boolean fastMode descriptor, not Codex's serviceTier select.

What changes:

  • Configuration tab regrouped into a label-left grid (new grid variant of ProviderSettingsForm; the Add wizard's dialog variant is untouched): display name and accent swatches on one line, then Runtime and Environment groups under small divider labels. Each driver field is one line, with its description beside a fixed-width input. Environment variables are compact NAME = value rows with a lock toggle for sensitive values. Delete instance moves to the editor header.
  • Models tab: no height cap, rows are a fixed-column grid (star, name and slug, capabilities, reorder and remove, picker switch) so capabilities line up and the reorder arrows stay in the row instead of appearing on hover. Picker visibility is a per-row switch (custom models show a disabled checked switch since they are always offered), favorites are grouped first with hidden models sunk to the bottom, a filter input appears above eight models, and "Add custom model" is a ghost button that expands into the input. The Models tab label shows the model count and how many are hidden.
  • Capability labels count a Codex serviceTier select with a "Fast" tier as Fast mode, matching the composer's logic.
  • Section header: "Checked Xs ago" and refresh are one compact ghost button next to Add provider.

Before

Configuration tab:

Provider editor before, Configuration

Models tab:

Provider editor before, Models

After

Screenshots predate the last commit, which made each driver field one line, aligned the model columns, and added the model count to the tab.

Configuration tab:

Provider editor after, Configuration

Models tab:

Provider editor after, Models

Checks

  • vp test run on the four provider settings test files (21 tests), including a new groupModelsForDisplay test
  • vp run --filter @t3tools/web typecheck
  • Focused lint and format on the changed files

Built with Claude Fable 5.1 in the Claude Code harness via T3 Code.


Note

Medium Risk
Model list ordering and hidden-model grouping change persisted modelOrder semantics and what users see for edge cases (e.g. custom slugs in hidden prefs); otherwise UI-only settings changes with new test coverage for grouping.

Overview
Redesigns the provider instance Configuration and Models tabs plus related settings chrome.

The Configuration tab moves to a label-left two-column grid: display name shares a row with an inline accent swatch row (ProviderAccentColorPickerlayout="inline"), driver fields use a new grid variant on ProviderSettingsForm (description beside fixed-width controls), and Runtime / Environment sections get divider labels. Environment variables drop the bordered table for compact NAME = value rows with lock/unlock for sensitivity and inline remove. Delete instance moves from the list header icon to a text button in the editor header.

The Models tab removes the short height cap and info popovers in favor of a fixed-column row layout: inline capability tags (including Fast mode for Codex serviceTier selects), always-visible reorder/remove actions, and a picker visibility switch instead of eye icons. Lists are ordered via new groupModelsForDisplay (favorites, then visible, then hidden built-ins; custom models never treated as hidden). Reorder only swaps neighbors within the same group; filtering appears when there are more than eight models; add-custom-model is collapsible with cancel/Escape and scroll-to-new-row. The Models tab label shows total and hidden counts.

Providers section header combines refresh and “Checked … ago” into one compact button (sr-only label for tests); read-only mode shows last-checked text and keeps Advanced health-interval labels readable while controls stay inert.

Reviewed by Cursor Bugbot for commit d6fb0bb. Bugbot is set up for automated code reviews on this repo. Configure here.

Note

Add inline layout option to ProviderAccentColorPicker

Extracts the custom picker, preset swatches, and clear action into a reusable swatch row. The new optional stacked/inline layout prop defaults to stacked, which keeps the label and description. inline mode renders only the swatch row.

Macroscope summarized d6fb0bb.

@coderabbitai

coderabbitaiBot commented Aug 28, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: a4150b38-4d2a-4471-af42-52f97c78b786

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 942ff02 to 50cda2fCompareAugust 28, 2026 07:45
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Reviewed the provider list/editor redesign for shared-primitive and Tailwind-ownership consistency. Three findings, all in changed lines, about icon-color indirection through Button and a call-site override of Switch geometry. Layout/inert/read-only handling, the new grid variant of ProviderSettingsForm, and the models grouping helper look consistent with the existing contracts.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review

Four findings, all in changed lines. Three are shared-primitive contract issues where a call-site class never reaches the element it is meant to style:

  • Button routes icon color through --control-icon-color ([&_svg:not([class*='text-'])]:text-[var(--control-icon-color)]), so text-* on the button does not tint a bare icon child. The favorite star and the sensitive/lock toggle lose their state colors as a result.
  • Input applies className to the outer input-control wrapper, not the inner <input>, so h-8 / text-xs at the call site do not resize the control; size="compact" is the existing contract for that.

No issues found with the grid variant in ProviderSettingsForm, the layout="inline" accent picker, the read-only inert scoping in ProviderInstanceCard / ProviderSettingsPanel, or the --thumb-size switch override (an established call-site pattern).

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
@macroscopeapp

macroscopeappBot commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Not approved

Macroscope's review found this PR not approvable — This is a substantial provider-settings redesign with new model filtering and visibility interactions plus changed persistence semantics for model ordering. The configuration and environment editor behavior also changes across the production settings surface, warranting human review.

You can add or adjust custom eligibility rules. Learn more.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 50cda2f to 266be5dCompareAugust 28, 2026 08:30
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One accessibility regression found in the reworked Providers section header. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete buttons, size="compact" on the env and filter inputs, switch thumb sizing) is addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 3da2fcc to 15ab68aCompareAugust 28, 2026 08:47
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the provider editor header/configuration grid. Prior comments on icon-color indirection and compact input sizing have been addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two layout findings in the redesigned provider list row / environment rows. Everything flagged in earlier runs (icon-color indirection on the star and lock buttons, size="compact" on the env and filter inputs, the switch thumb override, and the refresh button's accessible name) looks resolved.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review: two findings on the redesigned provider panels. Earlier findings (icon-color indirection on the star/lock buttons, size="compact" on the env/filter inputs, switch thumb sizing, refresh-button accessible name) look resolved on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One new finding on the redesigned models list; details inline. The coarse-pointer issue flagged on the previous push (hover-only reorder / remove-custom-model actions in ProviderModelsSection) still stands and is not re-posted here.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the redesigned provider panel. Everything flagged in earlier runs (icon-color indirection, compact input sizing, coarse-pointer row actions, refresh button accessible name, fixed row height) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 7985270 to fa7e6dcCompareAugust 28, 2026 11:46
@github-actionsgithub-actionsBot added size:XXL 1,000+ changed lines (additions + deletions). and removed size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
StiensWoutand others added 8 commits September 2, 2026 11:35
Configuration tab now has an Identity row (name and accent swatches on one
line) and a Runtime group in a label-left grid, with environment variables as
compact NAME=value rows and Delete moved into a footer. The Models tab drops
the 160px cap, shows slug and capabilities inline, reveals actions on hover,
and groups favorites first with hidden models sunk to the bottom.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Each built-in model row gets an always-visible switch for picker visibility,
reorder and remove stay on hover, a filter appears above eight models, and
adding a custom model expands from a ghost button. Codex service tiers with a
fast tier now count as Fast mode in the capability labels.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
A favorited model that was also hidden rendered as visible, ghost buttons
never showed their star, lock, or destructive tones because Button pins bare
svg color, env and filter inputs used the compact size through classes the
wrapper overrides, the model switch shrank the mobile touch target, and an
empty catalog read as a failed filter.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…-only sessions
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… text outgrows them
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
StiensWoutand others added 2 commits September 2, 2026 11:35
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… delete button by its label
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from fa7e6dc to 2ff8b73CompareSeptember 2, 2026 09:37
@github-actionsgithub-actionsBot added size:XL 500-999 changed lines (additions + deletions). and removed size:XXL 1,000+ changed lines (additions + deletions). labels Sep 2, 2026
…el count in the tab
Configuration: each driver field is one line, with its description beside a
fixed-width input, under small Runtime and Environment divider labels.
Models: rows are a fixed-column grid (star, name and slug, capabilities,
reorder and remove, picker switch), so capabilities line up and the reorder
arrows stay in the row instead of appearing on hover. The Models tab shows
the model count and how many are hidden.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
The narrow-viewport model list is height-capped, so a model added at the
bottom could land out of sight once the input closed. Remember the added slug
and scroll its row into view after the updated list renders.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One layout finding on the redesigned models list; details inline. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete/update buttons, size="compact" on the env and filter inputs, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, the coarse-pointer row actions, and the missing height cap below lg) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings on this head; details inline. Everything flagged in earlier runs (icon-color indirection, compact input sizing, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, coarse-pointer row actions, the missing height cap below lg, the 3rem actions track, and the filter clearing on add) reads as addressed.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsForm.tsx
…ields for assistive tech
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@cursorcursorBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 71ceb4f. Configure here.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@maria-rcks
maria-rcks merged commit 6effe0a into pingdotgg:mainSep 2, 2026
27 checks passed
juliusmarminge added a commit that referenced this pull request Sep 2, 2026
Renumbers the v2 migrations 044-052 to 045-053 behind main's
044_ClearAutomaticProjectModelDefaults, and adopts main's sticky
new-thread selection (#9164), local-only worktree bases in the v2 launch
path (#8751), the PR summary read for settlement (#9176), Claude per-cwd
skills (#9210), the provider editor redesign with the branch's dedicated
environment fields re-grafted (#8508), and the client half of
continue-threads-across-restart (#9167). The server-side continuation
markers stay unported: they live in the v1 session directory, and v2
recovery terminalizes running runs on restart, so the capability is
withheld until the v2 runtime carries them.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL500-999 changed lines (additions + deletions).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@StiensWout@maria-rcks
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(web): redesign provider editor and models list - #8508

Merged
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign
Sep 2, 2026
Merged

feat(web): redesign provider editor and models list#8508
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign

Conversation

@StiensWout

@StiensWoutStiensWout commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

The provider editor was a long stack of full-width label-over-input fields, a four-column table for usually zero to two environment variables, and a Models tab capped at 160px with four always-visible icon buttons per row. Codex models also never showed "Fast mode" because the label only matched the boolean fastMode descriptor, not Codex's serviceTier select.

What changes:

  • Configuration tab regrouped into a label-left grid (new grid variant of ProviderSettingsForm; the Add wizard's dialog variant is untouched): display name and accent swatches on one line, then Runtime and Environment groups under small divider labels. Each driver field is one line, with its description beside a fixed-width input. Environment variables are compact NAME = value rows with a lock toggle for sensitive values. Delete instance moves to the editor header.
  • Models tab: no height cap, rows are a fixed-column grid (star, name and slug, capabilities, reorder and remove, picker switch) so capabilities line up and the reorder arrows stay in the row instead of appearing on hover. Picker visibility is a per-row switch (custom models show a disabled checked switch since they are always offered), favorites are grouped first with hidden models sunk to the bottom, a filter input appears above eight models, and "Add custom model" is a ghost button that expands into the input. The Models tab label shows the model count and how many are hidden.
  • Capability labels count a Codex serviceTier select with a "Fast" tier as Fast mode, matching the composer's logic.
  • Section header: "Checked Xs ago" and refresh are one compact ghost button next to Add provider.

Before

Configuration tab:

Provider editor before, Configuration

Models tab:

Provider editor before, Models

After

Screenshots predate the last commit, which made each driver field one line, aligned the model columns, and added the model count to the tab.

Configuration tab:

Provider editor after, Configuration

Models tab:

Provider editor after, Models

Checks

  • vp test run on the four provider settings test files (21 tests), including a new groupModelsForDisplay test
  • vp run --filter @t3tools/web typecheck
  • Focused lint and format on the changed files

Built with Claude Fable 5.1 in the Claude Code harness via T3 Code.


Note

Medium Risk
Model list ordering and hidden-model grouping change persisted modelOrder semantics and what users see for edge cases (e.g. custom slugs in hidden prefs); otherwise UI-only settings changes with new test coverage for grouping.

Overview
Redesigns the provider instance Configuration and Models tabs plus related settings chrome.

The Configuration tab moves to a label-left two-column grid: display name shares a row with an inline accent swatch row (ProviderAccentColorPickerlayout="inline"), driver fields use a new grid variant on ProviderSettingsForm (description beside fixed-width controls), and Runtime / Environment sections get divider labels. Environment variables drop the bordered table for compact NAME = value rows with lock/unlock for sensitivity and inline remove. Delete instance moves from the list header icon to a text button in the editor header.

The Models tab removes the short height cap and info popovers in favor of a fixed-column row layout: inline capability tags (including Fast mode for Codex serviceTier selects), always-visible reorder/remove actions, and a picker visibility switch instead of eye icons. Lists are ordered via new groupModelsForDisplay (favorites, then visible, then hidden built-ins; custom models never treated as hidden). Reorder only swaps neighbors within the same group; filtering appears when there are more than eight models; add-custom-model is collapsible with cancel/Escape and scroll-to-new-row. The Models tab label shows total and hidden counts.

Providers section header combines refresh and “Checked … ago” into one compact button (sr-only label for tests); read-only mode shows last-checked text and keeps Advanced health-interval labels readable while controls stay inert.

Reviewed by Cursor Bugbot for commit d6fb0bb. Bugbot is set up for automated code reviews on this repo. Configure here.

Note

Add inline layout option to ProviderAccentColorPicker

Extracts the custom picker, preset swatches, and clear action into a reusable swatch row. The new optional stacked/inline layout prop defaults to stacked, which keeps the label and description. inline mode renders only the swatch row.

Macroscope summarized d6fb0bb.

@coderabbitai

coderabbitaiBot commented Aug 28, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: a4150b38-4d2a-4471-af42-52f97c78b786

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 942ff02 to 50cda2fCompareAugust 28, 2026 07:45
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Reviewed the provider list/editor redesign for shared-primitive and Tailwind-ownership consistency. Three findings, all in changed lines, about icon-color indirection through Button and a call-site override of Switch geometry. Layout/inert/read-only handling, the new grid variant of ProviderSettingsForm, and the models grouping helper look consistent with the existing contracts.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review

Four findings, all in changed lines. Three are shared-primitive contract issues where a call-site class never reaches the element it is meant to style:

  • Button routes icon color through --control-icon-color ([&_svg:not([class*='text-'])]:text-[var(--control-icon-color)]), so text-* on the button does not tint a bare icon child. The favorite star and the sensitive/lock toggle lose their state colors as a result.
  • Input applies className to the outer input-control wrapper, not the inner <input>, so h-8 / text-xs at the call site do not resize the control; size="compact" is the existing contract for that.

No issues found with the grid variant in ProviderSettingsForm, the layout="inline" accent picker, the read-only inert scoping in ProviderInstanceCard / ProviderSettingsPanel, or the --thumb-size switch override (an established call-site pattern).

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
@macroscopeapp

macroscopeappBot commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Not approved

Macroscope's review found this PR not approvable — This is a substantial provider-settings redesign with new model filtering and visibility interactions plus changed persistence semantics for model ordering. The configuration and environment editor behavior also changes across the production settings surface, warranting human review.

You can add or adjust custom eligibility rules. Learn more.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 50cda2f to 266be5dCompareAugust 28, 2026 08:30
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One accessibility regression found in the reworked Providers section header. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete buttons, size="compact" on the env and filter inputs, switch thumb sizing) is addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 3da2fcc to 15ab68aCompareAugust 28, 2026 08:47
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the provider editor header/configuration grid. Prior comments on icon-color indirection and compact input sizing have been addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two layout findings in the redesigned provider list row / environment rows. Everything flagged in earlier runs (icon-color indirection on the star and lock buttons, size="compact" on the env and filter inputs, the switch thumb override, and the refresh button's accessible name) looks resolved.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review: two findings on the redesigned provider panels. Earlier findings (icon-color indirection on the star/lock buttons, size="compact" on the env/filter inputs, switch thumb sizing, refresh-button accessible name) look resolved on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One new finding on the redesigned models list; details inline. The coarse-pointer issue flagged on the previous push (hover-only reorder / remove-custom-model actions in ProviderModelsSection) still stands and is not re-posted here.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the redesigned provider panel. Everything flagged in earlier runs (icon-color indirection, compact input sizing, coarse-pointer row actions, refresh button accessible name, fixed row height) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 7985270 to fa7e6dcCompareAugust 28, 2026 11:46
@github-actionsgithub-actionsBot added size:XXL 1,000+ changed lines (additions + deletions). and removed size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
StiensWoutand others added 8 commits September 2, 2026 11:35
Configuration tab now has an Identity row (name and accent swatches on one
line) and a Runtime group in a label-left grid, with environment variables as
compact NAME=value rows and Delete moved into a footer. The Models tab drops
the 160px cap, shows slug and capabilities inline, reveals actions on hover,
and groups favorites first with hidden models sunk to the bottom.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Each built-in model row gets an always-visible switch for picker visibility,
reorder and remove stay on hover, a filter appears above eight models, and
adding a custom model expands from a ghost button. Codex service tiers with a
fast tier now count as Fast mode in the capability labels.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
A favorited model that was also hidden rendered as visible, ghost buttons
never showed their star, lock, or destructive tones because Button pins bare
svg color, env and filter inputs used the compact size through classes the
wrapper overrides, the model switch shrank the mobile touch target, and an
empty catalog read as a failed filter.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…-only sessions
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… text outgrows them
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
StiensWoutand others added 2 commits September 2, 2026 11:35
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… delete button by its label
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from fa7e6dc to 2ff8b73CompareSeptember 2, 2026 09:37
@github-actionsgithub-actionsBot added size:XL 500-999 changed lines (additions + deletions). and removed size:XXL 1,000+ changed lines (additions + deletions). labels Sep 2, 2026
…el count in the tab
Configuration: each driver field is one line, with its description beside a
fixed-width input, under small Runtime and Environment divider labels.
Models: rows are a fixed-column grid (star, name and slug, capabilities,
reorder and remove, picker switch), so capabilities line up and the reorder
arrows stay in the row instead of appearing on hover. The Models tab shows
the model count and how many are hidden.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
The narrow-viewport model list is height-capped, so a model added at the
bottom could land out of sight once the input closed. Remember the added slug
and scroll its row into view after the updated list renders.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One layout finding on the redesigned models list; details inline. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete/update buttons, size="compact" on the env and filter inputs, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, the coarse-pointer row actions, and the missing height cap below lg) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings on this head; details inline. Everything flagged in earlier runs (icon-color indirection, compact input sizing, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, coarse-pointer row actions, the missing height cap below lg, the 3rem actions track, and the filter clearing on add) reads as addressed.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsForm.tsx
…ields for assistive tech
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@cursorcursorBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 71ceb4f. Configure here.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@maria-rcks
maria-rcks merged commit 6effe0a into pingdotgg:mainSep 2, 2026
27 checks passed
juliusmarminge added a commit that referenced this pull request Sep 2, 2026
Renumbers the v2 migrations 044-052 to 045-053 behind main's
044_ClearAutomaticProjectModelDefaults, and adopts main's sticky
new-thread selection (#9164), local-only worktree bases in the v2 launch
path (#8751), the PR summary read for settlement (#9176), Claude per-cwd
skills (#9210), the provider editor redesign with the branch's dedicated
environment fields re-grafted (#8508), and the client half of
continue-threads-across-restart (#9167). The server-side continuation
markers stay unported: they live in the v1 session directory, and v2
recovery terminalizes running runs on restart, so the capability is
withheld until the v2 runtime carries them.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL500-999 changed lines (additions + deletions).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@StiensWout@maria-rcks
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

feat(web): redesign provider editor and models list - #8508

Merged
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign
Sep 2, 2026
Merged

feat(web): redesign provider editor and models list#8508
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign

Conversation

@StiensWout

@StiensWoutStiensWout commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

The provider editor was a long stack of full-width label-over-input fields, a four-column table for usually zero to two environment variables, and a Models tab capped at 160px with four always-visible icon buttons per row. Codex models also never showed "Fast mode" because the label only matched the boolean fastMode descriptor, not Codex's serviceTier select.

What changes:

  • Configuration tab regrouped into a label-left grid (new grid variant of ProviderSettingsForm; the Add wizard's dialog variant is untouched): display name and accent swatches on one line, then Runtime and Environment groups under small divider labels. Each driver field is one line, with its description beside a fixed-width input. Environment variables are compact NAME = value rows with a lock toggle for sensitive values. Delete instance moves to the editor header.
  • Models tab: no height cap, rows are a fixed-column grid (star, name and slug, capabilities, reorder and remove, picker switch) so capabilities line up and the reorder arrows stay in the row instead of appearing on hover. Picker visibility is a per-row switch (custom models show a disabled checked switch since they are always offered), favorites are grouped first with hidden models sunk to the bottom, a filter input appears above eight models, and "Add custom model" is a ghost button that expands into the input. The Models tab label shows the model count and how many are hidden.
  • Capability labels count a Codex serviceTier select with a "Fast" tier as Fast mode, matching the composer's logic.
  • Section header: "Checked Xs ago" and refresh are one compact ghost button next to Add provider.

Before

Configuration tab:

Provider editor before, Configuration

Models tab:

Provider editor before, Models

After

Screenshots predate the last commit, which made each driver field one line, aligned the model columns, and added the model count to the tab.

Configuration tab:

Provider editor after, Configuration

Models tab:

Provider editor after, Models

Checks

  • vp test run on the four provider settings test files (21 tests), including a new groupModelsForDisplay test
  • vp run --filter @t3tools/web typecheck
  • Focused lint and format on the changed files

Built with Claude Fable 5.1 in the Claude Code harness via T3 Code.


Note

Medium Risk
Model list ordering and hidden-model grouping change persisted modelOrder semantics and what users see for edge cases (e.g. custom slugs in hidden prefs); otherwise UI-only settings changes with new test coverage for grouping.

Overview
Redesigns the provider instance Configuration and Models tabs plus related settings chrome.

The Configuration tab moves to a label-left two-column grid: display name shares a row with an inline accent swatch row (ProviderAccentColorPickerlayout="inline"), driver fields use a new grid variant on ProviderSettingsForm (description beside fixed-width controls), and Runtime / Environment sections get divider labels. Environment variables drop the bordered table for compact NAME = value rows with lock/unlock for sensitivity and inline remove. Delete instance moves from the list header icon to a text button in the editor header.

The Models tab removes the short height cap and info popovers in favor of a fixed-column row layout: inline capability tags (including Fast mode for Codex serviceTier selects), always-visible reorder/remove actions, and a picker visibility switch instead of eye icons. Lists are ordered via new groupModelsForDisplay (favorites, then visible, then hidden built-ins; custom models never treated as hidden). Reorder only swaps neighbors within the same group; filtering appears when there are more than eight models; add-custom-model is collapsible with cancel/Escape and scroll-to-new-row. The Models tab label shows total and hidden counts.

Providers section header combines refresh and “Checked … ago” into one compact button (sr-only label for tests); read-only mode shows last-checked text and keeps Advanced health-interval labels readable while controls stay inert.

Reviewed by Cursor Bugbot for commit d6fb0bb. Bugbot is set up for automated code reviews on this repo. Configure here.

Note

Add inline layout option to ProviderAccentColorPicker

Extracts the custom picker, preset swatches, and clear action into a reusable swatch row. The new optional stacked/inline layout prop defaults to stacked, which keeps the label and description. inline mode renders only the swatch row.

Macroscope summarized d6fb0bb.

@coderabbitai

coderabbitaiBot commented Aug 28, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: a4150b38-4d2a-4471-af42-52f97c78b786

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 942ff02 to 50cda2fCompareAugust 28, 2026 07:45
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Reviewed the provider list/editor redesign for shared-primitive and Tailwind-ownership consistency. Three findings, all in changed lines, about icon-color indirection through Button and a call-site override of Switch geometry. Layout/inert/read-only handling, the new grid variant of ProviderSettingsForm, and the models grouping helper look consistent with the existing contracts.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review

Four findings, all in changed lines. Three are shared-primitive contract issues where a call-site class never reaches the element it is meant to style:

  • Button routes icon color through --control-icon-color ([&_svg:not([class*='text-'])]:text-[var(--control-icon-color)]), so text-* on the button does not tint a bare icon child. The favorite star and the sensitive/lock toggle lose their state colors as a result.
  • Input applies className to the outer input-control wrapper, not the inner <input>, so h-8 / text-xs at the call site do not resize the control; size="compact" is the existing contract for that.

No issues found with the grid variant in ProviderSettingsForm, the layout="inline" accent picker, the read-only inert scoping in ProviderInstanceCard / ProviderSettingsPanel, or the --thumb-size switch override (an established call-site pattern).

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
@macroscopeapp

macroscopeappBot commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Not approved

Macroscope's review found this PR not approvable — This is a substantial provider-settings redesign with new model filtering and visibility interactions plus changed persistence semantics for model ordering. The configuration and environment editor behavior also changes across the production settings surface, warranting human review.

You can add or adjust custom eligibility rules. Learn more.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 50cda2f to 266be5dCompareAugust 28, 2026 08:30
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One accessibility regression found in the reworked Providers section header. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete buttons, size="compact" on the env and filter inputs, switch thumb sizing) is addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 3da2fcc to 15ab68aCompareAugust 28, 2026 08:47
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the provider editor header/configuration grid. Prior comments on icon-color indirection and compact input sizing have been addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two layout findings in the redesigned provider list row / environment rows. Everything flagged in earlier runs (icon-color indirection on the star and lock buttons, size="compact" on the env and filter inputs, the switch thumb override, and the refresh button's accessible name) looks resolved.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review: two findings on the redesigned provider panels. Earlier findings (icon-color indirection on the star/lock buttons, size="compact" on the env/filter inputs, switch thumb sizing, refresh-button accessible name) look resolved on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One new finding on the redesigned models list; details inline. The coarse-pointer issue flagged on the previous push (hover-only reorder / remove-custom-model actions in ProviderModelsSection) still stands and is not re-posted here.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the redesigned provider panel. Everything flagged in earlier runs (icon-color indirection, compact input sizing, coarse-pointer row actions, refresh button accessible name, fixed row height) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 7985270 to fa7e6dcCompareAugust 28, 2026 11:46
@github-actionsgithub-actionsBot added size:XXL 1,000+ changed lines (additions + deletions). and removed size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
StiensWoutand others added 8 commits September 2, 2026 11:35
Configuration tab now has an Identity row (name and accent swatches on one
line) and a Runtime group in a label-left grid, with environment variables as
compact NAME=value rows and Delete moved into a footer. The Models tab drops
the 160px cap, shows slug and capabilities inline, reveals actions on hover,
and groups favorites first with hidden models sunk to the bottom.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Each built-in model row gets an always-visible switch for picker visibility,
reorder and remove stay on hover, a filter appears above eight models, and
adding a custom model expands from a ghost button. Codex service tiers with a
fast tier now count as Fast mode in the capability labels.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
A favorited model that was also hidden rendered as visible, ghost buttons
never showed their star, lock, or destructive tones because Button pins bare
svg color, env and filter inputs used the compact size through classes the
wrapper overrides, the model switch shrank the mobile touch target, and an
empty catalog read as a failed filter.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…-only sessions
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… text outgrows them
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
StiensWoutand others added 2 commits September 2, 2026 11:35
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… delete button by its label
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from fa7e6dc to 2ff8b73CompareSeptember 2, 2026 09:37
@github-actionsgithub-actionsBot added size:XL 500-999 changed lines (additions + deletions). and removed size:XXL 1,000+ changed lines (additions + deletions). labels Sep 2, 2026
…el count in the tab
Configuration: each driver field is one line, with its description beside a
fixed-width input, under small Runtime and Environment divider labels.
Models: rows are a fixed-column grid (star, name and slug, capabilities,
reorder and remove, picker switch), so capabilities line up and the reorder
arrows stay in the row instead of appearing on hover. The Models tab shows
the model count and how many are hidden.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
The narrow-viewport model list is height-capped, so a model added at the
bottom could land out of sight once the input closed. Remember the added slug
and scroll its row into view after the updated list renders.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One layout finding on the redesigned models list; details inline. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete/update buttons, size="compact" on the env and filter inputs, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, the coarse-pointer row actions, and the missing height cap below lg) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings on this head; details inline. Everything flagged in earlier runs (icon-color indirection, compact input sizing, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, coarse-pointer row actions, the missing height cap below lg, the 3rem actions track, and the filter clearing on add) reads as addressed.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsForm.tsx
…ields for assistive tech
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@cursorcursorBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 71ceb4f. Configure here.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@maria-rcks
maria-rcks merged commit 6effe0a into pingdotgg:mainSep 2, 2026
27 checks passed
juliusmarminge added a commit that referenced this pull request Sep 2, 2026
Renumbers the v2 migrations 044-052 to 045-053 behind main's
044_ClearAutomaticProjectModelDefaults, and adopts main's sticky
new-thread selection (#9164), local-only worktree bases in the v2 launch
path (#8751), the PR summary read for settlement (#9176), Claude per-cwd
skills (#9210), the provider editor redesign with the branch's dedicated
environment fields re-grafted (#8508), and the client half of
continue-threads-across-restart (#9167). The server-side continuation
markers stay unported: they live in the v1 session directory, and v2
recovery terminalizes running runs on restart, so the capability is
withheld until the v2 runtime carries them.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL500-999 changed lines (additions + deletions).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@StiensWout@maria-rcks
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

feat(web): redesign provider editor and models list - #8508

Merged
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign
Sep 2, 2026
Merged

feat(web): redesign provider editor and models list#8508
maria-rcks merged 16 commits into
pingdotgg:mainfrom
StiensWout:t3code/provider-detail-panel-redesign

Conversation

@StiensWout

@StiensWoutStiensWout commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

The provider editor was a long stack of full-width label-over-input fields, a four-column table for usually zero to two environment variables, and a Models tab capped at 160px with four always-visible icon buttons per row. Codex models also never showed "Fast mode" because the label only matched the boolean fastMode descriptor, not Codex's serviceTier select.

What changes:

  • Configuration tab regrouped into a label-left grid (new grid variant of ProviderSettingsForm; the Add wizard's dialog variant is untouched): display name and accent swatches on one line, then Runtime and Environment groups under small divider labels. Each driver field is one line, with its description beside a fixed-width input. Environment variables are compact NAME = value rows with a lock toggle for sensitive values. Delete instance moves to the editor header.
  • Models tab: no height cap, rows are a fixed-column grid (star, name and slug, capabilities, reorder and remove, picker switch) so capabilities line up and the reorder arrows stay in the row instead of appearing on hover. Picker visibility is a per-row switch (custom models show a disabled checked switch since they are always offered), favorites are grouped first with hidden models sunk to the bottom, a filter input appears above eight models, and "Add custom model" is a ghost button that expands into the input. The Models tab label shows the model count and how many are hidden.
  • Capability labels count a Codex serviceTier select with a "Fast" tier as Fast mode, matching the composer's logic.
  • Section header: "Checked Xs ago" and refresh are one compact ghost button next to Add provider.

Before

Configuration tab:

Provider editor before, Configuration

Models tab:

Provider editor before, Models

After

Screenshots predate the last commit, which made each driver field one line, aligned the model columns, and added the model count to the tab.

Configuration tab:

Provider editor after, Configuration

Models tab:

Provider editor after, Models

Checks

  • vp test run on the four provider settings test files (21 tests), including a new groupModelsForDisplay test
  • vp run --filter @t3tools/web typecheck
  • Focused lint and format on the changed files

Built with Claude Fable 5.1 in the Claude Code harness via T3 Code.


Note

Medium Risk
Model list ordering and hidden-model grouping change persisted modelOrder semantics and what users see for edge cases (e.g. custom slugs in hidden prefs); otherwise UI-only settings changes with new test coverage for grouping.

Overview
Redesigns the provider instance Configuration and Models tabs plus related settings chrome.

The Configuration tab moves to a label-left two-column grid: display name shares a row with an inline accent swatch row (ProviderAccentColorPickerlayout="inline"), driver fields use a new grid variant on ProviderSettingsForm (description beside fixed-width controls), and Runtime / Environment sections get divider labels. Environment variables drop the bordered table for compact NAME = value rows with lock/unlock for sensitivity and inline remove. Delete instance moves from the list header icon to a text button in the editor header.

The Models tab removes the short height cap and info popovers in favor of a fixed-column row layout: inline capability tags (including Fast mode for Codex serviceTier selects), always-visible reorder/remove actions, and a picker visibility switch instead of eye icons. Lists are ordered via new groupModelsForDisplay (favorites, then visible, then hidden built-ins; custom models never treated as hidden). Reorder only swaps neighbors within the same group; filtering appears when there are more than eight models; add-custom-model is collapsible with cancel/Escape and scroll-to-new-row. The Models tab label shows total and hidden counts.

Providers section header combines refresh and “Checked … ago” into one compact button (sr-only label for tests); read-only mode shows last-checked text and keeps Advanced health-interval labels readable while controls stay inert.

Reviewed by Cursor Bugbot for commit d6fb0bb. Bugbot is set up for automated code reviews on this repo. Configure here.

Note

Add inline layout option to ProviderAccentColorPicker

Extracts the custom picker, preset swatches, and clear action into a reusable swatch row. The new optional stacked/inline layout prop defaults to stacked, which keeps the label and description. inline mode renders only the swatch row.

Macroscope summarized d6fb0bb.

@coderabbitai

coderabbitaiBot commented Aug 28, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: a4150b38-4d2a-4471-af42-52f97c78b786

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

@github-actionsgithub-actionsBot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 942ff02 to 50cda2fCompareAugust 28, 2026 07:45
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Reviewed the provider list/editor redesign for shared-primitive and Tailwind-ownership consistency. Three findings, all in changed lines, about icon-color indirection through Button and a call-site override of Switch geometry. Layout/inert/read-only handling, the new grid variant of ProviderSettingsForm, and the models grouping helper look consistent with the existing contracts.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review

Four findings, all in changed lines. Three are shared-primitive contract issues where a call-site class never reaches the element it is meant to style:

  • Button routes icon color through --control-icon-color ([&_svg:not([class*='text-'])]:text-[var(--control-icon-color)]), so text-* on the button does not tint a bare icon child. The favorite star and the sensitive/lock toggle lose their state colors as a result.
  • Input applies className to the outer input-control wrapper, not the inner <input>, so h-8 / text-xs at the call site do not resize the control; size="compact" is the existing contract for that.

No issues found with the grid variant in ProviderSettingsForm, the layout="inline" accent picker, the read-only inert scoping in ProviderInstanceCard / ProviderSettingsPanel, or the --thumb-size switch override (an established call-site pattern).

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
@macroscopeapp

macroscopeappBot commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Not approved

Macroscope's review found this PR not approvable — This is a substantial provider-settings redesign with new model filtering and visibility interactions plus changed persistence semantics for model ordering. The configuration and environment editor behavior also changes across the production settings surface, warranting human review.

You can add or adjust custom eligibility rules. Learn more.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 50cda2f to 266be5dCompareAugust 28, 2026 08:30
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One accessibility regression found in the reworked Providers section header. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete buttons, size="compact" on the env and filter inputs, switch thumb sizing) is addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 3da2fcc to 15ab68aCompareAugust 28, 2026 08:47
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsPanel.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the provider editor header/configuration grid. Prior comments on icon-color indirection and compact input sizing have been addressed in this revision.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two layout findings in the redesigned provider list row / environment rows. Everything flagged in earlier runs (icon-color indirection on the star and lock buttons, size="compact" on the env and filter inputs, the switch thumb override, and the refresh button's accessible name) looks resolved.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

UI consistency review: two findings on the redesigned provider panels. Earlier findings (icon-color indirection on the star/lock buttons, size="compact" on the env/filter inputs, switch thumb sizing, refresh-button accessible name) look resolved on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One new finding on the redesigned models list; details inline. The coarse-pointer issue flagged on the previous push (hover-only reorder / remove-custom-model actions in ProviderModelsSection) still stands and is not re-posted here.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings in the redesigned provider panel. Everything flagged in earlier runs (icon-color indirection, compact input sizing, coarse-pointer row actions, refresh button accessible name, fixed row height) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderInstanceCard.tsx Outdated
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from 7985270 to fa7e6dcCompareAugust 28, 2026 11:46
@github-actionsgithub-actionsBot added size:XXL 1,000+ changed lines (additions + deletions). and removed size:XL 500-999 changed lines (additions + deletions). labels Aug 28, 2026
StiensWoutand others added 8 commits September 2, 2026 11:35
Configuration tab now has an Identity row (name and accent swatches on one
line) and a Runtime group in a label-left grid, with environment variables as
compact NAME=value rows and Delete moved into a footer. The Models tab drops
the 160px cap, shows slug and capabilities inline, reveals actions on hover,
and groups favorites first with hidden models sunk to the bottom.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Each built-in model row gets an always-visible switch for picker visibility,
reorder and remove stay on hover, a filter appears above eight models, and
adding a custom model expands from a ghost button. Codex service tiers with a
fast tier now count as Fast mode in the capability labels.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
A favorited model that was also hidden rendered as visible, ghost buttons
never showed their star, lock, or destructive tones because Button pins bare
svg color, env and filter inputs used the compact size through classes the
wrapper overrides, the model switch shrank the mobile touch target, and an
empty catalog read as a failed filter.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…-only sessions
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… text outgrows them
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
StiensWoutand others added 2 commits September 2, 2026 11:35
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… delete button by its label
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@StiensWout
StiensWoutforce-pushed the t3code/provider-detail-panel-redesign branch from fa7e6dc to 2ff8b73CompareSeptember 2, 2026 09:37
@github-actionsgithub-actionsBot added size:XL 500-999 changed lines (additions + deletions). and removed size:XXL 1,000+ changed lines (additions + deletions). labels Sep 2, 2026
…el count in the tab
Configuration: each driver field is one line, with its description beside a
fixed-width input, under small Runtime and Environment divider labels.
Models: rows are a fixed-column grid (star, name and slug, capabilities,
reorder and remove, picker switch), so capabilities line up and the reorder
arrows stay in the row instead of appearing on hover. The Models tab shows
the model count and how many are hidden.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
The narrow-viewport model list is height-capped, so a model added at the
bottom could land out of sight once the input closed. Remember the added slug
and scroll its row into view after the updated list renders.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

One layout finding on the redesigned models list; details inline. Everything flagged in earlier runs (icon-color indirection on the star/lock/delete/update buttons, size="compact" on the env and filter inputs, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, the coarse-pointer row actions, and the missing height cap below lg) reads as addressed on this head.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

@macroscopeappmacroscopeappBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Two findings on this head; details inline. Everything flagged in earlier runs (icon-color indirection, compact input sizing, the fixed h-19 list row, the refresh button's accessible name, the accent group label, the disabled-switch tooltip trigger, coarse-pointer row actions, the missing height cap below lg, the 3rem actions track, and the filter clearing on add) reads as addressed.

Posted via Macroscope — UI Consistency

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Comment threadapps/web/src/components/settings/ProviderSettingsForm.tsx
…ields for assistive tech
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated

@cursorcursorBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 71ceb4f. Configure here.

Comment threadapps/web/src/components/settings/ProviderModelsSection.tsx Outdated
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@maria-rcks
maria-rcks merged commit 6effe0a into pingdotgg:mainSep 2, 2026
27 checks passed
juliusmarminge added a commit that referenced this pull request Sep 2, 2026
Renumbers the v2 migrations 044-052 to 045-053 behind main's
044_ClearAutomaticProjectModelDefaults, and adopts main's sticky
new-thread selection (#9164), local-only worktree bases in the v2 launch
path (#8751), the PR summary read for settlement (#9176), Claude per-cwd
skills (#9210), the provider editor redesign with the branch's dedicated
environment fields re-grafted (#8508), and the client half of
continue-threads-across-restart (#9167). The server-side continuation
markers stay unported: they live in the v1 session directory, and v2
recovery terminalizes running runs on restart, so the capability is
withheld until the v2 runtime carries them.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL500-999 changed lines (additions + deletions).vouch:trustedPR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@StiensWout@maria-rcks