Definition of Done (DoD) - Plateforme MJY Holding
Ce document définit les critères stricts de qualité qui doivent être satisfaits pour qu'une tâche ou une User Story soit considérée comme terminée (Done) au sein des sprints de développement.
🛠️ Critères de Code et de Qualité Technique
[ ]Compilation & Build : Le code compile sans avertissements ni erreurs critiques. Le build de production (npm run build) se déroule avec succès.[ ]Zéro Régression Monolithique : Le fichier d'origineindex.htmlou ses composants extraits ne contiennent plus de script inline non compilé.[ ]Gestion d'État Clean : Aucun état React n'est dupliqué inutilement et le flux de données unidirectionnel est respecté.[ ]Pas de Fuite de Données : Les informations de connexion et les clés d'API (Supabase, Anthropic) ne sont jamais poussées vers le cloud dans les logs, le stockage synchronisé ou sur Git.
💾 Persistance et Synchronisation (Spécifique Supabase)
[ ]CRUD Opérationnel : Toutes les opérations (création, lecture, modification, suppression) se font via l'API client Supabase et non plus sur des blobs JSON monolithiques.[ ]Temps Réel (< 5s) : La mise à jour est propagée à travers le canal Realtime de Supabase et s'affiche sur un autre navigateur en moins de 5 secondes sans rechargement.[ ]Pas d'Écrasement Concurrent : Les écritures concurrentes sur des tâches ou notes distinctes par deux utilisateurs différents se résolvent sans perte de données.[ ]Résilience Locale : Les données survivent à un vidage complet du cache du navigateur et fonctionnent correctement en navigation privée (grâce à la récupération cloud à la connexion).
🔒 Sécurité et Permissions
[ ]Row Level Security (RLS) : Les politiques de sécurité RLS sont activées et testées dans Supabase (lecture/écriture restreinte par rôle).[ ]Authentification Client : L'accès aux interfaces est protégé par la validation du code PIN local (Super Admin, Manager ou Collaborateur) et le jeton de session n'est jamais exposé.
📝 Documentation et Intégration
[ ]ADR mis à jour : Si une décision d'architecture majeure a été prise durant la tâche, elle a été consignée dans un nouveau fichierADR_xxxx.mdsousdocs/ADR/.[ ]Code Review : Le code a été relu et validé par au moins un autre développeur (ou validé par l'agent IA).[ ]Guide de déploiement : Toute nouvelle variable d'environnement ou changement dans le processus de build est documenté dans leREADME.mdet lenetlify_deployment_guide.md.
