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,51 @@
{"page": 0, "kind": "NOM", "original": "Hélène MARCHAND", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Romain BILLON-GRAND", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Philippe CAILLAUD Allées", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "CODE_POSTAL", "original": "64100 BAYONNE", "placeholder": "[CODE_POSTAL]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Joe FADDOUL", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Daniel LAGUERRE", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "GERARD FORT", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "CODE_POSTAL", "original": "64500 ST JEAN DE LUZ", "placeholder": "[CODE_POSTAL]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Pascale LARROUY", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Maritxu GRENADE", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "DATE_NAISSANCE", "original": "né le 14/11/1948", "placeholder": "[DATE_NAISSANCE]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "GERARD FORT", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "BILLON-GRAND", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Fanny LAFOURCADE", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "EMAIL", "original": "secr.neurochir@ch-cotebasque.fr", "placeholder": "[EMAIL]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Daniel LAGUERRE", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "CAILLAUD", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Véronique ARTIGUEBIEILLE", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "EMAIL", "original": "secr.neurochir@ch-cotebasque.fr", "placeholder": "[EMAIL]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "FADDOUL", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Cindy AUBERT", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "EMAIL", "original": "secr.neurochir@ch-cotebasque.fr", "placeholder": "[EMAIL]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "LAGUERRE", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "NOM", "original": "Christelle", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 0, "kind": "EMAIL", "original": "secr.neurochir@ch-cotebasque.fr", "placeholder": "[EMAIL]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "GERARD FORT", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "Romain BILLON-GRAND", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "Philippe CAILLAUD", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "Joe FADDOUL COMPTE", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "AGE", "original": "Patient de 74 ans", "placeholder": "[AGE]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "Maritxu GRENADE", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "BILLON-GRAND Le", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "Fanny LAFOURCADE", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "Daniel LAGUERRE", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "Joe FADDOUL", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "EMAIL", "original": "secr.neurochir@ch-cotebasque.fr", "placeholder": "[EMAIL]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "BANNIER François", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "Véronique ARTIGUEBIEILLE", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "EMAIL", "original": "secr.neurochir@ch-cotebasque.fr", "placeholder": "[EMAIL]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "FADDOUL", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "Cindy AUBERT", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "EMAIL", "original": "secr.neurochir@ch-cotebasque.fr", "placeholder": "[EMAIL]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "LAGUERRE", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "Christelle", "placeholder": "[NOM]", "bbox_hint": null}
{"page": 1, "kind": "EMAIL", "original": "secr.neurochir@ch-cotebasque.fr", "placeholder": "[EMAIL]", "bbox_hint": null}
{"page": 1, "kind": "NOM", "original": "Daniel LAGUERRE", "placeholder": "[NOM]", "bbox_hint": null}
{"page": -1, "kind": "DATE_NAISSANCE_GLOBAL", "original": "14.11.1948", "placeholder": "[DATE_NAISSANCE]", "bbox_hint": null}
{"page": -1, "kind": "DATE_NAISSANCE_GLOBAL", "original": "14/11/1948", "placeholder": "[DATE_NAISSANCE]", "bbox_hint": null}
{"page": -1, "kind": "DATE_NAISSANCE_GLOBAL", "original": "14 11 1948", "placeholder": "[DATE_NAISSANCE]", "bbox_hint": null}
{"page": -1, "kind": "DATE_NAISSANCE_GLOBAL", "original": "14-11-1948", "placeholder": "[DATE_NAISSANCE]", "bbox_hint": null}
{"page": -1, "kind": "EMAIL_GLOBAL", "original": "secr.neurochir@ch-cotebasque.fr", "placeholder": "[EMAIL]", "bbox_hint": null}