Flows
A flow is a post-evaluation reaction DAG (directed acyclic graph) that defines what happens after a boundary evaluation completes. Flows dispatch actions like webhooks, notifications, or log entries based on whether the verdict was ASSERT or DEFER.
Flows Tab
Section titled “Flows Tab”Inside a project, the Flows tab lists all configured flows. Each flow shows its name, the boundary it is attached to, its status, and a summary of its node count.
Building a Flow
Section titled “Building a Flow”Click New Flow to open the flow builder. A flow consists of nodes connected in a DAG:
| Node Type | Purpose |
|---|---|
| Trigger | The entry point. Fires when an evaluation completes on the associated boundary. |
| Evidence | Gathers additional data from a connector after the evaluation. |
| Boundary | The evaluation node. Exactly one per flow. |
| Condition | Routes execution based on the verdict (ASSERT or DEFER) or evidence values. |
| Assert Action | An action dispatched when conditions are met (e.g., send a webhook, log an event). |
| Defer Action | An action dispatched when conditions are not met (e.g., notify an approver, block a process). |
Every flow has exactly one boundary node. The flow does not re-evaluate the boundary; it reacts to the evaluation that already happened.
Flow Execution
Section titled “Flow Execution”After an evaluation completes, VB-OS checks whether any flows are attached to that boundary. If so, it walks the flow DAG:
- The trigger fires
- Evidence nodes gather any additional data needed
- The boundary node carries the evaluation result
- Condition nodes route based on the verdict or evidence values
- Action nodes dispatch their configured actions (webhooks, notifications, logs)
Flow execution results appear on the dashboard under Flow Executions, showing whether each dispatch succeeded or failed.
Evaluation vs. Action Execution
Section titled “Evaluation vs. Action Execution”It is important to understand that evaluation and action execution are distinct:
- Evaluation produces a verdict (ASSERT or DEFER) based on evidence and boundary rules
- Flow actions dispatch downstream behavior based on that verdict
An ASSERT verdict means the evaluation passed its governance rules. It does not mean that a downstream webhook, notification, or external action executed successfully. Similarly, a DEFER verdict means the evaluation did not satisfy its governance rules. It does not mean an external system failed.
The evaluation is deterministic and recorded. The flow actions that follow are operational and may succeed or fail independently.
What’s Next
Section titled “What’s Next”- Evaluations : the evaluations that trigger flows
- Connectors : evidence nodes can pull data from connectors
- For the developer guide on building flows, see Build a Governed Flow
