Uh oh!
There was an error while loading. Please reload this page.
feat(web): redesign provider editor and models list - #8508
Conversation
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
942ff02 to
50cda2fCompareUh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
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
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
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:
Buttonroutes icon color through--control-icon-color([&_svg:not([class*='text-'])]:text-[var(--control-icon-color)]), sotext-*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.InputappliesclassNameto the outerinput-controlwrapper, not the inner<input>, soh-8/text-xsat 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
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
ApprovabilityVerdict: 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. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
50cda2f to
266be5dCompareUh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
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
Uh oh!
There was an error while loading. Please reload this page.
3da2fcc to
15ab68aCompareUh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
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
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
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
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
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
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
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
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
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
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
7985270 to
fa7e6dcCompareConfiguration 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>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… delete button by its label Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
fa7e6dc to
2ff8b73Compare…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>
Uh oh!
There was an error while loading. Please reload this page.
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>
There was a problem hiding this comment.
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
Uh oh!
There was an error while loading. Please reload this page.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
There was a problem hiding this comment.
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
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
…ields for assistive tech Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.
❌ 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.
Uh oh!
There was an error while loading. Please reload this page.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Uh oh!
There was an error while loading. Please reload this page.
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>

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
fastModedescriptor, not Codex'sserviceTierselect.What changes:
gridvariant ofProviderSettingsForm; the Add wizard'sdialogvariant 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 compactNAME = valuerows with a lock toggle for sensitive values. Delete instance moves to the editor header.serviceTierselect with a "Fast" tier as Fast mode, matching the composer's logic.Before
Configuration tab:
Models tab:
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:
Models tab:
Checks
vp test runon the four provider settings test files (21 tests), including a newgroupModelsForDisplaytestvp run --filter @t3tools/web typecheckBuilt 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
modelOrdersemantics 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 newgridvariant onProviderSettingsForm(description beside fixed-width controls), and Runtime / Environment sections get divider labels. Environment variables drop the bordered table for compactNAME = valuerows 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
serviceTierselects), always-visible reorder/remove actions, and a picker visibility switch instead of eye icons. Lists are ordered via newgroupModelsForDisplay(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
ProviderAccentColorPickerExtracts the custom picker, preset swatches, and clear action into a reusable swatch row. The new optional
stacked/inlinelayout prop defaults tostacked, which keeps the label and description.inlinemode renders only the swatch row.Macroscope summarized d6fb0bb.