Skip to content

fix(web): align sidebar button geometry with shared tokens - #22287

Merged
Yash-Singh1 merged 1 commit into
pingdotgg:mainfrom
UtkarshUsername:fix/sidebar-button-geometry
Oct 28, 2026
Merged

Yash-Singh1 merged 1 commit into
pingdotgg:mainfrom
UtkarshUsername:fix/sidebar-button-geometry

Conversation

@UtkarshUsername

Copy link
Copy Markdown
Contributor

Problem

Small sidebar buttons, including Settings search results, use hardcoded padding and corner rounding that differ from the default sidebar button's shared geometry tokens. Large sidebar buttons duplicate the same hardcoded values.

Change

Use --sidebar-row-content-inset and --control-radius for the small and large variants. Preserve their existing height, vertical padding, typography, and collapsed-icon override. This updates the shared web and desktop UI; native mobile is unaffected.

Scope and approval

This is a small, focused consistency fix under the obvious-bug exception in CONTRIBUTING.md. It routes existing sidebar button sizes through the same geometry tokens already used by the default and icon variants.

Verification

  • vp lint apps/web/src/components/ui/sidebar.tsx, vp fmt --check apps/web/src/components/ui/sidebar.tsx, and git diff --check passed.
  • Used the actual isolated dev app through T3's Browser panel. Opened Settings > Appearance and searched for font using the normal Settings search.
  • All four visible search-result rows changed from 8px left/right padding and a 10px radius to the shared 10px inset and 8px radius. Vertical padding remained 8px.
  • Verified arrow-key selection, Enter navigation to Source Control, and clicking a font search result to return to Appearance.
  • The large variant has no current app call site, so the screenshots exercise the small variant. Both size variants now reference the same tokens.
  • Before/after captures use the same 1100x800 CSS viewport at Windows 150% scaling. These are unmodified screenshots of the normal app UI, without mock components or measurement overlays. Uploaded with GitHub CLI --attach on the fork and reused here.

Before:

Before: Settings search rows with hardcoded padding and rounding

After:

After: Settings search rows using the shared sidebar geometry

Written with GPT-6.1-sol in the Codex harness through T3 Code.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:XS 0-9 changed lines (additions + deletions). labels Oct 20, 2026
@macroscopeapp

macroscopeapp Bot commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Needs Human Approval

Macroscope's review found this PR requires human approval — This is a small, isolated web UI change that routes existing sidebar button variants through shared geometry tokens. It changes the shipped appearance of existing sidebar controls, including settings search results, so the product-default change warrants human review.

No code changes detected at 441eb6c. Prior analysis still applies.

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

@coderabbitai

coderabbitai Bot commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

Important

Review skipped

Review was skipped as selected files did not have any reviewable changes.

Run configuration
Commits

Reviewing files that changed from the base of the PR and between 7076570 and 441eb6c.

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

No actionable comments were generated in the recent review.

Recent review info
Run configuration
Commits

Reviewing files that changed from the base of the PR and between 578d2a0 and 7076570.

Files selected for processing: 1
  • apps/web/src/components/ui/sidebar.tsx

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 0 remain after this review.

Walkthrough

The lg and sm sidebar menu button variants now use shared tokens for radius and content inset. The lg variant uses py-2 and retains its collapsed-icon p-0 override.

Changes: Sidebar menu button tokens

Layer / File(s) Summary
Update menu button variants
apps/web/src/components/ui/sidebar.tsx
The lg and sm variants use var(--control-radius) and var(--sidebar-row-content-inset) instead of fixed rounding and padding classes. The lg variant retains its collapsed-icon padding override.

Priority: Low

Estimated code review effort: 1 (Trivial) | ~3 minutes

Change: Bug fix

Possibly related PRs

Suggested reviewers: juliusmarminge

Merge Risk: Minimal · previous review 70765

The sidebar button geometry change is ready to merge with normal checks.

Pre-merge checks: Passed 4
Check name Status Explanation
Title check Passed The title clearly and concisely describes the primary change: aligning sidebar button geometry with shared tokens.
Description check Passed The description includes all required sections. It explains the problem, the token-based fix, the scope exception, focused verification results, interaction checks, and before/after screenshots. It al…
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.
Full details: Description check

Explanation

The description includes all required sections. It explains the problem, the token-based fix, the scope exception, focused verification results, interaction checks, and before/after screenshots. It also states the limitation that the large variant has no current call site.

