Status: AVAILABLE (contract; internal gate). See status labels. A policy inspects a proposed action and returns a decision with reason codes.

Architecture contract

Input is a PolicyCheckV1 (principal, action, resources, data classes, external effects, spend). Output is a PolicyDecisionV1 with a precedence: hard deny, hard allow, soft, cognitive, fail-closed. Hard deterministic rules run before any probabilistic risk. A policy may raise friction; it may not weaken a hard deny. Timeouts and missing calibration resolve to ASK.

Current implementation

The gate is on main inside the work runtime and is not exposed as a plug-in point.

Availability

Developer relevance

Return reason codes people can read.