Retour au parcours
Règles d'or
Les règles dsi-audit expliquées simplement.
L'outil dsi-auditvérifie automatiquement que le projet respecte les standards de la DSI. Les règles se rangent en trois familles : sécurité, maintenabilité et traçabilité (ISO 27001).
Sécurité
Protéger les données, les accès et limiter les portes d’entrée pour un attaquant.
S1
Secrets injectés, jamais codés en dur
Les variables sensibles (clés, mots de passe) sont injectées à l’exécution, jamais écrites dans le code ni commitées.
Pourquoi : un secret dans le code fuite à tout jamais dans l’historique Git.
S2
Dépendances maîtrisées
Certaines librairies sont bannies (lodash, jest, tailwind, xlsx…). On préfère les APIs natives.
Pourquoi : moins de dépendances, moins de failles potentielles à surveiller.
Maintenabilité
Garder un code lisible, testable et homogène, que ce soit toi, un collègue ou l’Agent qui y revienne.
M1
ESM uniquement
On utilise import / export, jamais require(). Le projet est en modules ES modernes.
Pourquoi : cohérence avec Node 24 et tout l’écosystème actuel.
M2
Zéro any
TypeScript en mode strict. Le type any est interdit : on type correctement les données.
Pourquoi : le typage attrape les bugs avant l’exécution.
M3
Tests avec Vitest
Les tests utilisent Vitest (vi.fn, vi.mock), jamais Jest.
Pourquoi : un seul outil de test, rapide et intégré au projet.
M4
Fichiers et fonctions courts
ESLint limite la taille des fichiers et des fonctions. On découpe plutôt que d’entasser.
Pourquoi : du code court se relit et se teste plus facilement.
M5
MUI 9 pour l’interface
Les composants viennent de @mui/material. Pas de Tailwind, Shadcn, Radix ni Chakra.
Pourquoi : une interface homogène, alignée sur la charte MyUnisoft.
ISO 27001 — traçabilité
Pouvoir prouver ce qui s’est passé : journaux exploitables et configuration reproductible.
I1
Logs avec Pino
Côté serveur, on logue avec Pino. Pas de console.log qui traîne.
Pourquoi : des logs structurés, exploitables et auditables en production.
I2
Build Once, Run Anywhere
La même image tourne partout ; seule la configuration change, injectée au démarrage.
Pourquoi : un déploiement reproductible et traçable d’un environnement à l’autre.
Lire et améliorer le score
Comment interpréter le score
Lance npm run audit:dsià tout moment. Chaque règle non respectée fait baisser le score et s'affiche avec le fichier concerné. Corrige les points listés, relance l'audit, et vise 100 %au vert avant d'ouvrir une MR.
Astuce
L'Agent connaît ces règles et les applique pendant qu'il code : demande-lui simplement de « vérifier la conformité DSI » avant de livrer.
Référence complète DSI (CI/CD, sécurité, conventions) : documentation DevOps MyUnisoft.
Charte fondatrice : Charte de développement « Vibecoding responsable » définie par l'architecte.