Skip to content

How a review runs

Seven stages take a diff to posted comments. Each one below says what it drops or rewrites and what the run reports when it does, because a review that quietly skipped part of a change reads exactly like one that found nothing in it.

diff → select and batch files → review each batch → triage → anchor → render → publish

Select

Select drops ignored, binary, deleted, and generated files. A review that quietly skipped half the diff would otherwise look identical to a clean one, so the exclusions are reported, with one deliberate exception and two places to look. Files not reviewed lists them all except the ones matching your ignore list, because go mod vendor is hundreds of files and those patterns are your own. An ignored file is still not silent where it matters: a changed .go file an analyzer would otherwise have read is named under Analyzed less than it ran over, and a change where everything was set aside opens by saying that nothing in it was reviewed.

Batch

Batch groups files under a token budget, attaching whole file contents where they fit and a window around the changes where they do not.

Review

Review runs batches concurrently. One failed batch is logged and skipped; every batch failing is an error rather than a "no issues found".

Triage

Triage merges duplicates across batches, drops unsupported findings, and writes the walkthrough. It may reword and merge, but it cannot invent findings for files nobody reported on.

Anchor

Anchor snaps near-miss line numbers onto real changed lines and drops findings that cannot be placed, so comments land where they belong. An analyzer finding dropped here is counted and published rather than discarded quietly, under Analyzed less than it ran over.

Render

Render turns surviving findings into comments: a title, the rationale, and a suggestion where one applies as a suggestion block the forge can commit. The walkthrough and the file table become the summary comment.

Publish

Publish posts them. On a re-run it posts only what is new, edits what moved, and resolves the threads whose findings the change has since fixed; review.incremental and review.resolve_superseded govern both. A run that reviewed only part of the diff still publishes, and says so: the summary names the batches that failed and counts only the files it reviewed, because a partial review that reads like a complete one is the failure mode this pipeline is built to avoid.