Docs

Evaluation order

The steps the PDP goes through on every call, from the first possible DENY to ALLOW.

The PDP starts from deny. A call is allowed only if it passes every step, and the first step that fails sets the DENY reason.

Delegation comes first because without it nothing else matters: the agent acts for nobody. It was already checked at the token exchange, and it is checked again here. A token lives up to 5 minutes, and a delegation revoked within that window must cut off the next call.

The three relations go to OpenFGA in a single BatchCheck call, with the current time as context to evaluate expirations. The resource step exists only when the tool mapping names a concrete resource.

After the relations, the PDP evaluates the conditions attached to the agent · server · tool edge of this call. Conditions of other edges do not apply.

Before it returns an ALLOW, the PDP reads the effective permission revision again. If it changed during evaluation, the decision is discarded. A publication made in the middle of the call does not produce an ALLOW based on half of the old policy.