Method
How this works
A short account of what happens between your answers and your result, and where the judgement calls sit.
Four layers, kept apart
Most of the honesty in this tool comes from refusing to blur four different things together.
- Your answers. What you said, stored exactly as you said it.
- Facts. Your answers turned into typed values. Each one carries a state, either reported by you, derived from other facts, unknown, or conflicting with another answer.
- Rules. 53 written rules with 20 exceptions, each naming an article, a paragraph and a page of the Official Journal.
- Conclusions. What the rules produce from the facts, with the trace attached.
The result screen keeps these visible. A finding tells you which facts it used, what state each fact was in, and which provision it came from. Nothing is asserted without that.
Unknown is a value, not a gap
The evaluator uses three-valued logic. A test can come back true, false, or unknown, and unknown propagates through every operator. In a conjunction, one settled false makes the whole clause false, and a remaining unknown makes it unknown. In a disjunction, one settled true makes it true. Negating unknown gives unknown.
The practical effect is that saying you are not sure can never quietly become a no. It is not a convention that a contributor has to remember. It falls out of the arithmetic, and a test asserts the full truth table.
Not applicable is different from unknown
There is one distinction worth naming. A question you could not answer leaves its facts unknown. A question that never arose, because the condition that would make it relevant is settled false, leaves its facts settled as not applicable. If you tell the tool your system affects job applicants and nobody else, the questions about border control never open, and the border control entry is ruled out rather than reported as unresolved.
Exceptions have to be earned
Every carve-out in the Regulation is modelled as a rule in its own right, with its own conditions, its own source and its own evidence requirements. An exception only defeats the rule above it when its own test comes back true. Asserting that an exception applies is one fact. The conditions that would make it hold are separate facts, and the tool asks about them.
Where an exception might apply but cannot be settled, the parent conclusion becomes unsettled and the tool lists what you would need to show. It never treats a claimed exception as established.
Alternative outcomes are computed
Where a conclusion depends on an open fact, the tool re-runs that rule twice, once with the fact set to yes and once with it set to no, and reports what the conclusion becomes each way. Because the evaluator is a pure function, this is arithmetic rather than an estimate.
Effective dates are data, and some are unverified
Every rule carries the date it applies from, read from Article 113, together with a verification status. The rules were read from the Official Journal text published on 12 July 2024, which is the version held in this repository. That text cannot show later amendments.
Secondary sources report an amending regulation that changed the high-risk application dates. That report could not be checked against primary text from the environment this tool was built in, so it is attached to the affected dates as a flagged advisory and never substituted for the date in the Regulation as published. Where the two differ, the result shows both and tells you where to confirm. This is the most important open item on the tool. It is recorded in the known limitations.
Nothing is predicted
No language model is involved in reaching a conclusion. The engine is deterministic, and a result is a function of your answers, the rule set version, and the assessment date. The same inputs produce the same output every time, which is why a saved assessment can be recomputed later under the version that produced it. Current rule set: 2024-1689.2026-09-17.1.
Questions, not legal tests
There are 83 questions in total, and you see the ones your situation opens. None of them asks you to apply a legal category. The Annex III analysis, which is where most tools ask users to self-classify, is asked as three plain questions instead: who the system affects, what it does with them, and how much weight its output carries. The mapping from those answers to an Annex III entry lives in the rules, is versioned, and appears in the reasoning trace.
What review status means
Every rule in this version carries the status "requires qualified review" with no named reviewer. Nothing in the build promotes a rule to reviewed. That has to be done by a named person with a date, and a test rejects any rule claiming review without both. Treat every conclusion accordingly.
Competitor research
This tool was built to be easier to use than the existing checkers. Those checkers could not be inspected from the environment it was built in, because the network policy blocked them. Nothing in this repository describes their screens, questions or branches, and no comparison is made to behaviour that was not observed. The full record of what was attempted is in the repository.