> ## Documentation Index
> Fetch the complete documentation index at: https://docs.frayme.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Decisions

> The verdict a workflow produces, the evidence it carries, the analyst-override semantics, and the export.

A **decision** is the immutable record of how a case was handled. Each one carries:

* the **verdict** (`approve | review | deny | block | reported_to_regulator`)
* a **risk score** (0–100) and the band it falls into
* the **rationale** (which rule fired / which AI synthesised / which officer reviewed)
* the **evidence pack** (vendor payloads, AI outputs, analyst notes)
* a **decision\_id** that links back to the originating `workflow_run_id`

## Decision states

```mermaid theme={null}
stateDiagram-v2
  [*] --> pending
  pending --> auto_approved: rule allows
  pending --> in_review: queued
  pending --> in_review: deterministic fail → analyst confirm
  in_review --> approved
  in_review --> denied
  in_review --> escalated: senior reviewer
  escalated --> approved
  escalated --> denied
  escalated --> reported_to_regulator: critical
  reported_to_regulator --> [*]
  approved --> [*]
  denied --> [*]
  auto_approved --> [*]
```

The earlier "hard-fail → auto\_denied" path has been replaced: deterministic fails (sanctions hit, hard reject labels) still pre-set the recommendation, but the case always enters `in_review` so an analyst confirms before any block lands. This keeps the platform aligned with the alert-first posture used in production.

## Verdict semantics

| Verdict                 | Meaning                                                    | Reversible?                        |
| ----------------------- | ---------------------------------------------------------- | ---------------------------------- |
| `auto_approved`         | Cleared by rules + AI without human touch.                 | Yes — within audit window.         |
| `approved`              | Human-reviewed and cleared.                                | Yes.                               |
| `denied`                | Human-reviewed and rejected.                               | Requires senior override + reason. |
| `escalated`             | Sent to a higher reviewer tier (senior compliance, legal). | No — only via escalation chain.    |
| `reported_to_regulator` | Filed with the relevant Financial Intelligence Unit.       | No — regulatory submission.        |

## Risk band

A 0–100 score mapped into four bands. The bands themselves are fixed; the **ranges** and the **routing per band** are tunable per client — compliance can move the Medium/High boundary, or wire Medium straight to manual review for one client and auto-approve for another, without touching the graph.

| Band         | Routing (default)      |
| ------------ | ---------------------- |
| **Low**      | Auto-approve           |
| **Medium**   | Issuer / client policy |
| **High**     | Manual review          |
| **Critical** | Reject or report       |

See [Risk scoring → thresholds](/concepts/risk-scoring) for the per-client override contract.

## Evidence pack

Every decision links to a **bundle** of the underlying signals. The Decision Console renders them inline:

* Vendor payloads (identity suite, AML lists, on-chain analytics, registry validations, banking-rail counterpart resolution).
* AI synthesis outputs.
* Manual review responses (analyst decision, rationale, list actions).
* Custom API calls (issuer provisioning, vendor admin overrides, regulator submissions).

## Analyst overrides

Analysts in the queue can override a verdict subject to two guards:

<AccordionGroup>
  <Accordion title="Required reason">
    Every override writes a structured reason against the reason catalogue. A free-text justification is also required.
  </Accordion>

  <Accordion title="Role gating">
    Reversing a `denied` decision requires the senior reviewer role. Reversing `reported_to_regulator` is impossible — the regulator copy is canonical.
  </Accordion>
</AccordionGroup>

## Export to PDF

Any decision can be exported as a self-contained PDF from the Decision Console:

* The full case envelope (subject, channel, payload).
* The vendor evidence packs (one section per provider type).
* The AI outputs (model, reasoning, structured fields).
* The audit trail entries scoped to this decision.
* The final verdict + reasoning + reviewer signature.

The PDF is hash-stamped against the [audit trail](/concepts/audit-trail) so a regulator can independently verify it wasn't edited after export.
