MyHelios · Feuille de route — Étape 1

Schéma du registre d'artefacts

Définition du socle de données du harnais : taxonomie des artefacts, métadonnées, machine à états, modèle de dépendances et configuration des référentiels. Ce document est le livrable de l'étape 1 de la feuille de route V3.

Livrable Étape 1 — VALIDÉ Projet : MyHelios Date : 1 août 2026 Statut : Validé — décisions D1→D5 tranchées Référence : 00-GP-Concevoir-un-harnais-agentique-v3.html

1Objectif et périmètre du registre

Le registre d'artefacts est la source de vérité unique du harnais : toute production (document, code, configuration, plan, preuve) y est enregistrée avec ses métadonnées, son statut et ses dépendances. Ce document définit le schéma de ce registre — c'est-à-dire sa structure logique, indépendamment de la technologie d'implémentation (base de données, dépôt Git, ou hybride).

Rappel des principes du guide V3

Périmètre de ce livrable

Le schéma couvre : les types d'artefacts (section 2), le schéma de métadonnées (section 3), la machine à états (section 4), le modèle de dépendances (section 5), la configuration des référentiels (section 6) et un exemple instancié (section 7). L'implémentation technique (choix SQLite/Postgres/Git, API) est traitée à une étape ultérieure.

2Taxonomie des types d'artefacts

Chaque artefact porte un type identifié par un code unique, organisé par famille (une famille = une phase du cycle de vie). La taxonomie suit la section 3 du guide V3, avec un identifiant machine famille.type pour chaque artefact listé.

2.1 Cadrage amont

CodeArtefactRéférentiel(s) appliqués
cadrage.note-opportuniteNote d'opportunité et objectifs métier— (ISO 25010 en grille qualité)
cadrage.cahier-des-chargesCahier des charges (besoins, contraintes, périmètre)Exigences identifiables et vérifiables
cadrage.analyse-risquesAnalyse des risques et des parties prenantes
cadrage.estimationEstimation budgétaire et calendaire de premier niveau

2.2 Design UX/UI amont

CodeArtefactRéférentiel(s) appliqués
design.personasPersonas et parcours utilisateursISO 9241-11
design.wireframesWireframes et maquettes basse puis haute fidélitéISO 9241-11
design.prototypePrototype interactifISO 9241-11
design.charteCharte graphique et design systemWCAG 2.2 / RGAA
design.guide-accessibiliteGuide d'accessibilitéWCAG 2.2 / RGAA
design.tests-utilisabiliteProtocole et résultats des tests d'utilisabilitéISO 9241-11

2.3 Conception technique amont

CodeArtefactRéférentiel(s) appliqués
spec.fonctionnellesSpécifications fonctionnellesExigences traçables
spec.techniquesSpécifications techniquesExigences traçables
archi.architectureArchitecture logicielle (diagrammes composants, séquence, déploiement)C4 model, ISO/IEC/IEEE 42010
archi.adrDécision d'architecture (ADR) — un artefact par décisionADR
archi.modele-donneesModèle de données
archi.choix-technosChoix technologiques et justificationADR (justification tracée)

2.4 Planification amont

CodeArtefactRéférentiel(s) appliqués
plan.backlogBacklog produit et user stories
plan.lotsDécoupage en lots ou sprints
plan.planningPlanning et jalons

2.5 Réalisation réalisation

CodeArtefactRéférentiel(s) appliqués
code.sourceCode source et configuration d'environnementGuide de style, Conventional Commits
code.readmeREADME et documentation d'installationDiátaxis (guide)
code.conventionsConventions de code et structure du dépôtGuide de style

2.6 Vérification réalisation

CodeArtefactRéférentiel(s) appliqués
test.planPlan de testsPyramide de tests
test.unitairesTests unitairesPyramide de tests
test.integrationTests d'intégrationPyramide de tests
test.e2eTests de bout en boutPyramide de tests
test.couvertureRapports de couvertureCouverture mesurée
test.revue-securiteRevue de sécurité, de conformité et d'accessibilitéOWASP Top 10, WCAG/RGAA

2.7 Déploiement déploiement

