Skip to content

chore(skills): re-vendor devup-ui for the reset scope and token alpha - #72

Merged
owjs3901 merged 1 commit into
mainfrom
chore/revendor-devup-ui-skill
Sep 21, 2026
Merged

owjs3901 merged 1 commit into
mainfrom
chore/revendor-devup-ui-skill

Conversation

@owjs3901

Copy link
Copy Markdown
Contributor

Follows dev-five-git/devup-ui#671. Produced by node scripts/refresh-skills.mjs; --check now reports no remaining drift and the manifest integrity test passes.

devup-mcp vendors this document into the binary, so devup_skills install writes it on machines with no network — the machines least able to work either answer out for themselves.

What the document now answers

The reset leaves buttons alone. @devup-ui/reset-css is a normalize, not a preflight: for form controls it sets margin: 0 and -webkit-appearance: button, and that second rule preserves the native control appearance rather than removing it. padding, border and appearance are deliberately untouched.

That is invisible until a button is sized in design units. With box-sizing: border-box global, an explicit 8px width cannot shrink below the 6 + 6 + 2 + 2 = 16px that Chrome's default padding: 1px 6px and border: 2px outset already occupy — an 8x8 button from a design renders 16x8. The reset behaving as specified, not a defect.

A token at 40% already has an answer. A token is a CSS custom property, which that document's \ Scope section already establishes, so partial opacity is color-mix() over var(--token) — no alpha token to define, no copy of the colour to keep in sync. Without it a screen hardcoded #F7F3EC66 beside a \ of the same value, which is wrong under theming and not merely redundant: \ follows the active theme and the literal does not.

Diff

Vendored copy 601dd15c -> c7295916 (21,253 -> 23,101 bytes), with the manifest's commit, digest, byte count and source URL resealed to match.

devup-ui@c7295916 answers two things readers had been working out the hard
way, and devup-mcp ships that document inside the binary, so `devup_skills
install` writes it on machines with no network - the machines least able to
work either answer out for themselves.

`@devup-ui/reset-css` is a normalize, not a preflight. For form controls it
sets `margin: 0` and `-webkit-appearance: button`, and the second rule
*preserves* the native control appearance rather than removing it, so button
`padding`, `border` and `appearance` are deliberately untouched. That stays
invisible until a button is sized in design units: `box-sizing: border-box` is
global, so an explicit `8px` width cannot shrink below the `6 + 6 + 2 + 2 =
16px` that Chrome's default `padding: 1px 6px` and `border: 2px outset` already
occupy, and an 8x8 button from a design renders 16x8. That is the reset
behaving as specified, not a defect, and the document now says so with the
call-site fix.

The other is alpha. A token is a CSS custom property, which that document's
`$token Scope` section already establishes, so a token at partial opacity is
`color-mix()` over `var(--token)` - no alpha token to define, no copy of the
colour to keep in sync. Without it a screen hardcoded `#F7F3EC66` beside a
`$bg` of the same value, which is not merely redundant but wrong under
theming: `$bg` follows the active theme and the literal does not.

Produced by `node scripts/refresh-skills.mjs`; `--check` reports no remaining
drift and the manifest integrity test passes.
@owjs3901
owjs3901 merged commit 2be3b05 into main Sep 21, 2026
9 checks passed
@owjs3901
owjs3901 deleted the chore/revendor-devup-ui-skill branch September 21, 2026 14:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant