A backlog of four thousand unreviewed alerts has the same shape as any other untrusted output at scale: some component is producing verdicts, and nobody can state how often those verdicts are wrong. The security industry has begun sorting this family of problems under the label AIOps for Security. Viewed from a DataOps angle, the fit is almost uncomfortable, because the failure modes involved — unmeasured prevalence, pooled metrics, absent test suites, silent drift — are precisely the ones data engineers debug for a living. This piece walks the diagnosis through to the fix, in the order a data team would actually run it.
The symptom: an auto-closer nobody can vouch for
The presenting complaint is usually simple. A vendor tool, or an internal model, starts closing alerts by itself, and the first question — how often is it wrong, per category — has no answer. There is no labelled export to check. There is no category split. There may be no recorded definition of what “correct” even means for a closure. In data-platform terms, a write path went live with no validation layer and no observability, and the consumers of its output are the analysts downstream. Nobody would accept this from a revenue-reporting pipeline. The alert queue deserves the same standard, not a lower one, because its failures are the ones nobody ever sees: a wrongly closed case generates no error message, no failed job, no pager. It just quietly removes a signal that might have mattered during the next intrusion.
AIOps for Security root cause one: prevalence poisons precision
Attacks are rare, and rarity does unspeakable things to error rates. Consider a platform digesting about fifty million events daily in which roughly fifty are genuinely hostile. Let its false-alarm rate run at one bogus flag per ten thousand healthy events, and junk outnumbers true signals more than a hundred to one: precision lands near 0.9%, and the queue costs about 112 reviews for every real catch. Compress the error rate a hundredfold, to one in a million, and precision jumps to 47.4% — same attackers, same platform, a completely different working day. The lesson generalises far beyond this one example. Any reported accuracy number is meaningless until the prevalence of the test population travels with it, which is why demo datasets curated for balance flatter every model they touch. Prevalence is not a footnote to an evaluation; it is the evaluation.
Second root cause: pooled scores conceal category failures
Aggregate dashboards commit the same sin as any blended data-quality score. A deployment reporting 1% overall misses has, on at least one documented occasion, been carrying 42.3% misses in its cloud-IAM category behind a soothing 9.1% phishing rate. Weighted averages bury exactly the categories where the model is failing, and those categories are rarely random — they are the ones with the sparsest training data or the fastest-moving behaviour. The cure is the one validation engineers already practice: break results out per category, monthly, and refuse any report that will not split. If a vendor cannot produce a per-category miss table from their own tenants’ telemetry, that refusal is itself the finding.
AIOps for Security fix pattern: gates graded by consequence
Mature teams govern machine verdicts with an autonomy ladder, one rung per action class:
- Recommend only. The model proposes, humans confirm. Entry evidence: a floor of 200 labelled alerts with a minimum of 30 genuine ones inside.
- Close unaided. Permitted once misses are bounded at 2% or better across 150-plus true positives, with canaries deployed, a blind holdout evaluated and reopening reduced to one click.
- Act reversibly. Suspending a session or quarantining a mailbox needs a false-action bound of 1% or less over 300-plus verdicts where action was available, plus rehearsed rollback and a volume throttle.
- Act irreversibly. Not granted. Deletion and permanent locks stay human-owned regardless of scores.
The structure is nothing new to this audience. It is a promotion pipeline: each tier has acceptance criteria, and a model that cannot meet the criteria for one tier stays at the tier below, exactly as a dataset that fails its test suite does not advance to production. Notice also what the ladder refuses to do — it never lets a single badge cover every action a product can take. Closure of phishing and suspension of accounts are different promotions with different evidence bars.
Prove it with sample sizes, not impressions
“We reviewed a sample and saw no errors” is the sentence that precedes most automation accidents. The rule of three supplies the honest version: n clean cases bound the true error rate near 3/n. Forty spotless reviews still admit a 7.5% miss rate. Upside down, the same arithmetic sizes the evidence properly — establishing a miss bound of 2% after one observed miss requires 236 samples; after two misses, 313. Anyone who has argued about flaky test suites will recognise the shape: rare events need large denominators, and small denominators manufacture false confidence. A published triage study shows what this looks like when done seriously. Researchers blind-labelled 1,240 emails, found 71 true ones inside, and watched the agent discard 2 of them. The raw miss rate, 2.8%, looks acceptable; the 95% upper bound, near 8.6%, fails a 2% gate decisively. Precision told a split story too — 99.8% on the items closed, 86% on the verdicts that called something a true positive — while 93.5% of analyst workload came out as genuinely removable. All those figures can be true at once. Only the bounds decide the gate.
Keep the verdict pipeline honest after go-live
Measurement discipline cannot end when the gate is passed, because attacker behaviour drifts and the model drifts behind it. Three practices carry the load. First, canaries: fifty planted cases per quarter, seeded where nobody can cherry-pick around them, with a standing rule that three or more being closed wrongly means the autonomy tier gets withdrawn until the numbers recover. Second, blind labelling on a schedule, so the labels stay independent of the model’s own opinions — a ranker allowed to shape its own training data will curate itself into looking perfect. Third, drift monitors on the inputs and the outputs, watched with the same seriousness as pipeline freshness. Teams that already track data tests and pipeline health will find expectation-based validation transfers directly, while the wider practice lives in pipeline monitoring fundamentals and, for the ML-specific side, deterministic feature pipelines.
Where this lands on a roadmap
Start unglamorous: export dispositions with labels, split categories, and publish the base rate alongside every accuracy claim. Move next to shadow scoring with blind labels, then to gates per action class, then to canaries and drift. Budget nothing for dashboards until the exports exist; a dashboard over missing data is just theatre with better fonts. Most teams find the exports alone change the conversation, because the first honest per-category table usually ends the argument about whether the tool was ready.
The security-industry version of this discipline, with worked examples and the full autonomy criteria, is documented as AIOps for Security in the Ops Atlas. Data teams are unusually well prepared for it — the tools of the trade are the same ones that keep a warehouse trustworthy, pointed this time at a queue that decides which alerts never get read.