CodeArtefactRéférentiel(s) appliqués
deploy.pipelinePipeline CI/CD12-factor, IaC versionnée
deploy.iacScripts d'infrastructure as code12-factor, IaC versionnée
deploy.runbookDocumentation d'exploitation (runbook)Diátaxis (guide), ITIL
deploy.plan-reprisePlan de reprise d'activitéITIL

2.8 Exploitation et maintenance exploitation

CodeArtefactRéférentiel(s) appliqués
exploit.plan-maintenancePlan de maintenance (corrective, évolutive, préventive)ITIL
exploit.journal-incidentsJournal des incidentsITIL
exploit.post-mortemPost-mortemsITIL
exploit.notes-versionNotes de version et changelogConventional Commits
exploit.dette-techniqueRegistre de dette technique— (artefact de 1ʳᵉ classe)
exploit.supervisionTableau de bord de supervision (SLO/SLI)SRE
exploit.patch-managementPlan de gestion des correctifs de sécuritéITIL, OWASP
exploit.auditsRapports d'audit périodiquesISO 25010, OWASP

2.9 Décommissionnement fin de vie

CodeArtefactRéférentiel(s) appliqués
finvie.planPlan de décommissionnementRGPD, ISO 27001
finvie.migrationPlan de migration, d'export et d'archivageRGPD
finvie.desactivation-accesProcédure de désactivation sécurisée des accèsISO 27001
finvie.preuve-destructionPreuve de destruction ou d'anonymisation des donnéesRGPD
finvie.bilan-capitalisationBilan de fin de vie et capitalisation

2.10 Transverse transverse

CodeArtefactRéférentiel(s) appliqués
transverse.doc-utilisateurDocumentation utilisateurDiátaxis
transverse.plan-gestion-projetPlan de gestion de projet et comptes-rendus
transverse.matrice-tracabiliteMatrice de traçabilité exigences ↔ testsExigences traçables
transverse.registre-decisionsRegistre des décisions
transverse.glossaireGlossaire du projet
Décision de conception

La matrice de traçabilité et le registre des décisions sont des artefacts dérivés mécaniquement par l'orchestrateur depuis les dépendances déclarées — ils ne sont pas générés par un agent spécialisé, mais régénérés à chaque transition de statut.

3Schéma de métadonnées

Chaque enregistrement du registre porte les champs suivants. Les champs marqués obligatoire sont exigés dès la création ; les autres sont renseignés au fil du cycle de vie.

ChampTypeOblig.Description
idUUIDobligatoireIdentifiant unique et immuable de l'artefact
typeenum (taxonomie §2)obligatoireCode de la famille et du type, ex. archi.adr
versionsemverobligatoireVersion de l'artefact (1.0.0, 1.1.0…)
statutenum (machine à états §4)obligatoirebrouillon · en_revue · valide · rejete · obsolete · archive
auteurstringobligatoireIdentifiant de l'agent (agent:cadrage) ou de l'humain (humain:hkofi)
cree_ledatetime ISO 8601obligatoireHorodatage de création
modifie_ledatetime ISO 8601obligatoireHorodatage de dernière modification
valide_ledatetime ISO 8601Horodatage de validation humaine (statut valide)
valide_parstringHumain validateur + commentaire (ex. humain:hkofi)
dependancesliste de liensobligatoireContrats de dépendance (modèle §5), peut être vide
referentielsliste de codesobligatoireRéférentiels appliqués (config §6), dérivé du type
contenuchemin / blobobligatoireEmplacement du contenu (fichier, commit, URL)
garde-fousobjetRésultats des vérifications automatiques (linters, tests, revue croisée) avant passage en revue
tagsliste de stringsMots-clés libres pour la recherche
historiqueliste de transitionsobligatoireJournal append-only des transitions de statut (qui, quand, quoi) — alimente l'audit
Règle d'intégrité

Le champ historique est append-only : aucune transition passée ne peut être modifiée ou supprimée. C'est la base de l'audit et de la traçabilité exigée par le guide (annexe B V3).

4Machine à états d'un artefact

Reprise fidèle de l'annexe A du guide V3, formalisée pour le registre. Six statuts, quatre règles de transition.