Finishing Touches
🧪 Generate unit tests (beta)
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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

maria-rcks commented Oct 26, 2026 •

Copy link
Copy Markdown
Collaborator

Note

Written by gpt-6.1-sol on behalf of Maria

thanks @UtkarshUsername. the shared inset and radius tokens are the right fix. i preserved your commit and merged current main into this branch without rebasing. the final diff remains your two variant lines; nothing was dropped or expanded.

verification: vp run check:changed passed on blacksmith (format, lint, both knip passes, affected typechecks, and the existing sidebar browser tests). two independent code reviews found no issues. in the real dev app with system chrome, settings search rows changed from 8px to 10px horizontal padding; height remained 52px, vertical padding 8px, and current-theme radius 8px. checked light/dark at 1100×800 and a narrower 800×700 window. arrow selection, enter navigation/focus, result clicks, and escape passed.

unverified: native desktop shell and mobile were not launched. web and desktop share this component; native mobile is unaffected. the large variant has no current production caller. all 29 github checks are green on 70765707dc97b80ddb6fd88a8d94c77582b17dc0, and gitcafe reports it mergeable. the latest bot review has no actionable findings. only maria's product review remains. evidence images were reopened and inspected in the github comment; gitcafe currently renders these external uploads as alt text.

before on current main: settings search rows

after: settings search rows use the shared inset

@UtkarshUsername
UtkarshUsername force-pushed the fix/sidebar-button-geometry branch from 7076570 to 441eb6c Compare October 27, 2026 13:48

maria-rcks commented Oct 28, 2026 •

Copy link
Copy Markdown
Collaborator

Note

Written by gpt-6.1-sol on behalf of Maria

Verified in a real dev environment

verified as-is at 441eb6c9af10a1ebd492c1a27d4d2cd72b435d8a. no source changes or pushes were needed.

installed with vp i and ran real background dev servers sequentially: first github/main (7c6446b81a18afdd3898e1359b401d6f9763fffa) in a separate worktree, then the exact pr head with an explicit isolated .t3 home. used the repository's playwright dependency with /usr/bin/google-chrome, without mocks, fixtures, replay, or demo data.

opened settings > appearance and searched font at 1100x800 on both revisions. all five result rows changed from 8px to 10px horizontal padding, matching --sidebar-row-content-inset. row height stayed 52px, vertical padding stayed 8px, and the current theme's radius stayed 8px. the before/after screenshots use the same query, results, viewport, and appearance panel. also inspected dark mode at 800x700; labels and row alignment remained intact.

checked arrow-key result selection, enter navigation and focus on the target setting, clicking a git search result into source control, escape to close settings, and the normal sidebar's collapse/expand controls. created a project pointing at the real /home/user/t3code repository through the app, then submitted a real codex gpt-6.1-sol turn through the web composer. the provider executed both commands and the completed reply appeared in the client:

codex.app-server thread/start: model=gpt-6.1-sol, cwd=/home/user/t3code
pwd -> /home/user/t3code (exit 0)
git branch --show-current -> fix/sidebar-button-geometry (exit 0)
turn/completed: status=completed, error=null
client reply: sidebar verification complete.

vp run check:changed e9236274a3a6e0c731a7df4092db1e686f039068 passed through blacksmith-check: format, lint, both knip passes, affected typechecks, and both existing sidebar browser tests. the worker initially lacked ancestry and a playwright browser; after installing those prerequisites, the complete check passed. gitcafe reports 32 successful checks on this head.

before on github/main: font search rows with 8px horizontal padding

after on the exact pr head: matching font search rows with 10px horizontal padding

settings keyboard navigation, result click, escape, and sidebar collapse and expand

pr head in dark mode at 800x700

Not verified

native electron shells, macos/windows, and native ios/android clients were not launched on this linux vm. web and desktop share the changed component; native mobile is unaffected. the large sidebar variant has no production caller, so its appearance and collapsed override could not be exercised through a shipped user flow. other providers, remote/relay/tunnel connections, and external forge authentication were not exercised. this change only modifies shared web sidebar geometry.

@Yash-Singh1
Yash-Singh1 merged commit feb2e32 into pingdotgg:main Oct 28, 2026
32 checks passed
@UtkarshUsername
UtkarshUsername deleted the fix/sidebar-button-geometry branch October 28, 2026 06:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS 0-9 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.

3 participants