Sprint 5.5 Clean FTD — triage 21→14 actives (cap 15)

fix(StatCards): replace plan === 'free' with !hasAccess(plan, 'dashboard') (FTD-39)
refactor(useAudioRecorder): move optionsRef assignment to useEffect (FTD-38)
docs(TECH_DEBT): v1.27 — freeze FTD-09/33/42, close FTD-14/35/38/39
This commit is contained in:
Hermann_Kitio 2026-04-26 18:57:50 +03:00
parent 3a3fa6272d
commit 5a31819bca
4 changed files with 78 additions and 106 deletions

View file

@ -29,6 +29,28 @@ Chaque entrée suit ce format :
---
## [Unreleased] — 2026-04-26 — Sprint 5.5 Clean FTD
### Changed
- `StatCards.tsx:90``plan === 'free'` remplacé par `!hasAccess(plan, 'dashboard')` (FTD-39, Règle D).
- `useAudioRecorder.ts:80` — assignation `optionsRef` pendant render refactorée en `useEffect` sans deps, eslint-disable retiré (FTD-38).
### Docs
- `TECH_DEBT.md` v1.26 → v1.27 — triage dette technique :
- Gelées : FTD-09 (state machine T2 Live), FTD-33 (carte T2 Live en dur), FTD-42 (modal prorata — Customer Portal suffit).
- Fermée : FTD-35 (subsumée par FTD-41).
- Résolues : FTD-14 (anti-FOUC déjà en place, conforme DESIGN_SYSTEM v2.0), FTD-38, FTD-39.
- 21 → 14 FTD actives (cap 15 respecté).
### Notes
- FTD-14 : le script inline `.light` était déjà présent dans `index.html` (lignes 14-20), conforme à DESIGN_SYSTEM v2.0 (dark = défaut, `.light` = override). L'exemple `.dark` documenté dans la fiche FTD-14 datait de la DA Boréal v1.0.
- Tests frontend : 219/219 verts (inchangé).
---
## [Unreleased] — 2026-04-26 — Sprint 5d — Customer Portal + page Paramètres
### Added