fix: Propagation globale sélective v2 - Normalisation dates + Multi-pass

- Normalisation agressive des dates : génère 4 variations (/, ., -, espaces)
- Remplacement multi-pass : avec/sans contexte 'Né(e) le'
- Amélioration force_term : case-insensitive + word boundaries
- Outil de validation post-anonymisation
- Tests : 162 CRO, 0 fuite dates, 0 fuite CHCB (100% succès)
- Temps: 0.1s/doc

Résout les 36 CRO avec fuites identifiées dans l'audit initial.
This commit is contained in:
2026-03-02 12:22:58 +01:00
parent 871221ea56
commit f92da4d54e
251 changed files with 4676 additions and 23 deletions

View File

@@ -0,0 +1,22 @@
{"page": 0, "kind": "ETAB", "original": "Pôle de Chirurgie - Anesthésie - Bloc Opératoire", "placeholder": "[MASK]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Romain DIDAILLER", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Laura ETCHECHOURY", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "ADRESSE", "original": "80 ROUTE DE BEHOBIE", "placeholder": "[ADRESSE]", "bbox_hint": null}
{"page": 0, "kind": "CODE_POSTAL", "original": "64700 HENDAYE", "placeholder": "[CODE_POSTAL]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Renaud GONTIER", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Marie LACLAU-LACROUTS", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "ANGELE JEHAN", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "DATE_NAISSANCE", "original": "Née le 08/11/1951", "placeholder": "[DATE_NAISSANCE]", "bbox_hint": null}
{"page": 0, "kind": "ETAB", "original": "Unité Urologie", "placeholder": "[MASK]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Vincent COMAT", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Antoine DOUARD", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Yann LA MMERTYN", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Laurent MASCLE Laparotomie", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Alessandro FALCHETTI Adhésiolyse", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Florence MAZERES", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Caroline RIVERA", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Bruno CORDON", "placeholder": "[NOM]", "bbox_hint": null}
{"page": -1, "kind": "DATE_NAISSANCE_GLOBAL", "original": "08.11.1951", "placeholder": "[DATE_NAISSANCE]", "bbox_hint": null}
{"page": -1, "kind": "DATE_NAISSANCE_GLOBAL", "original": "08-11-1951", "placeholder": "[DATE_NAISSANCE]", "bbox_hint": null}
{"page": -1, "kind": "DATE_NAISSANCE_GLOBAL", "original": "08/11/1951", "placeholder": "[DATE_NAISSANCE]", "bbox_hint": null}
{"page": -1, "kind": "DATE_NAISSANCE_GLOBAL", "original": "08 11 1951", "placeholder": "[DATE_NAISSANCE]", "bbox_hint": null}