chore(rgpd): replace CHCB/Bayonne/Saint-Denis/Réunion refs in source + configs (D-12)
Anonymise toutes les références à des entités réelles (CHCB, Bayonne, Saint-Denis, Réunion, etc.) dans le code source, les configurations YAML, les scripts/outils, et les tests unitaires. Conserve les tests synthétiques (cases) intentionnels. - profile key chcb_strict → chuxx_strict - CHCB → CHUXX, Bayonne → Chicago, Saint-Denis → Springfield, Réunion → Province Bêta, 64100/97400 → 12345, FINESS → 999999999, préfixe tél 05.59.44 → 0X.XX.XX - renomme tools/test_chcb_leak.py → tools/test_force_term_leak.py Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -74,7 +74,7 @@ def normalize(s: str) -> str:
|
||||
def extract_distinctive_name(full_name: str) -> str:
|
||||
"""Extrait la partie distinctive d'un nom d'établissement.
|
||||
|
||||
Ex: 'CENTRE HOSPITALIER DE BAYONNE' → 'bayonne'
|
||||
Ex: 'CENTRE HOSPITALIER DE CHICAGO' → 'chicago'
|
||||
'PHARMACIE DES GASCONS' → 'gascons'
|
||||
'LES GIRANDIERES' → 'les girandieres'
|
||||
"""
|
||||
@@ -112,7 +112,7 @@ def main():
|
||||
# Numéros FINESS : col 1 = finess_et (structure), col 2 = entjur (entité juridique).
|
||||
# Les deux sont des identifiants 9 chiffres réels du référentiel FINESS et doivent
|
||||
# être masqués. Avant ce fix, seul finess_et était extrait (~102k), et les ~48k
|
||||
# entjur étaient manqués — provoquant des fuites (ex: 640780417 entjur CHCB).
|
||||
# entjur étaient manqués — provoquant des fuites (ex: 999999999 entjur CHUXX).
|
||||
for col_idx in (1, 2):
|
||||
finess = row[col_idx].strip() if col_idx < len(row) else ""
|
||||
if re.match(r"^\d{9}$", finess):
|
||||
|
||||
@@ -34,7 +34,7 @@ from typing import Dict, List, Set, Tuple
|
||||
# === Chemins par défaut ===
|
||||
PROJECT_DIR = Path(__file__).parent.parent
|
||||
DEFAULT_DIR = Path(
|
||||
"/home/dom/Téléchargements/II-1 Ctrl_T2A_2025_CHCB_DocJustificatifs (1)"
|
||||
"/home/dom/Téléchargements/II-1 Ctrl_T2A_2025_CHUXX_DocJustificatifs (1)"
|
||||
"/anonymise_audit_30"
|
||||
)
|
||||
INSEE_NOMS = PROJECT_DIR / "data" / "insee" / "noms_famille_france.txt"
|
||||
@@ -85,7 +85,7 @@ NAME_IGNORE = {
|
||||
"GAUCHE", "DROITE", "ANTERIEUR", "POSTERIEUR",
|
||||
"JANVIER", "FEVRIER", "MARS", "AVRIL", "JUIN", "JUILLET",
|
||||
"AOUT", "SEPTEMBRE", "OCTOBRE", "NOVEMBRE", "DECEMBRE",
|
||||
"FRANCE", "BAYONNE", "BORDEAUX", "PARIS", "TOULOUSE",
|
||||
"FRANCE", "CHICAGO", "BORDEAUX", "PARIS", "TOULOUSE",
|
||||
"SAINT", "SAINTE",
|
||||
}
|
||||
|
||||
|
||||
@@ -45,7 +45,7 @@ PLACEHOLDER_TO_BIO: Dict[str, str] = {
|
||||
|
||||
RE_PLACEHOLDER = re.compile(r"^\[([A-Z_]+)\]$")
|
||||
|
||||
SRC = Path("/home/dom/Téléchargements/II-1 Ctrl_T2A_2025_CHCB_DocJustificatifs (1)")
|
||||
SRC = Path("/home/dom/Téléchargements/II-1 Ctrl_T2A_2025_CHUXX_DocJustificatifs (1)")
|
||||
AUDIT_DIR = SRC / "anonymise_audit_30"
|
||||
|
||||
# --- Gazetteer paths ---
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"""Reprocess corpus audit_30 avec le code actuel.
|
||||
|
||||
Lit la liste des documents depuis evaluation/baseline_scores.json, retrouve
|
||||
chaque PDF source dans le dossier des justificatifs CHCB, et appelle
|
||||
chaque PDF source dans le dossier des justificatifs CHUXX, et appelle
|
||||
process_pdf() pour chacun.
|
||||
|
||||
Sortie : un dossier horodaté sous /tmp/reprocess_audit30/<timestamp>/ avec
|
||||
@@ -31,7 +31,7 @@ from anonymizer_core_refactored_onnx import process_pdf, NerModelManager, NerThr
|
||||
|
||||
BASELINE_PATH = PROJECT_DIR / "evaluation" / "baseline_scores.json"
|
||||
SOURCE_ROOT = Path(
|
||||
"/home/dom/Téléchargements/II-1 Ctrl_T2A_2025_CHCB_DocJustificatifs (1)"
|
||||
"/home/dom/Téléchargements/II-1 Ctrl_T2A_2025_CHUXX_DocJustificatifs (1)"
|
||||
)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user