Cómo se crean y verifican las reglas de Scanara
Cada regla está anclada al artículo, apartado y punto exactos del reglamento — y pasa por seis capas de verificación antes de publicarse.
Medido el 4 de agosto de 2026 — reverificado en cada versión.
Cómo se construyen las reglas
El pipeline de reglas de Scanara analiza el texto completo del Reglamento (UE) 2024/1689 y ancla cada regla a su artículo, apartado y punto exactos. Un único archivo de mapeo clasifica cada obligación del reglamento en una de tres categorías: detectable en el código, detectable en un documento de política, o no detectable automáticamente y dejada a una evaluación guiada.
La escalera de puertas de publicación
Cada versión del conjunto de reglas pasa por seis puertas en serie, desde comprobaciones estructurales amplias hasta una comparación exacta con un resultado conocido como correcto. Una versión no se publica a menos que se superen todas las puertas.
L2.5
Coherencia del catálogo
Comprueba que el catálogo de artículos, el mapeo de obligaciones y cualquier regla de supresión de solapamientos permanezcan sincronizados entre sí.
L1/L2
Estructura del corpus
Nueve comprobaciones estructurales sobre el corpus de reglas: cobertura de artículos, sin patrones duplicados, metadatos completos, valores de enumeración válidos, identificadores de regla únicos y límites de reglas stub.
L3
Fixtures por obligación
Para cada obligación detectable en el código, un fixture positivo debe generar al menos un hallazgo y uno negativo debe generar cero — en cada lenguaje soportado.
L4
Umbrales de KPI
17 umbrales de cobertura, integridad y determinismo — ver la tabla a continuación.
L5
Instantáneas de referencia
Una comparación exacta de cada hallazgo con un resultado esperado registrado, en 25 aplicaciones de referencia, fijado a una versión específica del conjunto de reglas.
R1
Puerta de remediación
Confirma que un fixture sin remediar genera un hallazgo no satisfecho, y que el mismo fixture con la remediación recomendada aplicada se reconoce como satisfecho.
Cómo evalúa Scanara la documentación con OPA y Rego
Las comprobaciones de cumplimiento a nivel documental de Scanara se ejecutan sobre Open Policy Agent (OPA). OPA evalúa la documentación técnica frente a las obligaciones del Reglamento (UE) 2024/1689. Esto sigue el mismo enfoque policy-as-code que se usa en todo el ecosistema OPA: reglas declarativas, evaluación determinista y un resultado auditable en todo momento. Esto se ejecuta junto con el escaneo de código fuente de Scanara. El escaneo de código comprueba lo que hace el código. OPA comprueba lo que dice la documentación.
Cada archivo de documentación sigue los mismos pasos. Primero, Scanara lo analiza y detecta su idioma (se admiten 8 idiomas de la UE). Después lo normaliza en un documento de entrada estructurado: secciones, encabezados, texto extraído. OPA evalúa este documento estructurado frente a un paquete de políticas Rego compilado.
Scanara genera estas reglas a partir de un mapeo canónico entre el texto de los artículos del Reglamento (UE) 2024/1689 y requisitos verificables automáticamente. Ninguna regla se escribe a mano por repositorio. Cada regla se remonta a un artículo, apartado y punto concretos. La evaluación produce un hallazgo por obligación: cumplida, ausente o parcial. Estos hallazgos se incorporan al informe de cumplimiento junto con los hallazgos de código fuente.
El siguiente ejemplo muestra el patrón. Está simplificado con fines de documentación pública. El conjunto de reglas en producción cubre docenas de categorías de obligaciones, además de detección multilingüe, ponderación de gravedad y comprobaciones de coherencia entre documentos que no se muestran aquí.
package eu_ai_act.example.article_11
# Illustrative pattern only — simplified for public documentation.
# Scanara's production ruleset covers dozens of obligation categories with
# multi-language detection, severity weighting, and cross-document
# consistency checks not shown here.
default satisfied := false
# A document satisfies this (illustrative) Article 11 check when its parsed
# sections include the required topic, with non-empty content.
satisfied if {
some section in input.document.sections
section.topic == "risk_management_process"
count(trim_space(section.content)) > 0
}
finding := {
"article": "11",
"obligation": "technical_documentation.risk_management_process",
"status": "satisfied",
} if satisfied
finding := {
"article": "11",
"obligation": "technical_documentation.risk_management_process",
"status": "missing",
"severity": "high",
} if not satisfiedJuntos, ambos motores detectan automáticamente 66 artículos del Reglamento (UE) 2024/1689: 44 detectables en código y 22 a nivel documental mediante OPA. La cobertura abarca los 8 idiomas de la UE. Los hallazgos de ambos motores se incorporan directamente al dossier de cumplimiento generado. La trazabilidad de la evidencia se remonta a un resultado de escaneo real, no a una autoevaluación.
Valores medidos actuales
| Métrica | Umbral | Actual |
|---|---|---|
| Cobertura de artículos (113 artículos del reglamento) | 100% | 100% |
| Cobertura de patrones reales de artículos elegibles para código | 100% | 100% (44/44) |
| Artículos documentales/de política con cobertura OPA | 100% | 100% (22/22) |
| Obligaciones detectables en código con al menos una regla | 100% | 100% (77/77) |
| Reglas con metadatos de nivel de riesgo | 100% | 100% (522/522) |
| Reglas con metadatos de actor | 100% | 100% (522/522) |
| Reglas con orientación de remediación estructurada | 100% | 100% (522/522) |
| Dispersión en el número de reglas entre los 12 lenguajes soportados | ≤ 1 | 0 |
| Identificadores de regla duplicados | 0 | 0 |
| Reglas stub (sin patrón de código) por artículo | ≤ 1 | 0 |
| Umbrales de KPI L4 superados | 17/17 | 17/17 |
Lo que estos números no miden
Estas son métricas de cobertura, integridad y determinismo — muestran cuánto del reglamento está mapeado y con qué consistencia se comporta el pipeline entre lenguajes y versiones. No existe un KPI de precisión, exhaustividad o tasa de falsos positivos, porque eso requeriría un corpus de referencia etiquetado por humanos que no tenemos. La evidencia estructural contra los falsos positivos es la siguiente: cada fixture negativo por obligación debe producir cero hallazgos, y una aplicación de referencia de riesgo mínimo dedicada — con todas las reglas de alto riesgo, GPAI y riesgo limitado suprimidas — también debe producir cero hallazgos.
Scanara detecta brechas de cumplimiento a nivel de código y documentos. Para interpretaciones legales complejas, recomendamos complementar con asesoría legal especializada.