Skip to content

chore(design-system): re-sync @uploads/ui to Claude Design - #665

Merged
Zach Dunn (zachdunn) merged 2 commits into
mainfrom
worktree-design-sync-2026-08-14
Aug 14, 2026
Merged

chore(design-system): re-sync @uploads/ui to Claude Design#665
Zach Dunn (zachdunn) merged 2 commits into
mainfrom
worktree-design-sync-2026-08-14

Conversation

@zachdunn

@zachdunn Zach Dunn (zachdunn) commented Aug 14, 2026

Copy link
Copy Markdown
Member

Re-sync of @uploads/ui to the Uploads Claude Design project
(8ccd3608),
rebased onto #664.

Note: the first version of this branch shipped a regression. It was built
from a worktree branched at #663 — one commit before #664 — so it rebuilt and
re-uploaded the pre-#664 stylesheet about an hour after that fix merged,
restoring the exact --ul-progress-fill declaration #664 removed. The Claude
Design agent kept reporting the finding against the uploaded CSS and was right
to. Branch is now rebased onto 9f0de534, rebuilt, and re-uploaded.

State after the fix

  • Shipped bundle has zero --ul-* custom-property declarations; token count
    drops 32 → 31 (--ul-progress-fill gone).
  • Progress still renders three distinct fill bands through currentColor
    preview sheets re-checked, grades held.
  • Render check 14/14, validate clean with no warnings, 0 deletes owed.
  • All 14 components verified-by-upload against the project's _ds_sync.json.

Sync-input changes

Progress and Select now take cardMode: "column". A newer converter
measures grid cells differently and flagged both [GRID_OVERFLOW]; NOTES.md had
recorded them as fitting the default card width, so the warn read as new.

conventions.md documents Button's solid variant and icon prop. Both
ship real CSS (ul-btn--solid) and JSDoc, but the header predated them. Since
that header is inlined into the design agent's system prompt, the agent would
never have learned solid exists.

NOTES.md — two corrections and a new risk. The worktree build recipe said
npx tsup, which emits no declarations (dts: false); the .d.ts files come
from the tsc --emitDeclarationOnly half of the build script. Added a
Re-sync risks entry for the stale-base hazard above: a sync uploads whatever
the tree builds, so a stale base silently reverts merged DS fixes and the anchor
diff cannot catch it — the bundle genuinely changed and reads as a legitimate
update. Fetch and check origin/main before building, then grep the built
bundle for whatever the most recent DS fix removed.

No components added or removed.

@changeset-bot

changeset-bot Bot commented Aug 14, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: bb5ff59

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@coderabbitai

coderabbitai Bot commented Aug 14, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are limited based on label configuration.

🏷️ Required labels (at least one) (2)
  • coderabbit:review
  • review
🚫 Excluded labels (none allowed) (1)
  • wip

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 57e876e2-aeb1-4c5c-baee-afc2a68b3866

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

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

Re-sync of the 14-component library to the "Uploads" Claude Design project.
All 14 verified-by-upload against the project's `_ds_sync.json` anchor — no
component sources changed, so nothing needed re-grading.

Three sync inputs corrected along the way:

- `Progress` and `Select` now take `cardMode: "column"`. A newer converter
  measures grid cells differently and flagged both `[GRID_OVERFLOW]`; NOTES.md
  had recorded them as fitting the default width. Their preview sheets were
  re-checked after the fix and still grade good.
- `conventions.md` now lists `Button`'s `solid` variant and `icon` prop. Both
  ship real CSS and JSDoc, but the header predated them — the design agent
  would never have learned `solid` exists.
- NOTES.md: the worktree build recipe said `npx tsup`, which emits no
  declarations (`dts: false` in tsup.config.ts). Corrected to `npm run build`,
  plus a note that header drift is usually additive rather than renames.

Validate exits clean with no warnings; render check 14/14.
The earlier sync in this branch was built from a worktree branched at #663,
one commit before #664 landed. It rebuilt and re-uploaded the pre-#664
stylesheet about an hour after that fix merged, restoring the exact
`--ul-progress-fill` declaration #664 removed. The Claude Design agent kept
reporting the finding against the uploaded CSS and was correct to.

Rebased onto `origin/main` (9f0de53), rebuilt, and re-uploaded. The shipped
bundle now has zero `--ul-*` custom-property declarations; the token count
drops 32 -> 31. Progress still renders three distinct bands through
`currentColor` (sheets re-checked, grades held), render check 14/14, validate
clean with no warnings.

Adds a Re-sync risk note: a sync uploads whatever the tree builds, so a stale
base silently reverts merged design-system fixes and the anchor diff cannot
catch it — the bundle genuinely changed and reads as a legitimate update.
Fetch and check `origin/main` before building, then grep the built bundle for
whatever the most recent DS fix removed.
@zachdunn
Zach Dunn (zachdunn) force-pushed the worktree-design-sync-2026-08-14 branch from 41feeb1 to bb5ff59 Compare August 14, 2026 13:34
@zachdunn
Zach Dunn (zachdunn) marked this pull request as ready for review August 14, 2026 13:36
@zachdunn
Zach Dunn (zachdunn) merged commit 5838b68 into main Aug 14, 2026
3 checks passed
@zachdunn
Zach Dunn (zachdunn) deleted the worktree-design-sync-2026-08-14 branch August 14, 2026 13:36
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