CHANGEMENTS MAJEURS: - Fusion des 3 bases de données (uof_frontal, uof_linet, logs) en une seule base 'cleo' - Migration vers PDO avec pattern Singleton et requêtes préparées - Configuration externalisée via variables d'environnement (.env) - Séparation application (dva-front) et base de données (maria3) SÉCURITÉ: - Suppression des credentials en dur dans le code - Implémentation de la classe Database avec gestion d'erreurs sécurisée - Protection contre les injections SQL via requêtes préparées INFRASTRUCTURE: - Container dva-front : MariaDB supprimé, application PHP uniquement - Container maria3 : Base de données centralisée MariaDB 11.4 - Script de déploiement optimisé (deploy-cleo-fast.sh) CORRECTIONS: - Ajout des tables manquantes (z_sessions, z_stats, marches_listes) - Compatibilité PDO (fetch_assoc → fetch(PDO::FETCH_ASSOC)) - Suppression des commentaires debug dans les réponses AJAX - Permissions fichiers (.env 644, logs 777 avec owner nobody) DOCUMENTATION: - Mise à jour README.md avec architecture actuelle - Migration README.md marqué comme complété - TODO.md avec état d'avancement et prochaines étapes (PROD IN4) 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
1.1 KiB
1.1 KiB
Instructions pour Claude Code
R<E8>gles importantes
1. VALIDATION OBLIGATOIRE
<A0> TOUJOURS attendre la validation de l'utilisateur avant de commencer <20> coder !
- Pr<E9>senter d'abord le plan d'action
- Expliquer ce qui va <20>tre fait
- Attendre un "ok", "vas-y", "c'est bon" ou <20>quivalent avant de coder
2. Contexte du projet CLEO
- Application PHP 8.3 de gestion de devis pour PME
- Architecture MVC avec framework maison "d6"
- Base de donn<6E>es MariaDB sur serveur distant "maria3"
3. Conventions de code
- Utiliser PDO pour toutes les connexions <20> la base de donn<6E>es
- Requ<EA>tes pr<70>par<61>es obligatoires (pas de concat<61>nation SQL)
- Variables d'environnement pour les credentials (.env)
- Pas de commentaires dans le code sauf si demand<6E> explicitement
4. S<>curit<69>
- Ne jamais exposer les mots de passe en clair
- Toujours valider et nettoyer les entr<74>es utilisateur
- Utiliser password_hash() avec bcrypt pour les mots de passe
5. Git
- Branche principale : main
- Format des branches : feature/nom-fonctionnalit<69>-version
- Commits atomiques avec messages clairs
Document cr<63><72> le 11 septembre 2025