feat(design-system): reskin Charcoal — tokens dark-default + sidebar navy permanent
- Remplacement intégral index.css par palette Charcoal (DESIGN_SYSTEM.md v2.0)
- Dark = thème par défaut, .light = override via @custom-variant light
- Sidebar navy #0C1528 permanent (identique dark+light)
- Script anti-FOUC inline dans index.html
- Layout : radial-gradient sur <main>, sidebar 230px, max-w-[1100px]
- Renommage tokens Boréal→Charcoal sur ~45 composants
- Inversion dark: → baseline + light: sur primitives shadcn
- Fix logo blanc forcé dans sidebar
- ADR 006 mis à jour
Typecheck: OK · Tests: 122/122 ✅
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
407d1bd134
commit
b68f160bce
61 changed files with 1269 additions and 726 deletions
|
|
@ -1,43 +1,51 @@
|
|||
# ROADMAP.md — Expria Frontend
|
||||
|
||||
> Source de vérité de l'ordre d'implémentation des sprints.
|
||||
> Ne pas modifier sans validation de Hermann.
|
||||
|
||||
---
|
||||
|
||||
## Sprint 0 — Fondations ✅
|
||||
|
||||
1. Scaffold Vite + TypeScript + Tailwind + shadcn/ui
|
||||
2. Structure de dossiers complète
|
||||
3. docs/ copiés depuis backend + adaptations
|
||||
4. ONBOARDING.md rédigé
|
||||
|
||||
## Sprint 0.5 — Design System ✅
|
||||
|
||||
- Direction artistique Boréal validée
|
||||
- Tokens CSS dans index.css
|
||||
- DESIGN_SYSTEM.md rédigé
|
||||
|
||||
## Sprint 1 — Auth + API layer ✅
|
||||
|
||||
5. auth-client.ts
|
||||
6. api-client.ts
|
||||
7. query-client.ts
|
||||
8. entities/user/*
|
||||
8. entities/user/\*
|
||||
9. features/auth (Login, Register, ProtectedRoute)
|
||||
|
||||
## Sprint 2 — Dashboard conditionnel ✅
|
||||
|
||||
10. usePlan hook
|
||||
11. shared/components/PaywallModal
|
||||
12. features/dashboard (Free / Standard / Premium)
|
||||
|
||||
## Sprint 3 — Simulations EE ✅
|
||||
13. entities/production/* + entities/report/*
|
||||
|
||||
13. entities/production/_ + entities/report/_
|
||||
14. features/simulations (EE T1/T2/T3)
|
||||
15. Affichage rapport avec floutage conditionnel
|
||||
|
||||
## Sprint 3.5 — Clean
|
||||
|
||||
- Factorisation des fichiers modifiés Sprint 3
|
||||
- Tests manuels Groupe B + C rejoués
|
||||
- Commit refactor(simulation-ee)
|
||||
|
||||
## Sprint 3.6a — Qualité correction — Backend ✅
|
||||
|
||||
- Remplacement prompt maître (docs/Prompt_maître.md) + intégration taxonomie erreurs (docs/TAXONOMIE_ERREURS.md)
|
||||
- Remplacement prompt production modèle (docs/Prompt_production_modèle.md) — cible fixe NCLC 9
|
||||
- Génération parallèle correction + exercices + modèle (await correction, fire-and-forget sur les deux autres)
|
||||
|
|
@ -47,6 +55,7 @@
|
|||
- Tests : 173 tests verts (+18 vs baseline)
|
||||
|
||||
## Sprint 3.6b — Qualité correction — Frontend ✅
|
||||
|
||||
- Sélecteur NCLC cible dans SimulationForm (9 ou 10, défaut 9) — NclcCibleSelector
|
||||
- RapportPage réécrite : ScoreHero (jauge + seuil NCLC cible + écart), RevelationCards, DiagnosticCallout, CritereCard enrichie (exemple/suggestion/astuce + codes taxonomie), ConseilNclcCallout
|
||||
- ExerciceInteractive : badge difficulté, zone texte, bouton Indice (une fois), bouton Voir la correction (activé après saisie), explication
|
||||
|
|
@ -56,6 +65,7 @@
|
|||
- Tests : 84 verts (+8 vs baseline — floutage + helpers lib + ExerciceInteractive)
|
||||
|
||||
## Sprint 3.7 — Historique ✅
|
||||
|
||||
- Backend : `GET /simulations` — liste paginée des productions de l'utilisateur connecté (page/limit, tri `created_at DESC`, projection légère). 186 tests backend verts.
|
||||
- Frontend : page `/historique` (route sous AppLayout), liste d'items (date relative, tâche, score /20, NCLC, badge Examen / En cours), pagination Précédent/Suivant, clic → `/rapport/:id`.
|
||||
- Gating plan : Free → aperçu flouté + CTA « Passer en Standard » (`hasAccess(plan, 'dashboard')`) ; Standard + Premium → liste complète.
|
||||
|
|
@ -65,6 +75,7 @@
|
|||
- 102 tests frontend verts (+18 vs baseline 84).
|
||||
|
||||
## Sprint 3.6c — Analyse patterns (Premium) ✅
|
||||
|
||||
- Backend : `GET /users/patterns` — agrégation des `erreurs_codes` sur les 5 dernières productions corrigées, seuil 3/5, tri DESC, cache `pattern_analyses` avec invalidation si nouvelle production plus récente que la dernière analyse.
|
||||
- Backend : exercices long terme générés par DeepSeek sur patterns confirmés — format `{ consigne, exemple, correction, astuce }` avec prompt dédié (température 0.4, timeout 20 s). Dégradation gracieuse si DeepSeek échoue.
|
||||
- Backend : indice de préparation 0→100 — formule 60 % score moyen + 20 % régularité + 20 % tendance, messages figés (`<40`, `40-70`, `>70`).
|
||||
|
|
@ -76,39 +87,55 @@
|
|||
- Frontend : hook `usePatterns` (staleTime 60 s, cache partagé entre page et dashboard, `enabled` conditionné par feature).
|
||||
- Frontend : 115 tests verts (+13 vs baseline 102).
|
||||
|
||||
## Sprint DA Charcoal — Reskin ✅
|
||||
|
||||
- Remplacement palette Boréal par Charcoal (dark default, light override)
|
||||
- Sidebar navy permanent, layout radial-gradient, anti-FOUC
|
||||
- Renommage tokens sur ~45 composants + inversion dark:/light: shadcn
|
||||
- ADR 006 mis à jour
|
||||
|
||||
## Sprint 4 — Simulations EO (audio)
|
||||
|
||||
16. MediaRecorder + upload audio EO T1/T3
|
||||
|
||||
## Sprint 4.5 — Clean
|
||||
|
||||
- Factorisation des fichiers modifiés Sprint 4
|
||||
- Tests manuels Groupe B + D rejoués
|
||||
- Commit refactor(simulation-eo)
|
||||
|
||||
## Sprint 5 — Billing
|
||||
|
||||
17. features/billing (Stripe Checkout + prorata)
|
||||
|
||||
## Sprint 5.5 — Clean
|
||||
|
||||
- Factorisation des fichiers modifiés Sprint 5
|
||||
- Tests manuels Groupe E rejoués
|
||||
- Commit refactor(billing)
|
||||
|
||||
## Sprint 6 — T2 Live
|
||||
|
||||
18. features/t2-live (ws-client + audio worklet + state machine)
|
||||
|
||||
## Sprint 6.5 — Clean
|
||||
|
||||
- Factorisation des fichiers modifiés Sprint 6
|
||||
- Tests manuels Groupe D rejoués
|
||||
- Commit refactor(t2-live)
|
||||
|
||||
## Sprint 7 — Mode Examen
|
||||
|
||||
19. Timer inarrêtable + readOnly à T=0
|
||||
|
||||
## Sprint 7.5 — Clean
|
||||
|
||||
- Factorisation des fichiers modifiés Sprint 7
|
||||
- Tests manuels Groupe D rejoués
|
||||
- Commit refactor(exam-mode)
|
||||
|
||||
## Sprint 8 — Pré-lancement
|
||||
|
||||
20. MAINTENANCE_MODE implémenté ✅ (2026-04-19)
|
||||
21. Sentry configuré
|
||||
22. /ultrareview avant bascule
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue