Aller au contenu

PD-274 — Retour d'experience

1. Resume

PD-274 a corrige 2 checks Prolog de conformite PV-ANCHOR-001 passant de PARTIEL a OK (27/27 conforme). Les 3 gates ont converge en v1 (GO) avec des scores identiques de 9.125.

2. Metriques

  • Duree : ~1.5h (partie d'une session batch de 3 stories)
  • Gates : 3 gates, 3 GO en v1 (0 iteration de correction)
  • Fichiers modifies : 2 (1 Python, 1 TypeScript)
  • Lignes modifiees : ~60 lignes (extract-facts.py: ~50, anchor-batch.service.ts: ~10)

3. Points forts

  1. Pattern B extract-facts.py : La detection des enums varchar+TS est une correction racine qui beneficiera a toutes les entites futures utilisant ce pattern (document_secure, timestamp_batch, etc.). ROI eleve.
  2. Convergence v1 systematique : Comme PD-272 et PD-273, les stories de conformite formelle convergent en v1 (pattern confirme sur 3/3 stories).
  3. Methode helper bien structuree : Refactoring en 3 methodes (_extract_varchar_enums, _resolve_enum_from_import, _resolve_import_path) respecte la complexite cognitive Sonar.

4. Points d'amelioration

  1. Reviews LLM surestiment les ecarts : Taux de faux positifs : Gate 3 (71%), Gate 5 (67%), Gate 8 (100%). Pattern identique PD-272/PD-273.
  2. OpenCode external_directory : Le probleme persiste — ChatGPT et Claude Sonnet via OpenCode ne peuvent pas acceder aux fichiers hors du projet principal.

5. Learnings

  • [PV-ANCHOR extract-facts] Pattern B varchar+enum import est generique et reutilisable pour toutes les entites utilisant varchar avec TS enum
  • [FORMAL COMPLIANCE] 3/3 stories de conformite formelle convergent en v1 GO (>9.0) — pattern confirme comme regle
  • [EXTRACT-FACTS] Refactoring en methodes helpers reduit la complexite cognitive (S3776) et facilite les extensions futures

6. Gates

Gate Score Verdict Iterations
3 (CONFORMITY_CHECK) 9.125 GO 1
5 (AMBIGUITY) 9.125 GO 1
8 (CLOSURE) 9.125 GO 1

7. Faux positifs par gate

Gate Total ecarts P1 Faux positifs Taux
3 14 10 71%
5 6 4 67%
8 1 1 100%

8. Dependances

  • PD-272 (DONE) : meme pattern de correction (PV-PROOF)
  • PD-273 (DONE) : meme pattern (PV-AUDIT, trigger atoms)
  • PD-55 (DONE) : AnchorBatch entity/service originaux

9. Recommandations

  1. Le pattern extract-facts.py Pattern B devrait etre documente dans le README de ProbatioVault-doc
  2. Les stories de conformite formelle Prolog peuvent etre traitees en batch avec un SLA de ~1.5h/story
  3. Le taux de faux positifs des reviews LLM confirme le besoin d'injecter du contexte Prolog dans les templates de review

10. Ameliorations process

10.1 Contexte Prolog pour reviews LLM (haute)

Fichier cible : templates/prompts/gate-review-*.md Modification : Injecter une note contextuelle pour les stories domaine crypto-proof : "Ce domaine utilise des checks Prolog deterministes. Les 'codes d'erreur' et 'mecanismes de detection' sont des conventions de la spec, pas des features a implementer." ROI estime : Reduction de 50% des faux positifs en Gate ⅝

10.2 Documentation Pattern B extract-facts (basse)

Fichier cible : ProbatioVault-doc/scripts/formal/README.md Modification : Documenter le Pattern B (varchar + TS enum) avec exemples ROI estime : Acceleration onboarding + maintenance