Sécurité et traitement des données

Le principe de conception : Normik doit connaître vos standards, pas votre code.

Le chemin des données

  1. Votre CI (ou votre agent) envoie le diff — jamais le repo entier.
  2. Normik construit un prompt à partir du diff et de vos règles applicables, puis appelle votre provider IA avec votre clé.
  3. Le verdict revient ; le diff est jeté. Il n'est jamais écrit sur disque ni en base.
Votre code transite par Normik en mémoire et par votre propre provider de modèle — celui-là même auquel votre équipe envoie déjà du code quand elle utilise des assistants IA.

Ce que Normik stocke

StockéNon stocké
Votre playbook et vos skills · les résultats d'analyse (règles contrôlées, violations avec chemin/ligne/commentaire) · les rapports de contrôle des agents · les compteurs de consommation de tokens · le journal d'audit · les données de membres et de facturationVotre code source et vos diffs · la structure de votre repo · tout ce qui vient de repos non passés par la gate

Les violations citent bien la référence de la ligne fautive (chemin, numéro de ligne, commentaire du reviewer) — c'est le produit. Si l'énoncé d'une règle est lui-même sensible, restreignez qui peut voir le playbook via les membres.

Clés et tokens

  • Les clés de provider IA sont chiffrées au repos en AES-256-GCM et ne sont plus jamais affichées après enregistrement — seuls les quatre derniers caractères sont montrés.
  • Les tokens de workspace (nmk_…) sont stockés sous forme de hash SHA-256 ; le token en clair n'est affiché qu'une seule fois, à la création. La révocation est immédiate.
  • L'isolation multi-tenant est appliquée au niveau des requêtes : toute requête domaine est filtrée par l'organisation issue de la session — jamais par un paramètre de requête.

Fail-open, et pourquoi

Si Normik ou votre provider de modèle est indisponible, la gate CI passe avec une explication au lieu de bloquer vos merges. Nous considérons qu'un incident de disponibilité est notre problème, pas une raison d'arrêter votre livraison. Le blocage est strictement réservé aux violations de sévérité error trouvées dans votre code.

Données de facturation

Les paiements sont traités par Stripe ; Normik ne voit jamais de numéro de carte. Les abonnements sont rattachés à l'organisation.

Les limites, honnêtement

  • Normik n'est pas certifié SOC 2 à ce jour et ne propose pas d'auto-hébergement. Si ce sont des exigences fermes, autant vous le dire tout de suite — voir comment nous nous comparons.
  • Le jugement d'un LLM est probabiliste. Des garde-fous l'encadrent (uniquement les lignes ajoutées, uniquement les règles existantes, le feedback faux positif), mais aucun reviewer IA n'est infaillible — c'est justement pour cela que les sévérités et le fail-open existent.