Skip to content

refactor(web): share settings group surfaces - #12360

Merged
juliusmarminge merged 1 commit into
mainfrom
t3code/ui-composition-audit/settings-groups
Sep 18, 2026
Merged

juliusmarminge merged 1 commit into
mainfrom
t3code/ui-composition-audit/settings-groups

Conversation

@juliusmarminge

@juliusmarminge juliusmarminge commented Sep 18, 2026

Copy link
Copy Markdown
Member

Targets main independently. This PR has no dependency on V2 or another UI audit PR.

Settings cards repeated border, surface, and separator rules across current, folded, provider, and legacy settings layouts. SettingsGroup now owns those defaults with explicit grouped/plain and divided choices. Folded state, provider layouts, row behavior, and refs are preserved.

Validation: settingsLayout, SettingsPanels.logic, and ProviderSettingsPanel tests, affected client typecheck, scoped lint, and React Doctor review. React Doctor’s existing consumer findings remain documented from the original audit; no new component findings were identified.

Code-only verification was requested; no browser/device pass or before/after screenshots are included. This remains a draft for visual review. No wire contracts, persisted data, or upgrade migrations change.

Model: GPT-6. Harness: Codex.

Summary by CodeRabbit

  • UI Improvements
    • Updated settings sections and provider configuration panels with consistent grouped layouts.
    • Added clearer spacing and dividers between related settings rows.
    • Improved presentation of provider notices, editors, and legacy settings panels while preserving existing sizing and overflow behavior.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:M 30-99 changed lines (additions + deletions). labels Sep 18, 2026
@juliusmarminge
juliusmarminge added this pull request to stack #12350 September 18, 2026 02:51
@github-actions

github-actions Bot commented Sep 18, 2026

Copy link
Copy Markdown
Contributor

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

Provider Metric Main baseline This PR Impact PR ceiling
Codex Total thread wire 13.5 KiB 13.5 KiB +30 B (+0.2%) 15.1 KiB
Codex Thread snapshot wire 7.1 KiB 7.1 KiB +4 B (+0.1%) 7.3 KiB
Codex Live turn WebSocket wire 6.5 KiB 6.5 KiB +26 B (+0.4%) 7.8 KiB
Codex Live turn WebSocket decoded 56.3 KiB 56.3 KiB 0 B (0.0%) 66.4 KiB
Codex Live turn messages 10 10 0 (0.0%) 21
Claude Total thread wire 13.5 KiB 13.5 KiB −2 B (−0.0%) 15.1 KiB
Claude Thread snapshot wire 7.1 KiB 7.1 KiB −1 B (−0.0%) 7.3 KiB
Claude Live turn WebSocket wire 6.4 KiB 6.4 KiB −1 B (−0.0%) 7.8 KiB
Claude Live turn WebSocket decoded 57.0 KiB 57.0 KiB 0 B (0.0%) 66.4 KiB
Claude Live turn messages 9 9 0 (0.0%) 21

Baseline: 53510d4 · PR result: 44471fa · Source CI: success

Scenario and decoded snapshot size

10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.

  • Codex decoded thread snapshot: 113.9 KiB
  • Claude decoded thread snapshot: 114.6 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

@juliusmarminge
juliusmarminge removed this pull request from stack #12350 September 18, 2026 02:57
@juliusmarminge
juliusmarminge force-pushed the t3code/ui-composition-audit/settings-groups branch from 8f7d98a to 44471fa Compare September 18, 2026 03:02
@juliusmarminge
juliusmarminge force-pushed the t3code/ui-composition-audit/mobile-search branch from 182170f to 17d7e3f Compare September 18, 2026 03:02
@juliusmarminge
juliusmarminge changed the base branch from t3code/ui-composition-audit/mobile-search to main September 18, 2026 03:03
@juliusmarminge
juliusmarminge marked this pull request as ready for review September 18, 2026 03:07
@macroscopeapp

macroscopeapp Bot commented Sep 18, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Approved at 44471fa

Macroscope's review found this PR approvable — This PR centralizes existing settings-card styling without changing settings behavior, defaults, data contracts, or production infrastructure. The runtime impact is limited to the web settings surface and is small and self-contained.

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

@coderabbitai

coderabbitai Bot commented Sep 18, 2026

Copy link
Copy Markdown

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Team

Run ID: 63f4fa31-5762-430f-8899-76dd72582fe3

📥 Commits

Reviewing files that changed from the base of the PR and between 53510d4 and 44471fa.

📒 Files selected for processing (5)
  • apps/web/src/components/settings/FoldedSettingsSection.tsx
  • apps/web/src/components/settings/ProviderSettingsPanel.tsx
  • apps/web/src/components/settings/SettingsGroup.tsx
  • apps/web/src/components/settings/SettingsPanels.tsx
  • apps/web/src/components/settings/settingsLayout.tsx

Included review availability: Your plan provides up to 10 included reviews per hour; 2 remain after this review.


📝 Walkthrough

Walkthrough

Added the shared SettingsGroup component. Replaced repeated settings container styling in provider, folded, legacy, and layout settings views with SettingsGroup while preserving existing layout and behavior.

Changes

Settings group consolidation

