Severity
Severity is a property of a finding. Blast radius is a property of the agent. They answer different questions and Gate keeps them separate.
The levels
- Name
critical- Type
- fix today
- Description
A credential has already leaked, or the agent can execute arbitrary code, move money, or reach a credential store. Consequences are immediate and frequently irreversible.
- Name
high- Type
- fix this week
- Description
The agent can destroy state, administer systems, read secrets, or reach beyond its workspace. Requires a mistake or an injected instruction to become an incident, which is not a high bar.
- Name
medium- Type
- decide deliberately
- Description
A meaningful weakening of a boundary: an unpinned package, auto-approved tools, a remote server with no visible authentication. Usually a decision somebody should make on purpose rather than by accident.
- Name
low- Type
- worth knowing
- Description
Process weaknesses rather than exposures. Configuration nobody reviews, for example.
- Name
info- Type
- context
- Description
Facts worth surfacing that are not problems.
How a rule picks one
Each rule declares a default severity: the one shown by gate rules and on the
rule's documentation page. An individual finding may differ when the surrounding
configuration justifies it, and Gate says why in the message:
- GATE014 is
highwhen the production-looking server also exposes write, delete or execute capabilities, andmediumwhen it is read-only. - GATE019 is
highwhen the auto-approval covers execution, andmediumotherwise. - GATE009 is
criticalwhen the filesystem grant is the machine root rather than merely outside the repository.
Rules never adjust severity based on how many findings there already are, or on how much you seem to care. The rating for a given fact is the same in every repository.
Severity is not blast radius
A repository can have zero findings and a MODERATE blast radius: nothing is
wrong, and the agent can still do a lot. A repository can have one critical
finding and a HIGH blast radius, because the one problem is a leaked token on
an otherwise tightly-scoped agent.
Severity tells you what to fix. Blast radius tells you how exposed you are. You need both, and conflating them is how security dashboards become decorative.
Choosing a threshold
gate scan --severity high # the default: fail on high and critical
high is the right starting point. It catches everything that requires action
without failing builds over process notes.
Move to medium once the existing findings are dealt with. Going below high
means a critical finding will not fail your build, which is almost never what
anybody wants. If the goal is to adopt Gate on a repository with existing
findings, use a baseline instead of lowering the bar.