tests: alias DLBCL + garde-fou Trackare + e2e PDFs réels + gold CRH + benchmark enrichi

- 11 tests unitaires : TestAliasAndConclusionBonus (7) + TestTrackareSymptomGuard (4)
- Tests e2e sur PDFs réels (skip si absent) : méningite A87.0 + DLBCL C83.3 top1
- Gold CRH enrichi : 5 cas (2 réels ajoutés : 115_23066188, 132_23080179)
- Benchmark synthese : récupération conclusion depuis source_excerpt des DAS/traitements
- .gitignore : protection anti-PHI (real_crh_pdfs/, data/crh_samples/*.pdf)
- docs/PHI_POLICY.md : 7 règles de sécurité PHI
- Rapports debug : case 132 REVIEW (garde-fou actif), top errors, DIM pack

1043 tests passent, 0 régression.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
dom
2026-02-24 14:35:57 +01:00
parent 06a1be5425
commit cad0dd22b1
16 changed files with 1513 additions and 11 deletions

View File

@@ -0,0 +1,41 @@
{
"case_id": "132_23080179",
"document_type": "trackare",
"gold": {
"dp_expected": {
"code": "C83.3",
"label": "Lymphome diffus à grandes cellules B"
},
"dp_acceptable_codes": [],
"dp_acceptable_family3": [
"C83"
],
"allow_symptom_dp": false,
"confidence": "probable"
},
"prediction": {
"chosen_code": "R59.0",
"chosen_term": "Adénopathie",
"verdict": "REVIEW",
"confidence": "medium",
"reason": "Trackare symptôme vs CRH diagnostic — vérification DIM requise",
"review_reason_tag": "other",
"evidence": [
"Source: Trackare (codage établissement)",
"Alerte: Trackare code un symptôme (R*) mais le CRH mentionne un diagnostic étiologique"
],
"evidence_count": 2
},
"pool_stats": {
"raw_pool_size": 23,
"filtered_pool_size": 0,
"topk_size": 0
},
"top_candidates": [],
"match_eval": {
"strict_match": false,
"acceptable_match": false,
"family3_match": false,
"symptom_not_allowed": true
}
}