Layer / File(s) Summary
Shared SettingsGroup component
apps/web/src/components/settings/SettingsGroup.tsx
Added grouped and plain variants, optional dividers, forwarded <div> props, merged class names, and conditional borders between adjacent children.
Provider and folded settings integration
apps/web/src/components/settings/FoldedSettingsSection.tsx, apps/web/src/components/settings/ProviderSettingsPanel.tsx
Replaced provider and folded settings container styling with SettingsGroup. Existing sizing, overflow, layout classes, and collapsible behavior remain in place.
Shared settings layout integration
apps/web/src/components/settings/SettingsPanels.tsx, apps/web/src/components/settings/settingsLayout.tsx
Replaced legacy and section wrapper <div> elements with SettingsGroup while preserving contained rows, scroll-target attributes, and variants.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~15 minutes

Change: Refactor

Suggested reviewers: t3dotgg

Merge Risk: ⚪ Minimal · up to 44471

The settings layout consolidation preserves the inspected rendering contracts, with no actionable current-head risk identified.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 71.43% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 7 functions across 5 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely describes the main change: sharing settings group surfaces across web settings layouts.
Description check ✅ Passed The description explains the change, rationale, scope, validation, and UI-review limitation. It does not use the required section headings or include the checklist, but the required information is mos…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

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

@juliusmarminge
juliusmarminge merged commit 4aa841a into main Sep 18, 2026
33 of 44 checks passed
@juliusmarminge
juliusmarminge deleted the t3code/ui-composition-audit/settings-groups branch September 18, 2026 03:19
github-actions Bot added a commit to omarcresp/t3code-flake that referenced this pull request Sep 18, 2026
## What's Changed
* fix(web): keep PR panel actions in the current thread by @Bil0000 in pingdotgg/t3code#12320
* fix(web): keep browser pages aligned during panel animations by @juliusmarminge in pingdotgg/t3code#12329
* fix(server): bound provider event log records before serialization by @juliusmarminge in pingdotgg/t3code#12305
* fix(server): reject file rewind in shared workspaces by @juliusmarminge in pingdotgg/t3code#12306
* fix(server): capture checkpoints when baseline lookup fails by @juliusmarminge in pingdotgg/t3code#12307
* fix(server): refresh file search outside checkpoint processing by @juliusmarminge in pingdotgg/t3code#12308
* fix(web): keep chat from jumping when the scroll-to-end pill mounts by @Yash-Singh1 in pingdotgg/t3code#12317
* fix(server): checkpoint workspaces with empty nested repositories by @saphid in pingdotgg/t3code#12181
* chore(review): keep review bots out of the vendored .repos references by @juliusmarminge in pingdotgg/t3code#12333
* fix(server): pass Codex image attachments by path to avoid oversized requests by @saphid in pingdotgg/t3code#11050
* feat(web): filter sidebar from thread menu by @saphid in pingdotgg/t3code#8719
* feat(web): open diff files from a right-click context menu by @saphid in pingdotgg/t3code#11842
* fix(web): keep numbered jumps from stealing browser tabs by @Yash-Singh1 in pingdotgg/t3code#12315
* fix(mobile): define Clerk colors in every Uniwind theme by @juliusmarminge in pingdotgg/t3code#12344
* refactor(web): reuse searchable picker inputs by @juliusmarminge in pingdotgg/t3code#12353
* fix(web): share touch-visible pull request edit actions by @juliusmarminge in pingdotgg/t3code#12370
* fix(mobile): share accessible connection trace controls by @juliusmarminge in pingdotgg/t3code#12371
* fix(mobile): share settings control row layout by @juliusmarminge in pingdotgg/t3code#12356
* refactor(web): share diagnostic process actions by @juliusmarminge in pingdotgg/t3code#12358
* refactor(mobile): share Android toolbar search fields by @juliusmarminge in pingdotgg/t3code#12359
* refactor(web): share settings group surfaces by @juliusmarminge in pingdotgg/t3code#12360
* refactor(web): reuse inline settings actions by @juliusmarminge in pingdotgg/t3code#12362
* refactor(mobile): share thread list section controls by @juliusmarminge in pingdotgg/t3code#12363
* refactor(mobile): share connection form fields by @juliusmarminge in pingdotgg/t3code#12364
* refactor(mobile): share local environment lists by @juliusmarminge in pingdotgg/t3code#12365
* refactor(mobile): share file preview feedback by @juliusmarminge in pingdotgg/t3code#12368
* refactor(web): share standalone page layout by @juliusmarminge in pingdotgg/t3code#12354
* fix(mobile): share settings action row defaults by @juliusmarminge in pingdotgg/t3code#12369
* fix(mobile): share request action button defaults by @juliusmarminge in pingdotgg/t3code#12366
* fix(web): share accessible color picker controls by @juliusmarminge in pingdotgg/t3code#12355


**Full Changelog**: pingdotgg/t3code@v0.0.43-nightly.20260917.1880...v0.0.43-nightly.20260918.1895

Upstream release: https://github.com/pingdotgg/t3code/releases/tag/v0.0.43-nightly.20260918.1895
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M 30-99 changed lines (additions + deletions). vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant