What changed
- The shared model picker (
GatewayModelCombobox) no longer shows a sparkle icon when no model is chosen. The organisation logo still shows once one is picked. - In Retired model routing → Your own replacements, the model text field is now the same height (40 px) and outlined style as the replacement picker beside it, instead of a shorter grey filled field.
- The sparkle removal affects every place the picker is used: Retired model routing replacements, dynamic routes, classifiers and the Slack agent settings.
Why
The user flagged the sparkle on Settings → Routing → Retired model routing → Your own replacements (screenshot in the T3 Code thread): "What the hell is this sparkle icon doing here". The screenshot also showed the model field shorter and styled differently from the picker next to it, and the user asked to fix that too. The sparkle is a decorative placeholder that doesn't mean anything, and it made the empty picker look different from the text field beside it.
How
Removed the Sparkles fallback in apps/web/src/components/(gateway)/settings/GatewayModelCombobox.tsx, so the empty trigger shows only "Choose a model" and the chevron. I removed it in the shared picker rather than on one page, because it means nothing on any of them.
The model field in ModelSuccessorRoutingSettings.tsx gets h-10 border-border bg-background px-3 (transparent in dark mode), the same as the outline button the picker uses. I didn't change the shared Input, because other forms use it. On phones the field keeps the Input component's 16 px text, which stops iOS zooming in on focus.
Before and after
| Before | After | |
|---|---|---|
| Empty model picker | sparkle icon + "Choose a model" | "Choose a model" |
| Picker with a model chosen | organisation logo + name | unchanged |
| Model field next to the picker | 32 px, grey fill, no border | 40 px, outlined, like the picker |
Verification
eslintonGatewayModelCombobox.tsx→ exit 0.eslintonModelSuccessorRoutingSettings.tsx: the local run hit its 20-minute limit on this machine and was stopped. CI doesn't run ESLint onapps/web, so that file wasn't linted. The change there is oneclassNamestring.- Rendering: rebuilt the static render of the settings section (esbuild +
react-dom/server, the app's Tailwind CSS, Playwright, no dev server) at 900 px and 390 px. The empty picker has no icon, and the model field and picker line up at the same height with the same border. Screenshots are in the T3 Code thread.
Model: Claude Opus 5.5 (medium effort) · Harness: Claude Code in T3 Code
🤖 Generated with Claude Code
Activity
8WARNING
Review limit reached
You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.
Next included review available in 5 minutes.
View limit details
Limit details: You’ve used the included review currently available.
Review configuration:
Run configuration
- Source mode: Auto
- Repository: Unavailable
- Branch: Unavailable
- File: No configuration file from this repository applied
- Commit: Unavailable
- Layers: defaults
- Review profile: CHILL
- Plan: Advanced
- Run ID:
e8d509e5-24e2-46b0-b97a-8b7ce60b3071
Commits
Reviewing files that changed from the base of the PR and between b17e2114d8bab682d5e3201643ffef7e83bd2694 and 1d35eee45036af6fc7bbd0ffe4b8f15a107afad4.
Files selected for processing: 2
apps/web/src/components/(gateway)/settings/GatewayModelCombobox.tsxapps/web/src/components/(gateway)/settings/routing/ModelSuccessorRoutingSettings.tsx
- Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
❤️ Share
-
- (https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai)
- Mastodon
Comment @coderabbitai help to get the list of available commands.
Codex Review Summary
This comment shows the latest Codex review activity on this pull request.
| Review | Status | Commit | Review trigger |
|---|---|---|---|
| 📝 Code Review | ✅ Completed 2026-10-29T14:34:15.844693Z | 4f28fe2 | PR opened |
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review" or "@codex security review".
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.
The latest updates on your projects. Learn more about Vercel for GitHub.