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

# Verifications, retrospectives, insights, and parallel branching

## Verifications

Define verification checks that automatically validate run outputs. Browse the verification catalog to see all available checks, and review per-run results to catch regressions before merging.

Verifications run after each workflow completes and report pass/fail status, so you get a quality gate between "the agent finished" and "the code is ready."

## Retrospectives

After each run, an LLM-powered retro agent analyzes what happened and generates a structured summary — what worked, what didn't, timing breakdown, cost, and improvement suggestions. The retro prints inline in your terminal after the run completes, rendered as Markdown.

```bash theme={"languages":{"custom":["/languages/dot.json","/languages/fabro.json"]}}
fabro run start my-workflow.fabro
# ... run executes ...
# === Retro ===
# The run completed in 4m 32s across 6 stages...
```

Previously, understanding what happened in a run meant reading through raw logs. Now you get a concise post-mortem automatically.

## Insights SQL workbench

Query your run data directly with SQL to answer questions like "which workflows fail most?" or "what's the average cost per stage?" The web app includes a query editor, template library, and execution history.

## Parallel git branching

Workflow branches now execute in isolated git worktrees, so parallel stages can edit files simultaneously without conflicts. At fan-in nodes, changes merge cleanly back together.

Previously, parallel stages sharing a single worktree would overwrite each other's changes. Worktree isolation makes parallel execution reliable.

## More

<Accordion title="Fixes">
  * Fixed non-transient infrastructure failures (like invalid API keys) triggering retries instead of failing immediately
  * Fixed UTF-8 string slicing panics when truncating multi-byte characters in progress output
</Accordion>

<Accordion title="Improvements">
  * Interactive SVG graph rendering with animated nodes showing which stage is currently executing
  * Failure signatures and circuit breakers detect deterministic failure cycles (like the same syntax error on every retry) and short-circuit them, saving tokens and time
  * Stall watchdog detects hung pipeline handlers and reports them instead of silently blocking
  * Run data, sessions, and verifications stored in SQLite for fast querying and the Insights feature
  * Full light mode support with a theme toggle in the web app
  * File-based structured tracing across all crates controlled by `FABRO_LOG`
</Accordion>
