Uh oh!
There was an error while loading. Please reload this page.
refactor(ui): Item primitive adoption for state-fill list rows (convergence round 2) - #686
Merged
Conversation
…d 2) Extend primitives/item.tsx with a `selected` prop (data-selected → --state-selected-bg, the governed 6.5% foreground-alpha token) and an `interactive` gate so inert geometry-only rows can borrow Item's media/content/actions layout without a hover fill. Item already speaks hover 4% / pressed 8% via Base UI useRender + render-prop composition. Migrations: - models 连接行 (enabledConnRow): data-default → Item `selected`; retire the bespoke [data-default] fill rule in models.css. #675 mx-2/pl-10/pr-6 geometry preserved. - daily-review archive rows: UiButton variant=quiet → Item render=<button> with `selected` for the active archive; ItemContent stacks title over the tabular-nums meta line. daily-review.css keeps only geometry + the selected-border accent. - providerCatalogRow: already on Item (round 1 groundwork) — no change needed; its remaining CSS is pinned list-separator/logo-plate geometry. Deferred/skipped (disproportionate contract risk, no state-fill to converge — noted for a later round): - enabledProviderTrigger: a Base UI AccordionTrigger header, not a list row; its hover already uses --state-hover-bg. - settingsOsPermissionRow: static grid row w/ status ::before stripe, pinned by permissions-unified-card (grid/divider/div-actions) — Item's flex model conflicts, zero interactive fill to fold. - daily-review session rows: composite (hover on the <li> container + non-interactive preview sibling outside the button) — not a single state-fill row. - maka-skill-library-row: bespoke 3-col grid + 38px icon tile, hover on the parent <li>, pinned by skills.test.ts; interactive={false} support added so a future round can adopt without behavior change. - sidebar .maka-list-row/.maka-nav-row: untouched by design (densest pins). Verify: desktop 2291/2291, ui 46/46, check-dead-css clean, audit-alignment clean (no new findings on any fixture).
Uh oh!
There was an error while loading. Please reload this page.
jackwener added a commit
that referenced
this pull request
Jul 9, 2026
7 tasks
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.
Round 2 of notes/ui-convergence-map-2026-07-09.md:
Itembecomes the one list-row implementation for state fills.selected(→ governed --state-selected-bg token, data-selected hook) andinteractive(suppress hover/pressed for inert geometry rows)Verified in worktree: ui 46/46 + desktop 2291/2291 exit-code gated, dead-css clean, alignment auditor clean, CDP captures on all four touched fixtures. Implemented by an opus worktree agent to the map spec.