83 lines
3.7 KiB
Markdown
83 lines
3.7 KiB
Markdown
# Foundation And Pattern Motion Pass
|
|
|
|
- Status: `completed`
|
|
- Owner: `codex`
|
|
- Date: `2026-03-25`
|
|
|
|
## Goal
|
|
|
|
Run a focused third-pass polish on four remaining motion gaps: overly busy `DataTable` chrome,
|
|
under-animated foundation surfaces, static-feeling workspace patterns, and missing docs/test
|
|
coverage for `StatCard` / `MetricCard` motion behavior.
|
|
|
|
## Scope
|
|
|
|
- In scope:
|
|
- reduce excess hover lift around `DataTable` selection, search, and pagination chrome while
|
|
preserving row hover and sort-state feedback
|
|
- add restrained component-specific polish to `Alert`, `Avatar`, and `Badge`
|
|
- bring `PageHeader`, `AppShell`, and `PageFooter` closer to the existing pattern motion quality
|
|
bar set by `SidebarNav`
|
|
- add dedicated motion stories and targeted regression tests for `StatCard` and `MetricCard`
|
|
- Out of scope:
|
|
- adding new animation dependencies
|
|
- broad visual redesign unrelated to motion and interaction feedback
|
|
- touching unrelated in-progress component work
|
|
|
|
## Constraints
|
|
|
|
- Respect `DESIGN.md` and keep one calm, spatial motion language.
|
|
- Keep write scopes isolated so workers do not collide.
|
|
- Preserve existing public APIs unless a very small compatibility-safe addition is justified.
|
|
- Do not revert unrelated work already present in the dirty worktree.
|
|
|
|
## Ownership
|
|
|
|
- Main thread:
|
|
- plan, review, integration, and validation
|
|
- Worker 1:
|
|
- `packages/ui/src/components/data-table*`
|
|
- `apps/docs/src/components/data-table.stories.tsx`
|
|
- Worker 2:
|
|
- `packages/ui/src/components/alert*`
|
|
- `packages/ui/src/components/avatar*`
|
|
- `packages/ui/src/components/badge*`
|
|
- nearest owned stories/tests if needed
|
|
- Worker 3:
|
|
- `packages/ui/src/patterns/page-header*`
|
|
- `packages/ui/src/patterns/app-shell*`
|
|
- `packages/ui/src/patterns/page-footer*`
|
|
- nearest owned stories/tests if needed
|
|
- Worker 4:
|
|
- `packages/ui/src/components/stat-card*`
|
|
- `packages/ui/src/components/metric-card*`
|
|
- `apps/docs/src/components/stat-card.stories.tsx`
|
|
- `apps/docs/src/components/metric-card.stories.tsx`
|
|
|
|
## Plan
|
|
|
|
1. Write the execution plan and confirm the four disjoint ownership slices.
|
|
2. Dispatch four workers with isolated write scopes and keep main-thread ownership limited to
|
|
review, integration, and validation.
|
|
3. Review the returned slices, fix any integration gaps, and avoid broad shared-file churn.
|
|
4. Run focused tests and typechecks for the affected components and docs surfaces.
|
|
|
|
## Validation
|
|
|
|
- `pnpm --filter @ai-ui/ui exec vitest run packages/ui/src/components/data-table.test.tsx`
|
|
- `pnpm --filter @ai-ui/ui exec vitest run packages/ui/src/components/alert.test.tsx packages/ui/src/components/avatar.test.tsx packages/ui/src/components/badge.test.tsx`
|
|
- `pnpm --filter @ai-ui/ui exec vitest run packages/ui/src/components/stat-card.test.tsx packages/ui/src/components/metric-card.test.tsx`
|
|
- `pnpm --filter @ai-ui/ui exec vitest run packages/ui/src/patterns/page-header.test.tsx packages/ui/src/patterns/app-shell.test.tsx packages/ui/src/patterns/page-footer.test.tsx`
|
|
- `pnpm --filter @ai-ui/ui exec tsc --noEmit`
|
|
- `pnpm --dir apps/docs exec tsc --noEmit`
|
|
|
|
## Status Log
|
|
|
|
- `2026-03-25 17:27` started the pass after the previous motion review identified remaining polish
|
|
gaps in `DataTable`, foundation surfaces, workspace patterns, and motion-story/test coverage
|
|
- `2026-03-25 17:28` wrote the execution plan and dispatched four isolated workers for
|
|
`DataTable`, foundation components, workspace patterns, and KPI-card coverage
|
|
- `2026-03-25 17:33` reviewed and accepted all four returned slices, then validated the combined
|
|
result set with focused Vitest coverage plus `pnpm --filter @ai-ui/ui exec tsc --noEmit` and
|
|
`pnpm --dir apps/docs exec tsc --noEmit`
|