Uh oh!
There was an error while loading. Please reload this page.
fix(desktop): settings row switches end-align — tag-qualified selector matched nothing - #663
Merged
Merged
Conversation
…r matched nothing 每日回顾 (and every settingsRow-based) switch sat at the value column's start while inputs/selects hug the right rail. The end-align rule existed but was written as `button[role="switch"]` — Base UI renders the Switch root as a SPAN, so the selector silently matched zero elements and no test could tell. Governance failure class: selector rot with no effect-level pin. - Rule is tag-agnostic now (.settingsRow > [role="switch"]); CDP measured rowRight 461px → 20px on settings-daily-review - Contract pins the rule in tag-agnostic form AND bans tag-qualified role selectors in settings CSS outright (role is the contract, the rendered tag never is)
Uh oh!
There was an error while loading. Please reload this page.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Maintainer report: 每日回顾 switches sat mid-page while every other settings control right-aligns, plus 'why is only this one different — our governance is failing'. The diagnosis proves the point sharper than the symptom:
The end-align rule already existed (
.settingsRow > button[role="switch"] { justify-self: end }, shipped in an earlier detail round) — but Base UI renders the Switch root as a<span role="switch">, so the tag-qualified selector matched zero elements, silently, for weeks. No contract could catch it because we pinned the selector's existence, not its effect.Fixes:
.settingsRow > [role="switch"]— CDP-measured: switch right-gap 461px → 20px (the row's right rail) on settings-daily-review, geometry still symmetric 3/21↔21/3button[role=…]tag-qualified role selectors across settings CSS — role is the contract, the rendered tag never is. This kills the whole rot class, not just this instance.Note: the thumb-gap detail in the user's screenshot was the rem-arbitrary-value bug already fixed in #659 (their build predated it); re-measured symmetric here.
Desktop 2285/2285 (new contract +1), check-dead-css clean.