Assurance logicielle · Open source

MethodAtlas

Une cartographie au niveau du code source de ce que contient réellement une suite de tests, enrichie — lorsque cela apporte de la valeur — par une classification de sécurité, un mapping vers les contrôles et des preuves de revue. L’inventaire déterministe reste distinct de l’interprétation par IA afin que le résultat demeure inspectable et reproductible.

8langagesdécouverte de tests dans les langages courants, de script et d’entreprise
SARIF 2.1sortie CIintégration native avec les outils de sécurité et de développement
170+motifs d’identifiantscatalogue déterministe de candidats secrets avant triage IA facultatif
Signéspaquets de preuvesbundles de revue inviolables avec signatures classiques, PQC ou hybrides

Du code source à une preuve défendable

Une exécution de tests réussie répond à la question « les tests passent-ils ? ». L’assurance pose d’autres questions : Quels tests existent ? Lesquels exercent des propriétés de sécurité ? Quels contrôles soutiennent-ils ? Qu’est-ce qui a changé depuis la dernière revue ? Peut-on reproduire la preuve ? MethodAtlas cible précisément cet écart.

Arbre sourcecode de test existant Découverteparseurs déterministes EnrichissementIA et taxonomie facultatives Revueoverrides et détection de dérive PreuveSARIF · couverture · paquets signés

L’architecture traite délibérément la découverte des méthodes comme un problème d’analyse structurelle du code, et non comme un problème d’IA. L’IA peut classer la pertinence sécurité, suggérer des tags ou aider au triage, mais elle reste une étape d’enrichissement explicite superposée à un inventaire déterministe.

Huit langages, un seul modèle de preuve

JavaJUnit 5 · JUnit 4 · TestNGdécouverte AST · réécriture du source
C#xUnit · NUnit · MSTestdécouverte par grammaire · réécriture du source
TypeScript / JavaScriptJest · Vitest · Mochadécouverte par plugin
Gopackage testingdécouverte par plugin
Pythonpytestdécouverte par plugin
PowerShellPesterdécouverte par plugin
SAP ABAPABAP Unit · ecATTinventaire de tests d’entreprise
COBOLMFUnit · COBOL-Checkinventaire de tests d’entreprise

Les plugins produisent un enregistrement commun au niveau méthode. Cette forme commune permet de garder le même workflow d’assurance lorsqu’un portefeuille couvre services modernes, scripts et plateformes d’entreprise de longue durée.

Des capacités de preuve, pas seulement une classification

Taxonomie de sécurité

La classification assistée par IA peut mapper les tests vers une taxonomie fermée et versionnée, ou vers une taxonomie personnalisée alignée sur le référentiel de contrôles de l’organisation.

Confiance et files de revue

Les scores de confiance par méthode permettent seuils et files de revue humaine plutôt que d’imposer un modèle binaire « l’IA dit oui/non ».

Empreintes de contenu

Les empreintes SHA-256 du source permettent d’identifier les classes inchangées, de réutiliser des résultats IA et de démontrer que la preuve provient du même contenu de test.

Rapports delta

Deux inventaires peuvent être comparés pour montrer les méthodes ajoutées, supprimées ou modifiées — utile pour les preuves de release et les gates de régression CI.

Couverture des contrôles

Les tags peuvent être associés aux identifiants de contrôles fournis par l’utilisateur afin que la sortie révèle les lacunes de couverture plutôt que de confondre nombre de tests et assurance.

Reçus de reproductibilité

Les entrées ayant influencé un scan — y compris les templates de prompts LLM effectifs — peuvent être fingerprintées afin qu’un futur reviewer puisse reconstruire ce qui a produit le résultat.

L’IA est facultative — et bornée

MethodAtlas prend en charge l’inférence locale via Ollama, des fournisseurs cloud et un workflow manuel en deux phases pour les environnements où le code source ne peut pas être envoyé à une API externe. Les overrides validés par un humain sont persistants, et la réécriture du source reste séparée de la classification afin que les changements puissent être revus avant d’atteindre le code.

01
Base déterministe

Découvrir méthodes de test, métadonnées de framework, emplacements et identité du source sans LLM.

02
Interprétation facultative

Ajouter pertinence sécurité, tags de taxonomie, justification et confiance via IA locale, cloud ou manuelle.

03
Autorité humaine

Revoir, corriger et persister les décisions ; détecter la dérive entre annotations du source et classification ultérieure.

04
Sortie auditable

Émettre enregistrements adaptés à la CI, couverture de contrôles, reçus ou paquets de preuves inviolables.

Détection des identifiants comme signal déterministe distinct

Le même pipeline d’assurance peut rechercher des candidats identifiants dans le source. La découverte s’appuie sur un catalogue déterministe de plus de 170 formats d’identifiants fournisseurs ; les valeurs sont masquées par défaut. Lorsque l’IA est activée, elle intervient en aval pour estimer la crédibilité et rattacher le candidat à l’endpoint qu’il semble authentifier — elle n’invente pas la correspondance initiale.

Pourquoi cette séparation compte. Dans une revue réglementée, « le modèle l’a trouvé » est une provenance faible. MethodAtlas garde découverte déterministe, interprétation probabiliste facultative et décisions humaines comme étapes distinctes afin que chacune puisse être contestée indépendamment.

Revue interactive pour ceux qui ne veulent pas d’un workflow uniquement CLI

Le GUI desktop fournit un workflow orienté reviewer autour du même modèle : navigation du source, coloration syntaxique, arbres de résultats classe/méthode, décisions de tags, changements stagés et réécriture groupée. Les actions de revue créent des CSV de preuve et des overrides persistants : une décision GUI ne reste donc pas un état transitoire sur un poste.

Changements de source stagés

Les annotations suggérées peuvent être revues et préparées en mémoire avant qu’une opération explicite « Save All Changes » ne les écrive dans le source.

Piste d’audit

Les décisions sont enregistrées comme preuves horodatées et overrides réutilisables, en conservant la distinction entre suggestion machine et décision humaine.

Profils IA

Des profils fournisseurs nommés permettent de basculer entre inférence locale et distante sans intégrer ce choix au moteur de découverte.

Sélection des plugins

Les plugins de découverte peuvent être activés par exécution afin de limiter un dépôt hétérogène aux langages pertinents pour la revue.

Paquets de preuves et ZeroEcho

Les paquets de preuves regroupent les sorties du scan dans un répertoire inviolable accompagné d’un manifeste SHA-256. Lorsqu’une signature est demandée, MethodAtlas peut utiliser ZeroEcho pour produire des signatures classiques, post-quantiques ou hybrides. C’est une connexion pratique entre deux thèmes Egothor : découvrir une preuve d’assurance, puis protéger l’intégrité de son paquet.

Lignée du projet

MethodAtlas a commencé par une base open source développée par Egothor. Accenture a ensuite étendu cette base avec des capacités supplémentaires, et le projet public enrichi est aujourd’hui publié dans l’organisation GitHub d’Accenture. Il s’agit d’une filiation de projet ; elle n’est pas présentée ici comme un partenariat institutionnel ni comme un endorsement. Le projet public est sous Apache License, Version 2.0.

Ressources du projet