test(review): étendre couche 2 à 10 cas et brancher gate pytest avec xfail strict
Couche 2 (revue humaine sur documents complets) : ajout de 6 cas
synthétiques pour atteindre la cible cadrage produit (10 cas).
Cas ajoutés :
- 005_bacterio_complete : layout BACTERIO N° venue rejeté avant IPP
+ RPPS prescripteur (pattern qualifié non détecté).
- 006_trackare_soignants : export Trackare avec activités HH:MM NOM,
Note IDE/médicale, Signé — médicament greedy.
- 007_lettre_sortie_complete : courrier médecin→médecin, multi-villes,
email institutionnel @chcb.fr (cassé par le force_term CHCB).
- 008_anesthesie_complete : protocole anesthésique avec molécules
BDPM, prénoms basques rares (Maddi, Pantxoa).
- 009_multi_etablissements : 3 établissements distincts (CHCB, CHU
Bordeaux, Clinique Aguilera), prénoms basques avec ñ (Beñat).
- 010_fiche_admission_minimale : fiche administrative dense, labels
variés (Nom de jeune fille :, Prénom :, Ville :, Mutuelle :).
Gate pytest (tests/unit/test_synthetic_review.py) :
- vérifie l'inventaire (10 cas) et fait passer chaque cas via run_case.
- 3 cas marqués xfail(strict=True) pour révéler 9 fuites de PII et
2 patterns partiels que le moteur ne couvre pas aujourd'hui :
* 005 — RPPS avec qualificateur (RPPS prescripteur :)
* 009 — Bordeaux résiduel après [ETAB], CHCB en fin de phrase,
Biarritz sur ligne Ville :, ñ qui casse Beñat → [NOM]ñat
* 010 — Nom de jeune fille / Prénom / Ville sans label "Patient :",
NIR au format espacé partiellement consommé en TEL,
numéro de mutuelle MGEN non couvert
- xfail strict force pytest à signaler un xpass quand un fix passe :
rappel automatique de retirer l'entrée de KNOWN_FAILURES.
Le runner tools/run_synthetic_review_corpus.py reste utilisable en
direct (sortie diff/audit/summary) pour la revue humaine. Les sorties
actual/ sont gitignorées (régénérées à chaque exécution).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"required_kinds": [
|
||||
"ADRESSE",
|
||||
"CODE_POSTAL",
|
||||
"DATE_NAISSANCE",
|
||||
"EMAIL",
|
||||
"ETAB",
|
||||
"IPP",
|
||||
"NIR",
|
||||
"TEL",
|
||||
"VILLE"
|
||||
],
|
||||
"must_contain": [
|
||||
"FICHE D'ADMISSION",
|
||||
"Service de gastro-entérologie",
|
||||
"Sexe : F",
|
||||
"Nationalité : française",
|
||||
"Lien : conjoint",
|
||||
"MGEN"
|
||||
],
|
||||
"must_not_contain": [
|
||||
"DARRIBEHAUDE",
|
||||
"ELIZONDO",
|
||||
"Sabine",
|
||||
"ETCHEGOIN",
|
||||
"Jean-Louis",
|
||||
"Tarbes",
|
||||
"Bayonne",
|
||||
"VWX99001",
|
||||
"24009988",
|
||||
"2400667788",
|
||||
"44455566677",
|
||||
"30/04/1973",
|
||||
"05 59 22 33 44",
|
||||
"06 88 99 00 11",
|
||||
"06 77 88 99 00",
|
||||
"05 59 11 22 33",
|
||||
"sabine.darribehaude@example.com",
|
||||
"1234567890",
|
||||
"2 73 04 65 100 100 88",
|
||||
"CHCB"
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user