all projects
arbiter
fusion layer over two security vendors that do not talk to each other — ranks findings by blast radius in your estate, and no suppression happens without passing a deterministic check the model cannot argue with.
a security team buys two scanners and both are good, then somebody has to work the output and the output is two lists that cannot be added together. one knows what the code says, the other knows what is running, neither knows what the other knows, so both queues are ranked by a severity that ignores half the estate. a critical on a sandboxed batch job sorts above a medium on the internet-facing service holding customer backups.
what it does
- fusion — joins the two vendors’ findings on the keys that actually connect them, so a code flaw and the deployment it shipped in become one object with both halves visible.
- ranking by blast radius — orders the queue by what a finding can reach in this estate, not by cvss in the abstract.
- the guard — suppression is the only output nobody re-reads: a wrong ranking costs an afternoon, a wrong suppression is silent forever. so suppression is the only verdict that must pass a deterministic check: six rules that re-read the raw feeds field by field (every quote literal, every claim warranted, committed secrets never suppressed on reachability, and the guard runs its own join to refuse anything it cannot account for).
- honest autofix tiers — auto-pr, guided-pr, suggest-only. what is wired up today is suggest-only: nothing branches, nothing pushes, every tier renders to a pr comment, and the code says so in one place so no screenshot can imply an automation that does not exist.
a successful prompt injection against the model tier can change what the model says; it cannot change what the feeds contain. that asymmetry is the whole design.