BRI-304 — Note de prépa kick-off (14h, lead dev front)¶
Ticket : BRI-304 — Design system drift detection, synchro Figma ↔ code · assigné à moi · In Progress · labels AI&Automations / Design / Techdays. Objectif du kick-off : verrouiller le périmètre V0 et se répartir l'extraction. Pas concevoir le cron.
En une phrase¶
Le DS vit dans deux mondes (Figma : variables/composants ; code : thème Tailwind/Uniwind + Storybook). Ils dérivent en silence. On veut détecter ces drifts — en commençant petit : comparaison manuelle des tokens couleur + typo.
Mon actif d'entrée (renforcé le 2026-06-11)¶
Côté Figma, l'extraction est faite : j'ai sorti via MCP tous les noms + clés des tokens couleur (marque, typo, core, bordures, 5 états complets, shiny, ghosts) et les 13 styles typo (9 Heading + 4 Text). Table remplie côté design → l'incertitude est côté code (son terrain) et côté matching de noms.
🎁 Ce que j'apporte de fort : 6 drifts déjà trouvés DANS Figma¶
Pendant l'extraction, j'ai repéré des incohérences internes à Uimmo — donc des drifts réels avant même de regarder le code (= critère de succès V0 à moitié atteint) :
- D1 casse : brandborder500 (minuscule) vs brandBorder300/400
- D2 Info a des bordures numérotées (infoBorder600/950) alors que les autres états ont un seul xxxBorder
- D3 infoBackground950 existe en double (dans le groupe + orphelin hors groupe)
- D4 Core/white vit dans 2 collections (Colors + Primitives)
- D5 la lib legacy 🖥️ WebApp pollue les recherches → l'extracteur doit filtrer sur la lib Uimmo
- D6 tokens disabled multi-rôles (border + background + text)
⚠️ 2 constats techniques d'extraction (pour le cron)¶
search_design_systemrenvoie noms + clés + scopes mais PAS les valeurs hex → pour les valeurs, l'extracteur devra passer parget_variable_defs(sur un nœud) ou l'API REST/variables.- La
keyFigma est l'identifiant stable ; le nom peut dériver. Matching robuste côté Figma = par clé ; mais le pont Figma↔code reste par convention de nommage (le code n'a pas les clés) → d'où l'enjeu d'une convention partagée.
LE point dur (à ne pas rater)¶
La détection de drift = matcher un token Figma à son équivalent code par nom. Or les noms diffèrent probablement :
- Figma : Typography/defaultHeading, Bricks specific/brandText, Spaces/lg
- Code : text-heading ? brand ? spacing.lg ?
→ Le vrai livrable V0 n'est pas un script, c'est la table de correspondance nom-Figma ↔ nom-code. Elle révèle mécaniquement les premiers drifts.
Questions pour le lead dev (il a les réponses)¶
- Où vit le thème Tailwind/Uniwind ? Fichier unique ou éclaté ? Nommage régulier ?
- La convention de nommage code suit-elle Figma, ou une autre logique (sémantique/échelle) ?
- Storybook couvre-t-il déjà les composants du DS ? (lien BRI-132 MCP Storybook)
- Le thème est-il parsable proprement depuis un script/cron ?
- Routage des issues de drift : comment décider l'owner (designer vs dev) automatiquement ?
Décisions à acter¶
- [ ] Périmètre V0 = couleurs + typo, comparaison manuelle (pas de cron)
- [ ] Répartition : moi = Figma (noms + extraction) · lui = code (noms + extraction) · ensemble = table de matching
- [ ] Format du livrable = table de correspondance + liste de drifts réels/actionnables
- [ ] Prochain point daté
Agenda (~45 min)¶
| Temps | Sujet |
|---|---|
| 5' | Objectif + pourquoi maintenant (drift silencieux, passage à 2 PD) |
| 10' | État des lieux croisé : Figma (moi, BRI-299) ↔ code (lui : Tailwind/Uniwind/Storybook) |
| 15' | Matching par nommage — confronter les 2 conventions, repérer les écarts |
| 10' | Découpage V0 + répartition + format livrable |
| 5' | Décisions + prochain point |
Piège à éviter¶
Ne pas se faire embarquer dans la V1/V2 (cron, dashboard, Code Connect auto). Le critère V0 est juste : les drifts identifiés sont réels et actionnables. Cap sur la table de matching.
Liens¶
- Table de correspondance à remplir : bri-304-table-correspondance-tokens.md
- Tickets liés : BRI-132 MCP Storybook · BRI-129 Améliorations Uniwind
- Source tokens Figma :
bricks-brain/.claude/skills/figma-bricks-proto/references/tokens.md - Fiche concept :
bricks-brain/concepts/design-system-bricks.md