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.