Skip to content

[remediate-2026-08-18] UX-S1 There is no design system — 7 primitives govern 19,200 lines of page code #466

Description

@juan294

Evidence type: [inference]
Time horizon: Later
Files: frontend/src/components/ui/Button.tsx, frontend/src/pages/Messages.tsx:1-1105, frontend/src/pages/Absences.tsx:352

What's happening: Tables, tabs, modals, dropdowns, badges, calendars are all hand-built inline per page; seven pages independently hand-roll the same table-wrapper pattern. This is the common root of UX-H2, UX-H5, UX-M1, UX-M6, and UX-M10.

Why it matters: Every finding above scales with page count under the current structure, and consistency will keep degrading as features are added.

Recommendation: Extract recurring patterns already present across pages (DataTable, Tabs, PageHeader, Badge, EmptyState, Modal) into ui/, adopted page by page during the UX-B7 data-wiring work.

Expected impact: Cross-cutting fixes become one-file changes.

Effort estimate: XL

Finding ID: UX-S1

Source: docs/agents/pre-launch-report.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    strategicStrategic remediationuxUX and design systemwave-3-laterLater/strategic remediation scope, issues only

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions