Expand description
Core engine: git io, diff parsing, byte-exact apply, shape classes, invariants, and plan-document assembly.
The canonical enumeration (git diff -U0 --no-renames) processes every file
with no exclusions (ADR 0005); the rename-detected view (-M) only annotates
it (ADR 0003). Repo config tunes classification hints and can never remove
anything from enumeration (ADR 0012).
Re-exports§
pub use grouping::GroupingOptions;pub use pipeline::PipelineOutput;pub use pipeline::resolve_range;pub use pipeline::run_grouped_pipeline;pub use pipeline::run_pipeline;pub use review_session::ReviewSession;
Modules§
- apply
- Byte-exact hunk applier.
- config
- Configuration, split by ownership (ADR 0012, amended by ADR 0018-era split):
- document
- Assemble the frozen-schema plan document from the engine’s outputs.
- gitio
- Git subprocess runner. Bytes in, bytes out — UTF-8 decoding happens only at display boundaries (ADR 0002). Plumbing commands only (ADR 0011).
- grouping
- The grouping stage: an LLM merges and labels shape-class ids — never hunks
(ADR 0001) — behind the
LlmBackendabstraction (ADR 0016), with a coverage audit that back-fills anything the model drops (invariant 5) and a content-hash cache that pins groupings (ADR 0009). - invariants
- Invariants 1–4 (spec/invariants.md). All of them run before any document is emitted; every one caught a real bug during prototype validation.
- lang
- Language abstraction (ADR 0015).
- llm
- LLM backend abstraction (ADR 0016; an engine module since ADR 0018).
- model
- Data model for the canonical diff view.
- ordering
- The ordering stage: foundation-first arrangement of the focus section.
- parse
- Parser for
git diff-tree -r -U0 --no-renamespatch output. - paths
- Path extraction from
diff --git a/X b/Yheaders. - pipeline
- End-to-end core pipeline: enumerate → annotate → classify → verify → emit.
- plan
- Domain policy over a plan document: the decisions, without the I/O.
- ports
- Ports: the traits the engine’s business logic owns and adapters implement.
- rename_
view - The rename-detected classification view (ADR 0003).
- review_
session - An open review: the engine-owned session over one plan document.
- review_
state - The review-state sidecar store (ADR 0013, spec/persistence.md).
- schema
- The frozen JSON contract for differential reading plans.
- shape
- Shape classes and hunk digests.
- store
- Filesystem adapters: the mirror of
gitiofor everything that is not git. - tree
- Build the final tree from applied hunks, via plumbing against a temporary index (ADR 0011). No checkout, no touching the user’s index or worktree.
- worktree
- Tree snapshots of uncommitted state (ADR 0017): the index and the worktree as plain tree oids, so the rest of the pipeline — diff-tree enumeration, the invariants, blob reads — runs on them unchanged.
Enums§
Type Aliases§
- FsReview
Session - The production session: a review over the on-disk sidecar. Renderers name this one concrete type rather than carrying a generic parameter for a choice they never make.