The gate is the node that turns a classified PR into a verdict. It is a fuse, not another AI: glob matching and rule evaluation, the same verdict for the same input every time. No language model weighs in, which is what makes the outcome something you can predict and audit rather than something you have to trust.
The detail that makes it sound is where the policy comes from. Interlock always reads interlock.yml from the PR's base branch, never from the PR itself, so a change cannot edit the very rules that judge it. On top of that, interlock.yml is a Tier 2 path by default: the gate cannot merge its own off-switch. This is the frozen node of the system, the rule set placed outside the reach of the loop it constrains, precisely because it is the rule the loop would most be tempted to loosen.
It fails like a safety device rather than a network call. An invalid policy stops the machine loudly instead of failing open, because a guard with a broken sensor should halt, not wave everything through. The same policy drives two surfaces: a GitHub Action that enforces in CI, and a CLI that runs the identical check locally before a PR exists.