@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:5bc8d4dde60a (do not edit — used for idempotent de-duplication)
Where it recurs
frontend/src/pages/Chat.tsx:69
frontend/src/pages/Dashboard.tsx:6
frontend/src/pages/Identities.tsx:89
Sample
className="px-4 py-6 sm:px-0"
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:5bc8d4dde60a(do not edit — used for idempotent de-duplication)Where it recurs
frontend/src/pages/Chat.tsx:69frontend/src/pages/Dashboard.tsx:6frontend/src/pages/Identities.tsx:89Sample
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.