Hoe Scanara's regels worden gebouwd en geverifieerd
Elke regel is verankerd in het exacte artikel, lid en punt van de verordening — en doorloopt zes verificatielagen voordat ze wordt uitgeleverd.
Gemeten op 4 augustus 2026 — opnieuw geverifieerd vóór elke release.
Hoe regels worden gebouwd
Scanara's regelpipeline verwerkt de volledige tekst van Verordening (EU) 2024/1689 en verankert elke regel in het exacte artikel, lid en punt. Eén mappingbestand classificeert elke verplichting in de verordening als een van drie dingen: detecteerbaar in code, detecteerbaar in een beleidsdocument, of niet machinaal detecteerbaar en overgelaten aan een begeleide assessment.
De release-poortenladder
Elke release van de regelset doorloopt zes poorten achter elkaar, van brede structurele controles tot een exacte vergelijking met bekend goed resultaat. Een release wordt pas uitgeleverd als elke poort is gepasseerd.
L2.5
Catalogusconsistentie
Controleert of de artikelcatalogus, de verplichtingenmapping en eventuele overlap-onderdrukkingsregels onderling gesynchroniseerd blijven.
L1/L2
Corpusstructuur
Negen structurele controles op het regelcorpus: artikeldekking, geen dubbele patronen, volledige metadata, geldige enum-waarden, unieke regel-ID's en limieten voor stub-regels.
L3
Fixtures per verplichting
Voor elke in code detecteerbare verplichting moet een positieve fixture minstens één bevinding opleveren en een negatieve fixture nul — in elke ondersteunde taal.
L4
KPI-drempels
17 drempels voor dekking, volledigheid en determinisme — zie de tabel hieronder.
L5
Golden snapshots
Een exacte vergelijking van elke bevinding met een vastgelegd verwacht resultaat, over 25 benchmarkapplicaties, vastgezet op een specifieke regelsetversie.
R1
Remediation-poort
Bevestigt dat een onbewerkte fixture een niet-voldane bevinding oplevert, en dat dezelfde fixture met de aanbevolen remediation toegepast als voldaan wordt herkend.
Hoe Scanara documentatie beoordeelt met OPA en Rego
Scanara's compliance-controles op documentniveau draaien op Open Policy Agent (OPA). OPA toetst technische documentatie aan verplichtingen uit de Verordening (EU) 2024/1689. Dit volgt dezelfde policy-as-code-aanpak die in het hele OPA-ecosysteem wordt gebruikt: declaratieve regels, deterministische evaluatie, elke keer een controleerbaar resultaat. Dit loopt parallel aan Scanara's broncodescan. Codescanning controleert wat de code doet. OPA controleert wat de documentatie zegt.
Elk documentatiebestand doorloopt dezelfde stappen. Eerst parst Scanara het bestand en detecteert de taal (8 EU-talen worden ondersteund). Daarna normaliseert Scanara het bestand tot een gestructureerd invoerdocument: secties, koppen, geëxtraheerde tekst. OPA toetst dit gestructureerde document aan een gecompileerde Rego-policybundel.
Scanara genereert deze regels vanuit een canonieke koppeling tussen de artikeltekst van de Verordening (EU) 2024/1689 en machinaal controleerbare vereisten. Geen enkele regel wordt per repository met de hand geschreven. Elke regel is herleidbaar tot een specifiek artikel, lid en punt. De evaluatie levert één bevinding per verplichting op: voldaan, ontbrekend of gedeeltelijk. Deze bevindingen komen samen met de broncodebevindingen in het compliance-rapport terecht.
Het onderstaande voorbeeld toont het patroon. Het is vereenvoudigd voor openbare documentatie. De productieregelset omvat tientallen verplichtingscategorieën, plus meertalige detectie, ernstweging en documentoverschrijdende consistentiecontroles die hier niet worden getoond.
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 satisfiedSamen detecteren beide engines automatisch 66 artikelen van de Verordening (EU) 2024/1689: 44 code-detecteerbaar en 22 documentniveau via OPA. De dekking omvat alle 8 EU-talen. Bevindingen van beide engines komen rechtstreeks in het gegenereerde compliance-dossier terecht. Het bewijstraject is herleidbaar tot een daadwerkelijk scanresultaat, niet tot een zelf gerapporteerde checklist.
Huidige gemeten waarden
| Metriek | Drempel | Huidig |
|---|---|---|
| Artikeldekking (113 artikelen van de verordening) | 100% | 100% |
| Echte-patroondekking van code-geschikte artikelen | 100% | 100% (44/44) |
| Document-/beleidsartikelen met OPA-dekking | 100% | 100% (22/22) |
| In code detecteerbare verplichtingen met minstens één regel | 100% | 100% (77/77) |
| Regels met risiconiveau-metadata | 100% | 100% (522/522) |
| Regels met actor-metadata | 100% | 100% (522/522) |
| Regels met gestructureerde remediation-richtlijnen | 100% | 100% (522/522) |
| Spreiding in regelaantal over de 12 ondersteunde talen | ≤ 1 | 0 |
| Dubbele regel-ID's | 0 | 0 |
| Stub-regels (zonder codepatroon) per artikel | ≤ 1 | 0 |
| Geslaagde L4 KPI-drempels | 17/17 | 17/17 |
Wat deze cijfers niet meten
Dit zijn dekkings-, volledigheids- en determinisme-metrieken — ze laten zien hoeveel van de verordening in kaart is gebracht en hoe consistent de pipeline zich gedraagt over talen en releases heen. Er is geen precisie-, recall- of fout-positief-percentage-KPI, omdat dat een door mensen gelabeld ground-truth-corpus zou vereisen dat we niet hebben. Het structurele bewijs tegen fout-positieven is dit: elke negatieve fixture per verplichting moet nul bevindingen opleveren, en een speciale applicatie met minimaal risico — waarbij elke hoog-risico-, GPAI- en beperkt-risicoregel is onderdrukt — moet eveneens nul bevindingen opleveren.
Scanara detecteert compliance-lacunes op code- en documentniveau. Voor complexe juridische interpretaties raden wij aan om samen te werken met gespecialiseerd juridisch advies.