Qualité de code¶
Primatch utilise plusieurs outils de qualité avec des gates automatiques.
Pipeline qualité¶
Outils¶
Backend¶
| Outil | Commande | Seuil |
|---|---|---|
| Laravel Pint (formatage) | make lint / make lint-fix | 0 erreur |
| PHPStan (analyse statique) | make phpstan | Niveau 6, 0 erreur |
| Pest (tests) | make test | 100% pass |
| Couverture | make test-coverage | 80% min |
Frontend¶
| Outil | Commande | Seuil |
|---|---|---|
| ESLint | make lint | 0 warning/error |
| TypeScript | make typecheck | 0 erreur |
| Vitest | make test-frontend | 100% pass |
Pre-commit hooks (Husky)¶
Ne jamais utiliser --no-verify
Les hooks pre-commit sont obligatoires. Ils garantissent qu'aucun code non conforme n'entre dans le repo.
Le hook pré-commit exécute automatiquement : 1. lint-staged (ESLint + Pint sur fichiers modifiés) 2. typecheck (TypeScript) 3. Build frontend 4. PHPStan niveau 6 5. Pest tests + coverage
SonarQube¶
SonarQube analyse : - Couverture de code (min. 80%) - Code smells - Bugs potentiels - Vulnérabilités sécurité - Duplications
Métriques de qualité cibles¶
| Métrique | Seuil minimum |
|---|---|
| Couverture globale | 80% |
| Code smells | A |
| Bugs | A |
| Sécurité | A |
| Duplication | < 3% |