Brouillon création agent En revue garde-fous passés Validé contrôle humain Rejeté humain / garde-fous Obsolète remplacé par v+1 Archivé terminal garde-fous ✓ humain ✓ remplacé clôture rejet (commentaire) reformulation → brouillon

Figure 1 — Machine à états d'un artefact (annexe A du guide V3). Transitions : brouillon → en_revue (garde-fous passés) ; en_revue → valide (humain) ou rejete ; valide → obsolete (remplacé) ou brouillon (réouverture) ; obsolete → archive ; rejete → brouillon (reformulation) ou archive (abandon).

Règles de transition

5Modèle de dépendances

Les contrats de dépendance relient chaque artefact à ses sources (amont) et à ses consommateurs (aval). Le registre stocke ces liens de manière directionnelle : une modification d'un artefact amont marque automatiquement les avals comme impactés (statut proposé à la régénération).

5.1 Types de liens

LienSensSignification
derive_deaval → amontL'artefact est généré à partir de l'amont (ex. specs dérivent du cahier des charges)
conforme_aartefact → référentielL'artefact applique un référentiel (ex. design.charte conforme à WCAG)
valide_parartefact → point de contrôleLe point de contrôle humain (PC1…PC10) qui valide cet artefact
depend_deartefact → artefactDépendance non dérivationnelle (ex. tests dépendent du code exécutable)
impacteamont → aval (dérivé)Lien inverse calculé par l'orchestrateur : liste des avals à régénérer

5.2 Relations canoniques (dérivations)

Le tableau suivant fixe les dérivations attendues par défaut dans le harnais. L'orchestrateur les utilise pour vérifier la complétude du registre et propager les changements.

Aval (produit)Dérive de (amont)Agent producteur
cadrage.cahier-des-chargescadrage.note-opportuniteagent:cadrage
spec.fonctionnellescadrage.cahier-des-chargesagent:specifications
spec.techniquesspec.fonctionnelles + archi.architectureagent:specifications
archi.architecturespec.fonctionnellesagent:architecture
archi.adrarchi.architectureagent:architecture
design.wireframescadrage.cahier-des-charges + spec.fonctionnellesagent:design
plan.backlogspec.fonctionnelles + archi.architectureagent:backlog
code.sourcearchi.architecture + plan.backlog (user stories)agent:code
test.plan / test.*spec.fonctionnelles + code.sourceagent:tests
deploy.pipeline / deploy.iaccode.sourceagent:deploiement
deploy.runbookdeploy.pipeline + deploy.iacagent:deploiement
transverse.doc-utilisateurdesign.wireframes + code.readmeagent:documentation
exploit.supervisiondeploy.runbook + code.sourceagent:exploitation
finvie.planensemble des artefacts valides du registreagent:decommissionnement
transverse.matrice-tracabilitetous les liens derive_de (dérivé mécanique)orchestrateur
Règle de propagation

Toute transition d'un artefact amont vers valide, rejete ou obsolete marque ses avals directs et indirects comme impactés (nouveau champ impacte_par proposé) : l'orchestrateur déclenche alors l'analyse d'impact et la régénération selon la section 7.2 du guide (retry → régénération enrichie → escalade humaine).

6Configuration des référentiels

Le guide V3 (section 4) exige que les référentiels soient configurables sans modification du code de l'orchestrateur. Le registre embarque un fichier de configuration versionné — referentiels.yaml — associant type d'artefact ↔ référentiel(s). Les agents le consultent comme grille d'auto-évaluation avant publication.

# referentiels.yaml — configuration des référentiels par type d'artefact
# Versionné dans le registre comme un artefact de type `config.referentiels`.
version: "1.0"
referentiels:
  cadrage.*: ["iso-25010"]
  design.*: ["wcag-2.2", "rgaa", "iso-9241-11"]
  spec.*: ["exigences-traçables"]
  archi.*: ["adr", "c4", "iso-42010"]
  plan.*: []
  code.*: ["guide-style", "conventional-commits"]
  test.*: ["pyramide-tests", "owasp-top10"]
  deploy.*: ["12-factor", "iac-versionnee"]
  exploit.*: ["itil", "sre", "owasp-top10"]
  finvie.*: ["rgpd", "iso-27001"]
  transverse.*: ["iso-25010", "diataxis"]
