PD-244 — Retour d'expérience (REX)¶
1. Résumé exécutif¶
| Métrique | Valeur |
|---|---|
| Objectif initial | Produire matrices conformité ISO 14641 et NF Z42-013 |
| Résultat obtenu | Conforme — 14 livrables, 15 gaps identifiés, roadmap Q1-Q4 2026 |
| Verdict final | RESERVE (acceptée) — score 8.23/10 |
| Type de story | Documentaire (audit normatif, pas de code) |
2. Métriques de convergence¶
2.1 Temps et itérations¶
| Étape | Durée estimée | Durée réelle | Itérations | Écart |
|---|---|---|---|---|
| 0 - Besoin | 30 min | 20 min | 1 | -33% |
| 1 - Spécification | 2h | 1.5h | 2 | -25% |
| 2 - Tests | 1h | 45 min | 2 | -25% |
| 3 - Gate spec | 1h | 1.5h | 2 | +50% |
| 4 - Plan | 1h | 2h | 3 | +100% |
| 5 - Gate plan | 1h | 1.5h | 2 | +50% |
| 6 - Implémentation | 4h | 3h | 1 | -25% |
| 7 - Acceptabilité | 2h | 1h | 1 | -50% |
| 8 - Gate acceptabilité | 1h | 1h | 1 | 0% |
| 9 - REX | 30 min | 30 min | 1 | 0% |
| TOTAL | ~14h | ~13h | 16 | -7% |
2.2 Scores de convergence par gate¶
| Gate | Score v1 | Score final | Delta | Itérations |
|---|---|---|---|---|
| Gate 3 | 7.31/10 (NON_CONFORME) | 9.875/10 (GO) | +2.57 | 2 |
| Gate 5 | 8.25/10 (RESERVE) | 8.875/10 (GO) | +0.63 | 2 |
| Gate 8 | 8.23/10 (RESERVE) | 8.23/10 (RESERVE acceptée) | 0 | 1 |
2.3 Écarts par catégorie¶
| Catégorie d'écart | Gate 3 | Gate 5 | Gate 8 | Total |
|---|---|---|---|---|
| ECT (complétude/testabilité) | 5 | 7 | 2 | 14 |
| DIV (divergence spec/impl) | - | 0 | 0 | 0 |
| AMB (ambiguïté) | 2 | 2 | 0 | 4 |
| SEC (sécurité) | 0 | 0 | 1 | 1 |
| PERF (performance) | - | - | 0 | 0 |
| TOTAL écarts | 7 | 9 | 3 | 19 |
3. Points fluides¶
Ce qui a bien fonctionné :
- Architecture multi-agents : La production parallèle par 3 agents (Claude, ChatGPT, Gemini) a permis une diversité cognitive réelle avec 3 perspectives différentes sur les normes
- Méthodologie de réconciliation : Les règles consensus (3/3) / majorité (⅔) / arbitrage (1/1/1) ont bien fonctionné pour résoudre les divergences
- Acceptabilité croisée : Chaque matrice évaluée par 2 autres agents a révélé les faiblesses (Gemini trop strict, Claude trop optimiste)
- OpenCode pour ChatGPT : L'intégration via stdin a parfaitement fonctionné pour les prompts longs
- Story documentaire : L'adaptation du workflow pour une story sans code a été naturelle (phase 6 = production matrices au lieu de code)
4. Points difficiles¶
Obstacles rencontrés (sans justification) :
- Accès aux normes sources : Les PDFs ISO 14641 et NF Z42-013 ne sont pas lisibles directement (poppler manquant) — contourné par connaissance des normes
- Divergence inter-agents : Écart de scoring jusqu'à 50% entre agents (Claude 91.67% vs Gemini 58.82% sur ISO 14641)
- Gate 3 NON_CONFORME : Première itération rejetée car version NF Z42-013:2009 au lieu de 2020
- Plan v3 nécessaire : Deux refactorings du plan pour intégrer l'architecture multi-agents (plan v1 mono-agent, plan v2 intermédiaire, plan v3 final)
- Gemini thinking_config : Erreur
include_thoughtsavec gemini-2.0-flash, fallback sur gemini-2.5-pro
5. Hypothèses révélées tardivement¶
Hypothèses non explicites découvertes en cours de workflow :
- INV-PD244-08 anti-citation — découverte à l'étape 6 : Le contrôle anti-citation nécessite une instruction explicite dans les prompts agents, pas seulement une règle documentée
- Scoring divergent — découverte à l'étape 6b : Les agents ont des interprétations différentes de CONFORME vs PARTIEL selon leur "personnalité" (conservateur vs optimiste)
- Arbitrage humain-in-the-loop — découverte à l'étape 6b : Les cas 1/1/1 (3 avis différents) nécessitent une escalade, pas un vote aléatoire
6. Invariants complexes¶
Invariants difficiles à implémenter ou sensibles aux régressions :
- INV-PD244-07 (formule score) — TC-SCORE : La formule
((CONFORME*100 + PARTIEL*50) / (total - HORS_PERIMETRE))est mathématiquement simple mais l'application cohérente par 3 agents nécessite une instruction précise - INV-PD244-08 (anti-citation) — TC-YAML-09 : Vérifier l'absence de copie verbatim est difficile automatiquement — relies sur reformulation manuelle
7. Dette technique¶
Compromis acceptés et non bloquants :
- Anti-citation non automatisé — impact: faible — Contrôle manuel des reformulations, pas de vérificateur automatique "10 mots identiques"
- Preuves internes majoritaires — impact: faible — Les preuves référencent des chemins internes non accessibles à un auditeur externe
- Scores réconciliés < 80% — impact: moyen — ISO 77.78% et NF 68.18% nécessitent les 11 stories planifiées sous PD-217 pour atteindre la certification
8. Risques résiduels¶
| Risque | Type | Probabilité | Impact | Mitigation |
|---|---|---|---|---|
| Normes évoluent avant certification | métier | faible | moyen | Veille normative trimestrielle |
| Gaps non résolus à temps | ops | moyen | élevé | Roadmap Q1-Q4 2026 avec jalons |
| Divergence interprétation auditeur externe | métier | moyen | moyen | Matrices réconciliées + justifications arbitrage |
8bis. Matrice de délégation inter-PD¶
Stories dont cette implémentation dépend, et stories qui dépendent de cette implémentation :
| Story | Direction | Statut | Nature de la dépendance | Problème rencontré |
|---|---|---|---|---|
| PD-217 | → bloque | EPIC | Epic parent pour certification | RAS |
| PD-246 | → bloque | TODO | Risk analysis périodique | Gap identifié |
| PD-247 | → bloque | TODO | Programme audit interne | Gap identifié |
| PD-XXX (11 stories) | → bloque | TODO | Gaps ISO/NF | Planifiées Q1-Q4 2026 |
8ter. Bugs de tests¶
Aucun bug de test rencontré (story documentaire sans code applicatif).
9. Patterns récurrents détectés¶
9.1 Patterns confirmés (déjà vus dans d'autres stories)¶
- Gate 3 souvent NON_CONFORME en v1 — pattern général : les specs initiales manquent de précision
- Plan nécessite plusieurs itérations — pattern général : la décomposition en tâches est souvent sous-estimée
9.2 Nouveaux patterns identifiés¶
- Multi-agents = diversité cognitive — Les 3 agents produisent des résultats significativement différents, ce qui révèle les zones d'ambiguïté normative
- Réconciliation nécessite règles explicites — Sans règles consensus/majorité/arbitrage, la réconciliation devient subjective
- Score security difficile à atteindre pour audit — Le critère security (anti-citation, sources) est le plus difficile à documenter formellement
- Story documentaire = phase 6 adaptable — Le workflow s'adapte bien aux stories sans code (matrices au lieu de modules)
10. Améliorations du workflow¶
10.1 Améliorations des prompts/templates¶
| Fichier | Amélioration suggérée | Priorité |
|---|---|---|
templates/prompts/6-agent-common.md | Ajouter instruction anti-citation explicite avec exemple de reformulation | haute |
templates/outputs/PD-XX-plan.md | Ajouter section "Architecture multi-agents" pour stories collaboratives | moyenne |
templates/prompts/8-review-acceptabilite.md | Clarifier critère security pour stories documentaires (pas de code = pas d'injection SQL) | moyenne |
10.2 Améliorations des agents¶
| Agent | Amélioration suggérée | Justification |
|---|---|---|
| Prompt commun multi-agents | Inclure calibration explicite (conservateur vs optimiste) pour réduire les écarts inter-agents | Écart 50% entre Claude et Gemini |
| Réconciliation | Documenter la méthodologie de reconciliation dans un template dédié | Capitaliser sur PD-244 |
10.3 Améliorations du processus¶
- Créer un template pour stories documentaires : Adapter les critères Gate 8 (security ≠ vulnérabilités code mais intégrité documentaire)
- Ajouter vérificateur anti-citation : Script Python/TS qui compare les reformulations aux textes normatifs originaux
- Archiver les matrices agents : Garder les 9 matrices individuelles pour auditabilité, pas seulement les réconciliées
11. Enseignements clés¶
5 enseignements génériques réutilisables :
-
Multi-agents révèle les ambiguïtés — Quand 3 agents produisent des scores différents, c'est que la norme ou la spec est ambiguë. Utiliser cette divergence comme signal.
-
Réconciliation explicite > vote implicite — Documenter les règles de réconciliation (consensus/majorité/arbitrage) avant de lancer les agents, pas après.
-
Anti-citation = instruction + exemple — Une règle documentée ne suffit pas. Il faut injecter l'instruction ET un exemple de reformulation dans chaque prompt agent.
-
RESERVE acceptée ≠ échec — Pour un audit interne sans certification immédiate, accepter une RESERVE avec justification est pragmatique.
-
Story documentaire = workflow adaptable — Le workflow en 10 étapes s'adapte aux stories sans code : la phase 6 produit des matrices/documents au lieu de modules TypeScript.
12. Métriques cumulatives¶
| Métrique | Cette story | Moyenne projet | Tendance |
|---|---|---|---|
| Temps total | 13h | N/A (1ère story legal-compliance) | → |
| Itérations gates | 5 | N/A | → |
| Écarts totaux | 19 | N/A | → |
| Score convergence moyen | 9.0/10 | N/A | → |
Réserves acceptées¶
Cette story se termine avec une réserve Gate 8 explicitement acceptée :
| Critère | Score | Justification |
|---|---|---|
| security | 7.8/10 | Story audit documentaire interne, anti-citation observable dans reformulations, risque juridique faible pour usage interne |
Décision humaine : Option B (accepter la réserve sans correction).
REX produit conformément au template templates/outputs/PD-XX-rex.md