Interactive demo
I built this synthetic example to make a review decision visible. Compare regions, inspect the backlog, and change an alert threshold. Watch how a lower workload can also mean missed findings.
All data on this page is synthetic and deterministic (seed 42). No real firm, branch, representative, or alert.
Company wide totals for the latest month. They look steady, and that is the problem: totals average away West region (acquired), the region that just onboarded onto the program. Filter to it to see what the roll up hides.
A seeded numpy script draws individual alerts for each region and month, each one carrying a rule type, a false-positive label, and an age in the review queue, then computes every aggregate from those draws: the rule mix, the survivorship funnel from alert to substantiated finding, the aging buckets measured against a 15 day review SLA, and branch exam coverage against the Rule 3110 cycle. The West region is engineered to onboard at month 7 with roughly 5.8 alerts per representative against a firm norm near 3.2, a 94 percent false-positive rate, and an exam backlog, then converge as rep and account data gets mapped, because that trajectory is what a supervision integration dashboard exists to make visible.
The tuning panel draws a population of 6,000 synthetic accounts once, each with a turnover ratio and a hidden flag for whether the underlying activity was genuinely problematic, and every threshold on the slider is a recount over that same population, so the tradeoff curve is structural rather than hand-drawn.
The result is exported to a static JSON that this page reads at build time and renders with the hand-rolled, dependency-free SVG charts this site uses everywhere, so the charts are in the HTML before any script runs. In a real deployment the same shapes come from the surveillance platform and the branch exam tracker, computed upstream on a schedule, not in the browser or in the BI tool. Everything here is synthetic and models no real firm, branch, or representative.
View the raw data that drives this page.
Every threshold in that tuning panel trades false positives against findings you would rather have caught. Deciding where to set that line is the work I want to be doing.