Coverage Benchmark · FD-2026.07
Fraud Coverage, Computed — Not Claimed
Every percentage on this page is calculated in your browser from the
registry printed below it. Nothing is typed. The denominator is stated, out-of-scope items
are excluded and named, and the gaps are published before anyone asks. Open DevTools and
run FDCOV.verify() to recompute the whole table yourself.
Coverage · two numbers, one vocabulary
—
Demonstrated
Typologies, payment rails and regulatory events. Computed in-browser via
FDCOV.verify().110/110
Proven
Every case agrees. FDRISK and FDPOLICY were independently reimplemented in Python with Decimal arithmetic — from the published specification, not transcribed from the JavaScript — and every case executes twice. 21 composite scores, 22 dispositions, every rule firing and three invariants agree across both implementations. Mutation-tested: injected faults in a weight, a dimension, the Reg E authorisation fork and a statutory block were each caught.
Why two numbers. Demonstrated is what runs in
the demo today. Proven is what an evaluation harness has verified against an
independently reimplemented oracle — a higher bar than a demo lane, because it
tests the logic rather than the rendering. Across the CAIBots suite only Credit
Underwriting currently publishes a Proven figure. The other three show an em-dash,
which is the honest answer until a harness exists. Both numbers use the same
vocabulary so the four estates can be compared without translating between them.
Coverage by Stage
Computed at runtime · weights typologies .40 · rails .30 · regulatory .30
100% means every enumerated item, not every possible fraud. The denominator is ours: 20 typologies, 10 payment rails and 13 regulatory events that a fraud decision layer can exercise. It is a defensible enumeration and it is not an industry standard — a different institution would draw it differently, and should. Two items sit outside it by design and are named in the register below: trade-based money laundering and sanctions-evasion networks belong to the KYC/AML estate, not to fraud.
What 100% does not mean: that no fraud escapes, that detection is perfect, or that any accuracy figure has been established. No precision or recall has been measured against a labelled production book. Coverage answers “which decisions can this system make?” — not “how often is it right?” Those are different questions and conflating them is the overclaim this page exists to avoid.
What 100% does not mean: that no fraud escapes, that detection is perfect, or that any accuracy figure has been established. No precision or recall has been measured against a labelled production book. Coverage answers “which decisions can this system make?” — not “how often is it right?” Those are different questions and conflating them is the overclaim this page exists to avoid.
Scoring Oracle — all ten shipped lanes
FDRISK v1.0 · score = round(txn×.20 + ident×.25 + behav×.20 + net×.20 + reg×.15)
Verification procedure. Open
fd-demo,
log in, open DevTools and run FDRISK.verify(). It recomputes all ten
composites from the published weights and returns true. The weights are
readable at FDRISK.W and each lane's evidence basis at
SCENARIOS[lane].dims._evidence. Severity is not score-derived
— cnp ships 84/P0 while check ships 85/P1,
because severity follows typology and irrevocability, as in real fraud operations.Typology Coverage
Weight .40 · out-of-scope rows excluded from the denominator
Payment Rail Coverage
Weight .30 · reversibility differs per rail and drives the playbook
Regulatory Event Coverage
Weight .30 · obligation, not risk — these shape what you must do, not how bad it is
Gap Register
Published before it is asked for
What This Benchmark Is Not
Scope limits, stated plainly
It is not a model performance claim. No precision, recall or confusion matrix
is published here, because none has been established against a labelled production book.
Confidence percentages in the demo are illustrative framing, not measured accuracy.
It is not a production integration claim. Actimize, BioCatch and SWIFT GPI appear as orchestration references. Live connectors are pilot-scope configuration.
It is not a latency guarantee. Demo runtimes are compressed for demonstration; projected production windows are stated separately in the demo itself.
The denominator is ours. It is a defensible enumeration of fraud typologies, rails and regulatory events — not an industry standard. A different institution would draw it differently, and should.
It is not a production integration claim. Actimize, BioCatch and SWIFT GPI appear as orchestration references. Live connectors are pilot-scope configuration.
It is not a latency guarantee. Demo runtimes are compressed for demonstration; projected production windows are stated separately in the demo itself.
The denominator is ours. It is a defensible enumeration of fraud typologies, rails and regulatory events — not an industry standard. A different institution would draw it differently, and should.
