Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

vidi

vidi records who — and which AI model — authored each piece of a codebase, lets humans vouch for the pieces they have reviewed, and gates a merge on review coverage.

The problem

A pull-request approval says “Ada approved this change.” It does not say which functions Ada actually read, and it stays true forever — including after the code is rewritten. It ages into a claim nothing checks.

vidi records something narrower and more useful: which small pieces of code a person read, and exactly what those pieces looked like at the time. When the code changes, the claim stops applying — automatically, for that piece only.

How it works, in four steps

  1. Units. vidi splits every file into small nameable pieces — one function, one struct, one paragraph — instead of treating a file as one reviewable thing.
  2. Fingerprints. Each unit gets a content hash. Same bytes, same fingerprint; one character different, a completely different fingerprint.
  3. Vouches. Reviewing a unit records a signed statement: who you are, which unit, its fingerprint, and your verdict.
  4. Expiry. Later, vidi recomputes each fingerprint and compares. Match means the review still describes the code. Different means it does not.

Nobody has to remember to invalidate anything. A review expires exactly when the code it described stops existing.

Where to go

Get started — install it, review one unit, watch a review go stale, and turn on the gate. Start here if you have never run vidi.

Guides — task-shaped instructions: blocking merges in CI, reviewing a pull request, revoking an approval, sharing reviews across a team.

Reference — every command, every policy key, every unit state, and the on-disk file formats. The CLI reference is generated from the binary, so it cannot drift from the code.

Explanation — why it is built this way: units rather than files, fingerprints as an expiry mechanism, the parser-free core, and why review records never cause merge conflicts.

Contributing — building vidi itself.

Status

These docs are being written. Pages that do not exist yet are listed in the sidebar so the gaps are visible rather than silently missing; each carries a note about what belongs in it.