Minctrl Docs
Guides

Configure gates and autonomy

How the resolver routes a step by risk tier — low auto-clears, medium goes to a judge panel, irreversible always parks for a human — and how reversibility and blast radius decide the tier.

Every step of a run is routed by the gate resolver. It answers one question per step: can this proceed on its own, or must a human sign it? The answer comes from the step's risk tier, which is a function of its blast radius and reversibility.

The three tiers

The resolver maps each step to one of three tiers and a resolver kind:

TierReversibility / blastResolverBehaviour
lowreversible, low blastaiAI auto-clears when confident
mediumreversible, medium blastpanela judge panel resolves by quorum
highirreversible or high blasthybridparks for a human (unless explicitly opted in)

A step's tier comes straight off the step (its blast and reversible fields). An irreversible step (reversible: false) is always treated as high — it parks — even if its blast radius is otherwise small.

What drives the tier

  • Reversibility — can the step be undone? A read, an enrichment, or a draft is reversible. Submitting a claim, sending a payment, filing a report, or executing an OFAC action is irreversible and routes to high.
  • Blast radius — how far does a wrong outcome reach? low (a single record), medium (a decision a panel should review), high (a customer-facing or regulatory action).

An unknown step defaults to the safest tier — high / irreversible → human — so a new step can never silently auto-clear.

SAFE by default

The resolver ships with a SAFE posture. Nothing auto-resolves unless autonomy is turned on, and irreversible steps never resolve via AI unless that is also explicitly enabled:

DialDefaultEffect
auto_resolvefalseMaster switch. Off ⇒ every gate parks for a human.
confidence_floor0.70low / medium gates need calibrated confidence ≥ this to clear.
irreversible_floor0.95irreversible gates need confidence ≥ this — and the opt-in below.
irreversible_allow_aifalseOff ⇒ irreversible gates always go to a human.
panel_quorum2agreeing judges needed at a medium gate.
safe_modeoffgate-all forces every gate to a human; halt stops the run.

auto_resolve maps to the auto_resolve flag on POST /process-runs. With it off, every step waits for you; with it on, the resolver's floors and the SAFE opt-ins above decide what clears.

Confidence is calibrated

Auto-proceed is gated on calibrated confidence, not a raw model score. "0.9 confident" means right ~90% of the time, so the floor maps to a real, defensible error rate. Two hard signals always override the tier and force a human:

  • an upstream agent failed, or flagged blocked / escalate;
  • an agent decision came back BLOCK or REJECT.

Inspect where the gates are

The governance-decorated canvas shows each step's tier and which step-ids are gates — read it before running:

curl -s "$API/process-templates/prior-auth/canvas" \
  -H "Authorization: Bearer $TOKEN"

The seated judge panel for a vertical's medium gates is inspectable too:

curl -s "$API/process-templates/prior-auth/judges" \
  -H "Authorization: Bearer $TOKEN"

The irreversible-allow-AI dial exists but defaults off for a reason: an irreversible step that clears on AI confidence alone has no human in the loop. Leave it off unless you have measured the calibration and accepted the residual error rate.

See the Governance model for how tiers, the judge panel, calibrated confidence, and the audit trail fit together.

On this page