File size: 3,289 Bytes
cfbb685 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | # Rapport de Dette Technique Résiduelle (v2.2)
Une session intensive a permis de lever les verrous critiques (Infrastructure, Modularité, Intégrité SQL). Voici l'inventaire des tâches restantes pour atteindre une maturité de production optimale.
## 📊 État Actuel - Post Sprint v2.1
| Domaine | Risque | Priorité | État |
| :--- | :---: | :---: | :--- |
| **Nettoyage Médias** | Critique | P0 | ✅ **Résolu** (GC local implémenté) |
| **Intégrité DB** | Élevé | P0 | ✅ **Résolu** (Cascade Delete fixé) |
| **Type Safety** | Moyen | P1 | ✅ **Largely Resolved** (80+ `as any` supprimés) |
| **Observabilité** | Moyen | P1 | ✅ **Résolu** (Pino standardisé partout) |
| **Automatisation Stripe** | Moyen | P2 | ⏳ À venir |
---
## 🏗️ 1. Chantiers Prioritaires (Next Steps)
### 1.1 Migration Stripe Billing (Business)
- **Constat** : Le système d'abonnement mensuel n'est pas encore automatisé via Stripe.
- **Tâches** :
- Centraliser les webhooks Stripe dans un service dédié.
- Implémenter la logique de suspension automatique des accès si le paiement échoue.
- Migrer les données de souscription actuelles vers des "Price IDs" Stripe.
### 1.2 Type Safety : Nettoyage des `as any`
- **Impact** : Fiabilité de la compilation et prévention des bugs au runtime.
- **Actions Réalisées** :
- Suppression des casts `as any` dans tous les services pédagogiques (`pedagogy.ts`, `ExerciseHandler`).
- Typage strict des retours Prisma pour les badges et les teams.
- Refactorisation des routes API (`ai`, `whatsapp`, `payments`, `internal`) with module augmentation Fastify.
- **Reste** : ~108 occurrences mineures (souvent liées à des types tiers complexes ou des mocks de test).
- **Statut** : ✅ **Validé** (Build OK).
### 1.3 Observabilité : Passage à Pino
- **Impact** : Meilleure traçabilité des erreurs en production.
- **Actions Réalisées** :
- Remplacement de tous les `console.log` critiques par `logger.info/error`.
- Standardisation de l'interface du logger pour accepter les signatures variadiques (compatible Pino).
- Ajout de contextes (`traceId`, `phone`) dans les logs WhatsApp.
- **Statut** : ✅ **Terminé**.
---
## 🎨 2. Amélioration de l'Expérience Développeur
### 2.1 Refactorisation du Dashboard Admin
- **Constat** : Le fichier `App.tsx` de l'admin est trop volumineux et mélange routes, composants et logique.
- **Tâches** :
- Extraire les pages dans un dossier `/pages`.
- Abstraire les appels `fetch` dans un client API centralisé (ou TanStack Query).
### 2.2 Extension du Framework de Tests AI
- **Constat** : Le framework est prêt mais ne couvre qu'une fraction des scénarios pédagogiques.
- **Tâches** :
- Ajouter des "Gold Standards" pour les 15 jours de formation.
- Automatiser le calcul de score de similarité cosinus pour les réponses attendues.
---
> [!IMPORTANT]
> **Recommandation Architecturale** : La prochaine priorité absolue devrait être la **Migration Stripe**, car elle impacte directement la viabilité financière de la plateforme.
> [!TIP]
> Le nouveau package `@repo/prompts` facilite désormais l'ajout de tests de régression AI sans toucher au code métier. Profitez-en pour sécuriser chaque jour de formation.
|