refactor: split cpam_response → cpam_rag, cpam_context, cpam_validation

Découpe le monolithe cpam_response.py (1207L) en 3 modules spécialisés :
- cpam_rag.py : recherche RAG ciblée (5 requêtes, dédup)
- cpam_context.py : construction prompt, définitions CIM-10, bio summary
- cpam_validation.py : grounding, références, codes fermée, adversariale

Le cpam_response.py reste orchestrateur (~230L) avec re-exports
backward-compat. Mocks des tests mis à jour pour cibler les bons modules.
Ajout RULE-CPAM-CORRECTION-LOOP dans base.yaml. 748 tests passent.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
dom
2026-02-20 10:06:26 +01:00
parent e760b12961
commit 3c070f3c1d
6 changed files with 1553 additions and 833 deletions

View File

@@ -54,6 +54,9 @@ packs:
RULE-DAS-TO-DP:
enabled: true
description: "DAS promu en DP si aucun DP extrait — sélection par pertinence/confiance/spécificité"
RULE-CPAM-CORRECTION-LOOP:
enabled: true
description: "Boucle de correction quand validation adversariale score ≤ 5/10"
bio_electrolytes:
enabled: true