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

# Compliance

> How Flowker supports regulatory compliance — validation before the ledger write, and a step-level record of every workflow execution.

Flowker helps compliance teams answer two questions: was the transaction validated before it reached the ledger, and what did each step of that validation do?

## Validation before the ledger

***

Flowker runs a workflow's nodes by following its graph connections, and it has no join node that waits for parallel branches to converge. To place checks before the node that writes to the ledger, build a linear validation chain, and:

* The ledger write runs only after each earlier check in that chain returns a result
* To stop before the write, configure no outgoing edge whose `sourceHandle` matches the conditional's failing outcome. If the failing branch must run notification or audit nodes, ensure that branch has no path to the ledger-write node. Flowker follows only the edge whose `sourceHandle` matches the evaluated outcome; if no edge matches, that branch ends.
* You do not depend on post-write validation and the corrections it forces
* The execution record shows the sequence: the checks that ran, their verdicts, then the write

This is a preventive design. You place the checks ahead of the write, and Flowker preserves that order in the linear chain. Do not use a fan-out and later merge as a synchronization barrier: a node after the merge can run before another branch finishes.

## Execution records

***

Each workflow execution keeps a step-level record of what ran. For every step, the record holds the step name and number, when it ran, its status, how long it took, the output it returned, and the error message if it failed.

* Use [List executions](/en/reference/flowker/list-executions) to find executions. Filter by workflow and by status, then page through the results with a cursor.
* Use [Get execution results](/en/reference/flowker/get-execution-results) to read an execution's step details after it reaches a terminal status (`completed` or `failed`). It returns an in-progress error for `pending` or `running` executions.

## What's next

***

<CardGroup cols={2}>
  <Card title="Security" icon="shield" href="/en/flowker/security">
    Learn about Flowker's authentication model, encryption, and resilience features.
  </Card>

  <Card title="Executions API" icon="play" href="/en/reference/flowker/list-executions">
    Query execution history and step-level results through the API.
  </Card>
</CardGroup>
