---
title: "Verifications, retrospectives, insights, and parallel branching"
date: "2026-03-01"
---

## 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
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>