points_de_controle:
  cadrage.cahier-des-charges: "PC1"
  design.prototype: "PC2"
  archi.architecture: "PC3"
  plan.backlog: "PC4"
  code.source: "PC5"
  test.*: "PC5"
  deploy.pipeline: "PC6"
  exploit.*: "PC7"
  finvie.plan: "PC8"
  transverse.doc-utilisateur: "PC9"
  transverse.matrice-tracabilite: "PC10"
Règles d'utilisation
  • Les wildcards (famille.*) s'appliquent à tous les types de la famille ; un type peut être surchargé individuellement (code.readmediataxis en plus).
  • Le fichier est lui-même un artefact du registre (config.referentiels) : toute modification passe par la machine à états et déclenche l'analyse d'impact sur les artefacts concernés.
  • Un agent ne publie pas un artefact dont le référentiel configuré n'est pas cité dans ses métadonnées.

7Exemple d'artefact instancié

Exemple complet d'un ADR (archi.adr) enregistré dans le registre, illustrant l'ensemble des champs de la section 3.

{
  "id": "9f3c2a1e-7b4d-4e8f-9a2c-1d5e6f7a8b9c",
  "type": "archi.adr",
  "version": "1.0.0",
  "statut": "valide",
  "auteur": "agent:architecture",
  "cree_le": "2026-08-01T10:15:00Z",
  "modifie_le": "2026-08-01T14:30:00Z",
  "valide_le": "2026-08-01T15:00:00Z",
  "valide_par": "humain:hkofi",
  "dependances": [
    { "lien": "derive_de", "cible": "archi.architecture@1.2.0" },
    { "lien": "conforme_a", "cible": "referentiel:adr" }
  ],
  "referentiels": ["adr", "c4"],
  "contenu": "docs/adr/0001-choix-postgresql.md",
  "garde-fous": {
    "revue_croisee": "ok",
    "conformite_referentiel": "ok",
    "coherence_terminologique": "ok"
  },
  "tags": ["base-de-donnees", "choix-technologique"],
  "historique": [
    { "de": "brouillon", "vers": "en_revue", "le": "2026-08-01T13:45:00Z", "par": "agent:architecture" },
    { "de": "en_revue", "vers": "valide", "le": "2026-08-01T15:00:00Z", "par": "humain:hkofi", "commentaire": "ADR validé — PC3" }
  ]
}
Remarque

Le champ garde-fous documente les vérifications automatiques passées avant le passage en revue — c'est l'application concrète du principe 6 du guide (« un artefact qui n'a pas passé ces contrôles ne doit pas être marqué validé »).

8Décisions à valider

Ce schéma introduit des choix de conception qui doivent être confirmés avant l'implémentation (point de contrôle humain de l'étape 1).

Validation — 1 août 2026

Décisions D1 → D5 toutes validées par Hugues (PC1 de l'étape 1). Les choix retenus sont signalés en gras dans le tableau ci-dessous. Ce document passe au statut Validé.

#DécisionOptionsRecommandation
D1Technologie de persistance du registreSQLite / PostgreSQL / dépôt Git (fichiers YAML+MD) / hybride Git+BDDHybride Git+BDD : Git pour le contenu (traçabilité native), BDD pour les métadonnées et la recherche
D2Identifiant de version des dépendancesSemver seul / id+semver / id+semver+empreinteid + semver + empreinte (intégrité exigée par l'annexe B V3)
D3Granularité des ADRUn artefact par décision / un artefact groupant toutes les décisionsUn artefact par décision (traçabilité fine, régénération ciblée)
D4Champ impacte_parChamp calculé à la volée / champ persistéCalculé à la volée par l'orchestrateur (évite la dérive)
D5Langue des artefactsFrançais systématique / langue du projet / mixteLangue du projet définie au cadrage (par défaut : français)

9Critères de complétude de l'étape 1

L'étape 1 est considérée terminée lorsque les conditions suivantes sont remplies :

Prochaine étape

Une fois ce schéma validé, l'étape 2 de la feuille de route consiste à construire l'orchestrateur minimal avec les agents Cadrage, Spécifications et Architecture, plus le point de contrôle humain PC1.