The Operational Cost of Failing Closed
Most AI systems fail open — if governance breaks, agents keep running ungoverned. Fail-closed means if governance cannot evaluate, the action is denied.
- Failing closed is the correct default and it is not free — it trades availability for safety.
- The cost lands as blocked legitimate work when the policy path is unavailable.
- Making it practical is an engineering problem: scope, cache, and a path back.
The Default Nobody Questions
When software systems encounter an error, they have two choices: continue operating without the failed component, or stop. The industry default for most web applications is to continue. If the authentication cache goes down, serve the request anyway and log a warning. If the rate limiter is unreachable, let the traffic through and alert the ops team. This is fail-open behavior, and for most web applications, it is the right choice. Uptime matters. Users expect availability. A brief gap in rate limiting is less costly than downtime.
AI agents are not web applications. When an agent’s governance layer fails, continuing to operate means the agent is executing actions with no policy evaluation, no audit trail, no kill switch enforcement, and no approval workflow. Every tool call during that window is ungoverned. The agent is operating outside the boundaries the organization defined for it.
For autonomous systems that execute real-world actions — processing payments, modifying databases, sending emails, calling external APIs — fail-open is not a calculated tradeoff. It is an uncontrolled risk.
Fail-Open vs. Fail-Closed
The distinction is straightforward but its implications are often underestimated.
Fail-open: If the governance system cannot evaluate an action, the action is allowed to proceed. The assumption is that most actions are legitimate, and the cost of blocking a legitimate action outweighs the cost of allowing an unauthorized one.
Fail-closed: If the governance system cannot evaluate an action, the action is denied. The assumption is that an ungoverned action is an unacceptable risk, and the cost of allowing an unauthorized action outweighs the cost of temporarily blocking a legitimate one.
In network security, this distinction was settled long ago. Firewalls fail closed. If the firewall cannot evaluate a packet, the packet is dropped. The reasoning is simple: the cost of allowing a malicious packet through is greater than the cost of dropping a benign one. The same logic applies to AI agent governance.
Why It Matters for Autonomous Agents
The fail-open risk is amplified for autonomous agents because of three properties that distinguish them from human-driven systems.
Speed of Execution
An agent can make dozens of tool calls per second. A human operator encountering a governance outage might make one or two requests before noticing something is wrong. An agent encountering the same outage will continue executing at full speed. In the time it takes a monitoring system to detect the governance failure and page an engineer, an ungoverned agent can execute hundreds of actions.
The blast radius of a five-minute governance outage with a human-driven system is a handful of unchecked requests. The blast radius with an autonomous agent is potentially thousands.
No Self-Awareness of Governance State
Human users can recognize when a system is behaving unexpectedly. “The approval workflow did not trigger — something might be wrong.” Agents have no such awareness. An agent does not know whether its tool calls are being evaluated against policy. It submits a tool call, receives a response, and continues. If the governance layer silently fails open, the agent has no way to detect that it is operating outside its intended boundaries.
This is why governance failure detection must be external to the agent. The agent cannot be trusted to report its own governance state because it has no visibility into it.
Irreversibility of Actions
Many actions that agents take are difficult or impossible to reverse. A processed payment, a sent email, a deleted record, a deployed infrastructure change — these have real-world consequences that persist after the governance system recovers. Fail-open during a governance outage does not create a temporary gap in coverage. It creates permanent consequences that the organization must deal with long after the outage is resolved.
GovernorAI by SentinelLayer’s Fail-Closed Architecture
GovernorAI is designed fail-closed at every layer. The architecture ensures that if any component in the governance path is unavailable, the default behavior is deny.
Stateless Gateway Design
The GovernorAI gateway is a stateless evaluation engine. It receives a tool call request, evaluates it against cached policy, and returns a decision. The gateway does not maintain session state across requests — session state is reconstructed from the event store on each evaluation.
Being stateless has a specific benefit for fail-closed behavior: the gateway can restart at any time without losing governance state. There is no warm-up period where the gateway is running but not yet enforcing policy. Either the gateway has cached policies and is evaluating, or it does not have them and is denying.
Policy Cache with TTL
The gateway caches policies locally to avoid a network round-trip on every evaluation. The cache has a time-to-live (TTL) that determines how long a cached policy is considered valid. If the cache expires and the gateway cannot reach the Control Plane to refresh it, the gateway enters a degraded state.
In degraded state, the behavior depends on the policy configuration. The default is fail-closed: deny all actions until the cache is refreshed. Operators can configure specific policies with a grace period that extends the TTL during Control Plane outages, but this is an explicit opt-in, not the default. The organization must consciously decide which policies are safe to evaluate with stale data and for how long.
Circuit Breakers
GovernorAI implements circuit breakers at the gateway level. If the gateway detects that policy evaluation is producing errors — malformed policies, evaluation timeouts, internal exceptions — it trips the circuit breaker and begins denying all requests for the affected scope.
The circuit breaker has three states:
- Closed: Normal operation. Policies are evaluating correctly. Tool calls are processed normally.
- Open: The circuit breaker has tripped. All tool calls for the affected scope are denied. The gateway periodically attempts a health check against the Control Plane.
- Half-open: The health check succeeded. The gateway allows a small number of tool calls through to verify that policy evaluation is functioning correctly. If they succeed, the circuit breaker closes. If they fail, it opens again.
This pattern prevents cascading failures. If the policy engine has a bug that causes evaluation errors, the circuit breaker stops the bleeding by denying all requests rather than allowing agents to operate with potentially corrupted policy evaluation.
The Operational Cost of Fail-Closed
Fail-closed is not free. It means that governance system outages directly impact agent availability. When the governance layer is down, agents stop. This creates operational pressure to keep the governance system highly available, which is the right incentive structure.
The alternative — a governance system where outages do not impact agent availability because agents continue operating ungoverned — creates the wrong incentive. It means governance reliability is not a priority because failures are invisible. The governance system becomes the component that nobody notices when it is down, which means nobody notices when agents are running without policy enforcement.
Fail-closed makes governance failures visible. It turns them into incidents that get the same attention as any other infrastructure outage. This visibility is what drives investment in governance reliability.
Making Fail-Closed Practical
The objection to fail-closed is always the same: “We cannot afford to have our agents stop because of a governance outage.” This objection is valid, and GovernorAI addresses it through architectural choices that minimize the probability and blast radius of governance outages.
Local evaluation. Policy evaluation happens in the gateway process, not over a network call. The only dependency in the hot path is the local policy cache. This eliminates the most common source of outages: network failures between the agent and a remote governance service.
Horizontal scaling. The gateway is stateless and scales horizontally. Multiple gateway instances can run behind a load balancer. A single gateway failure does not affect other instances.
Cache resilience. The policy cache survives gateway restarts. On startup, the gateway loads its most recent policy snapshot before accepting requests. There is no window where the gateway is running but has no policies.
Scoped degradation. When a failure occurs, it affects only the scope of the failed component. A policy evaluation error for one agent does not trigger fail-closed for all agents. The circuit breaker is scoped to the specific failure domain.
The Principle
Fail-closed is not a feature. It is a design principle that flows through every architectural decision. It answers a fundamental question: when the governance system itself fails, what happens to the agents it governs?
If the answer is “they keep running,” then governance is advisory. It is a best-effort service that agents can operate without. If the answer is “they stop,” then governance is mandatory. It is infrastructure that agents depend on, the same way they depend on the network, the compute, and the model.
GovernorAI is designed around the second answer. Governance is not optional. It is not advisory. It is the mandatory execution boundary through which all agent actions must pass. And when that boundary cannot function, the safe state is stop.
This post argues a position. It is not a capability page: nothing here states what is shipped, configuration-dependent or planned. For that, the claim gate on Resources is the authority, and each platform page names what it does not do.