From c414e1635734a86efbcab4dd8d7dc1b20bcc8809 Mon Sep 17 00:00:00 2001 From: Juan Date: Mon, 11 May 2026 14:38:52 +0200 Subject: [PATCH] =?UTF-8?q?fix(policies):=20detect=5Fpii/pii=5Fleakage=20s?= =?UTF-8?q?olo=20con=20recognizers=20de=20patr=C3=B3n=20fiables?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Con Presidio real (imagen Docker) y `en_core_web_sm`, el recognizer de PERSON daba falsos positivos sobre los textos de los escenarios (técnicos, en español, analizados con el modelo `en`) → `01_sip` y `02_mos` salían `blocked_by_guardrail` en lugar de `awaiting_approval`/`completed`. Se quitan `PERSON` y `PHONE_NUMBER` de `detect_pii.entities` (input) y `PHONE_NUMBER` de `pii_leakage.entities` (output); quedan los recognizers puramente de patrón (`EMAIL_ADDRESS`, `ES_NIF`, `IP_ADDRESS`, `IBAN_CODE`), fiables. El bloqueo por NIF/email del demo sigue funcionando. Co-Authored-By: Claude Opus 4.7 --- policies/default/versions/v1.yaml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/policies/default/versions/v1.yaml b/policies/default/versions/v1.yaml index b950af6..e1f8b16 100644 --- a/policies/default/versions/v1.yaml +++ b/policies/default/versions/v1.yaml @@ -4,7 +4,11 @@ description: Política base aplicada a agentes de operación de plataforma de vo input_validators: - type: detect_pii config: - entities: [PERSON, EMAIL_ADDRESS, PHONE_NUMBER, ES_NIF, IP_ADDRESS, IBAN_CODE] + # Solo recognizers de patrón fiables: el modelo spaCy en_core_web_sm que usa + # Presidio en la imagen Docker da falsos positivos de PERSON sobre los textos + # técnicos de los escenarios (que están en español y se analizan con el modelo + # en). PERSON/PHONE_NUMBER necesitarían en_core_web_lg o un modelo es_*. + entities: [EMAIL_ADDRESS, ES_NIF, IP_ADDRESS, IBAN_CODE] severity_on_match: block - type: prompt_injection config: @@ -45,7 +49,7 @@ output_validators: requires_approval: {type: boolean} - type: pii_leakage config: - entities: [EMAIL_ADDRESS, PHONE_NUMBER, ES_NIF, IP_ADDRESS] + entities: [EMAIL_ADDRESS, ES_NIF, IP_ADDRESS] severity_on_match: block - type: forbidden_action_keywords config: