Skip to main content

Module pipeline

Module pipeline 

Source
Expand description

The core pipeline: enumerate → annotate → classify → emit. Read-only.

Its bound list carries no write port, and that is the point: the pipeline cannot write, and a reader can see so without opening the body.

Invariants 1 and 2 run here, and no document is emitted when either fails. Invariant 1b runs earlier still, in rename_view::merge_raw. Those three are what protect a renderer from a bad parse, a dropped file or broken accounting.

Invariants 3 and 4 build a tree, so they write. They live in verify, which a caller runs when it wants them — only a consumer that reconstructs a tree is protected by them.

Structs§

PipelineOutput

Functions§

resolve_picked
Resolve the review picker’s answer: a base commit, plus whether uncommitted work is included (ADR 0017).
resolve_range
Resolve a revision-range spec into a review source.
run_grouped_pipeline
Core pipeline + the grouping stage (stages: enumerate, classify, group).
run_pipeline
Run the core pipeline (stages: enumerate, classify) over base..head.
verify
Invariants 3 and 4 over a pipeline’s output. This writes.