2.4 KiB
2.4 KiB
Progress Refresh
- Status:
completed - Owner:
Codex - Date:
2026-03-25
Goal
Bring Progress closer to the active Cadence UI visual language so it reads like a tonal system
component instead of a generic utility bar, while keeping the existing API and accessibility
contract intact.
Scope
- In scope:
- refresh the
Progresstrack and indicator styling - add progress-specific skin tokens in
packages/ui/src/skins.css - update Storybook stories so the new anatomy, state, and motion behavior are reviewable
- keep unit coverage aligned with the component contract
- refresh the
- Out of scope:
- adding labels, percentages, or new public props
- changing exports or introducing new dependencies
Constraints
- Preserve the current
ProgressAPI surface (size,tone,variant,value,max). - Keep the stable
data-slotanddata-statehooks. - Use existing token roles and motion primitives instead of hardcoded one-off colors.
- Keep indeterminate behavior usable under static/reduced motion.
Affected Surfaces
packages/ui/src/components/progress.tsxpackages/ui/src/components/progress.variants.tspackages/ui/src/components/progress.test.tsxpackages/ui/src/skins.cssapps/docs/src/components/progress.stories.tsx
Plan
- Add progress skin tokens for track depth, highlight, and indicator gloss.
- Rework the component styling around those tokens without changing the public props.
- Refresh docs stories to show the component in more intentional, reviewable product contexts.
- Run the narrowest harness suites that cover the changed component and docs surfaces.
Validation
pnpm harness:validate:componentpnpm harness:validate:docs
Status Log
2026-03-25 17:20Read system-of-record files and inspected the current Progress source, tests, and stories.2026-03-25 17:25Started implementation for the visual refresh and docs alignment.2026-03-25 17:42Added progress skin tokens, refreshed the track and indicator styling, and rewrote the Storybook review surface.2026-03-25 17:48Verifiedpnpm --filter @ai-ui/ui typecheck,pnpm --filter @ai-ui/ui test -- --run packages/ui/src/components/progress.test.tsx, andpnpm harness:validate:docs.2026-03-25 17:49pnpm harness:validate:componentstill fails on pre-existing type errors inapps/docs/src/revenue-dashboard.stories.tsx, unrelated to the Progress work.