docs(sprint-0.5-bis): TECH_DEBT v1.6 (FTD-18/19) + CHANGELOG
This commit is contained in:
parent
8450265449
commit
d7b084d05a
2 changed files with 56 additions and 0 deletions
|
|
@ -37,6 +37,33 @@ Chaque entrée suit ce format :
|
|||
- Code source de `src/entities/user/access.ts` et `lib.ts` avec tests
|
||||
|
||||
|
||||
## 2026-04-20 — Sprint 0.5 bis — AppLayout + primitives UI + refonte visuelle
|
||||
|
||||
### Ajouté
|
||||
- `src/app/AppLayout.tsx` — layout applicatif desktop/mobile (sidebar fixe 240px, drawer mobile, BottomNav)
|
||||
- `src/app/Sidebar.tsx` — navigation latérale avec verrouillage `hasAccess()` (Progression, Examen blanc, Historique)
|
||||
- `src/app/MobileHeader.tsx` — header mobile sticky (Logo, ThemeToggle, bouton menu hamburger)
|
||||
- `src/app/BottomNav.tsx` — navigation mobile fixe (4 items, bottom sheet "Simuler", tap target min 44px)
|
||||
- `src/shared/ui/Button.tsx` — primitive Button (variants: primary/secondary/ghost/upgrade ; sizes: sm/md/lg ; loading Loader2)
|
||||
- `src/shared/ui/Card.tsx` — primitive Card (variants: default/raised/interactive ; rendu `<button>` si `onClick` fourni)
|
||||
- `src/shared/ui/Badge.tsx` — primitive Badge (variants: plan/nclc/neutral ; couleur selon `planValue` pour variant plan)
|
||||
|
||||
### Modifié
|
||||
- `src/app/router.tsx` — layout routes via `PrivateLayout` (`ProtectedRoute` + `AppLayout` + `Outlet`) ; `ComingSoon` inline ; redirect `/simulation` → `/simulation/ee`
|
||||
- `src/features/simulations/components/TaskSelector.tsx` — refonte avec `Card interactive` / `Card default opacity-60`, `Badge` "EE"/"EO", eyebrow `tracking-widest`, icône verrou
|
||||
- `src/features/simulations/pages/SimulationPage.tsx` — suppression header interne (Logo + ThemeToggle) ; root `<main>` ; `Button` migré vers `@/shared/ui/Button` `variant="secondary"`
|
||||
- `src/features/dashboard/pages/DashboardPage.tsx` — suppression header interne ; `Button` `variant="primary"` avec `navigate('/simulation/ee')` ; `Badge` `variant="plan" planValue={data.plan}` ; tout migré vers `@/shared/ui/`
|
||||
|
||||
### Documentation
|
||||
- `docs/TECH_DEBT.md` v1.6 — ajout FTD-18 (SimulationForm migration Button), FTD-19 (token `--shadow-focus` manquant)
|
||||
|
||||
### Tests
|
||||
- Typecheck : 0 erreur
|
||||
- Vitest : 59/59 passés
|
||||
- Tests manuels : à valider par Hermann
|
||||
|
||||
---
|
||||
|
||||
## 2026-04-19 — Sprint 1 / Étape 6 — Maintenance mode + outillage sécurité
|
||||
|
||||
### Ajouté
|
||||
|
|
|
|||
|
|
@ -176,6 +176,34 @@ Vient du pattern `c.json(result, result.status)` où `result` contient déjà `s
|
|||
|
||||
---
|
||||
|
||||
### FTD-18 — SimulationForm utilise encore shadcn Button
|
||||
**Priorité :** 🟢 Mineur
|
||||
**Statut :** Ouvert
|
||||
**Estimation de session :** 30 min
|
||||
**Description :** `src/features/simulations/components/SimulationForm.tsx` importe `Button` depuis `@/shared/components/ui/button` (shadcn). Depuis Sprint 0.5 bis, la primitive canonique est `@/shared/ui/Button`. SimulationForm a été volontairement exclu de l'étape D1 pour respecter la règle max 3 fichiers par étape.
|
||||
|
||||
**À faire :**
|
||||
- Remplacer l'import shadcn par `@/shared/ui/Button`
|
||||
- Adapter `variant` si nécessaire (`"outline"` → `"secondary"`)
|
||||
|
||||
**Condition de résolution :** session dédiée — à grouper avec d'autres migrations shadcn → shared/ui si elles surviennent.
|
||||
|
||||
---
|
||||
|
||||
### FTD-19 — Token `--shadow-focus` absent de `src/index.css`
|
||||
**Priorité :** 🟢 Mineur
|
||||
**Statut :** Ouvert
|
||||
**Estimation de session :** 15 min
|
||||
**Description :** `DESIGN_SYSTEM.md` spécifie un token `--shadow-focus` pour les états focus des composants interactifs. Ce token n'a jamais été ajouté à `src/index.css`. En attendant, le focus est rendu via `ring-2 ring-expria/20` (token Direction H valide), utilisé dans `Button`, `Card`, `MobileHeader`. Le rendu visuel est correct mais ne correspond pas au token documenté.
|
||||
|
||||
**À faire :**
|
||||
- Ajouter `--shadow-focus` dans `@theme {}` de `src/index.css` (valeur à aligner avec `DESIGN_SYSTEM.md`)
|
||||
- Remplacer `ring-2 ring-expria/20` par `shadow-focus` dans les composants concernés
|
||||
|
||||
**Condition de résolution :** session design system dédiée (peut être groupée avec FTD-15 ou une refonte de tokens).
|
||||
|
||||
---
|
||||
|
||||
## 3. Fonctionnalités reportées
|
||||
|
||||
### FTD-06 — AudioWorklet au lieu de ScriptProcessorNode (T2 Live)
|
||||
|
|
@ -286,3 +314,4 @@ Vient du pattern `c.json(result, result.status)` où `result` contient déjà `s
|
|||
| 1.3 | 2026-04-18 | FTD-11 résolu (design system Sprint 0.5) ; ajout FTD-14 (anti-FOUC), FTD-15 (option 'system' thème) |
|
||||
| 1.4 | 2026-04-18 | FTD-16 résolu (VITE_MAINTENANCE_MODE implémenté — Sprint 1 étape 6) |
|
||||
| 1.5 | 2026-04-19 | Ajout FTD-17 (clé ['plan'] dupliquée entre features — Sprint 3 étape 14) |
|
||||
| 1.6 | 2026-04-20 | Ajout FTD-18 (SimulationForm shadcn Button — Sprint 0.5 bis D2) ; ajout FTD-19 (token --shadow-focus manquant — Sprint 0.5 bis D2) |
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue