@claude — gate-ds-conformance detected a UI pattern duplicated across the codebase that should be extracted into a design-system primitive (CLAUDE.baseline.md §6).
Stable marker: ds-fp:2eef9a6b4c23 (do not edit — used for idempotent de-duplication)
Where it recurs
frontend/src/components/SitesDatabase.tsx:635
frontend/src/pages/Chat.tsx:71
frontend/src/pages/Dashboard.tsx:8
frontend/src/pages/Identities.tsx:92
Sample
className="text-3xl font-bold text-gray-900 mb-8"
Proposed component spec (refine before building)
- Name:
<PascalCaseComponent> (in the repo design-system package — frontend-engineer is the sole owner of design-system/)
- Props: derive from the variation across the call sites above.
- Variants: the distinct visual variations seen at the locations.
- States: default / hover / focus / active / disabled / loading as applicable.
- Tokens: must consume DS tokens only (color/spacing/type/radius) — zero raw values.
Acceptance criteria
Filed automatically; owner is frontend-engineer. Extraction is design work, not done by this gate.
@claude —
gate-ds-conformancedetected a UI pattern duplicated across the codebase that should be extracted into a design-system primitive (CLAUDE.baseline.md §6).Stable marker:
ds-fp:2eef9a6b4c23(do not edit — used for idempotent de-duplication)Where it recurs
frontend/src/components/SitesDatabase.tsx:635frontend/src/pages/Chat.tsx:71frontend/src/pages/Dashboard.tsx:8frontend/src/pages/Identities.tsx:92Sample
Proposed component spec (refine before building)
<PascalCaseComponent>(in the repo design-system package —frontend-engineeris the sole owner ofdesign-system/)Acceptance criteria
gate-ds-conformancestays green after refactor.Filed automatically; owner is
frontend-engineer. Extraction is design work, not done by this gate.