engine/review.rs:79-510 is one ~430-line function: sanitization, secrets, security, rules, three index scans, context, LLM, then four post-filters. The deterministic half cannot be tested without an LLM. The three index scanners repeat a ~25-line preamble (index_scanner.rs:116-160, 210-250, 313+), and there are two ignore-pattern matchers (should_skip_file vs glob::Pattern) which causes review-time vs index-time drift.
Direction. One module: 'run all deterministic checks on a diff' → findings + context text; one shared chunk-iteration preamble; one ignore matcher. Depends on the project-root seam.
From the 2026-10 architecture review (deepening candidates, develop @ 147dd75).
engine/review.rs:79-510is one ~430-line function: sanitization, secrets, security, rules, three index scans, context, LLM, then four post-filters. The deterministic half cannot be tested without an LLM. The three index scanners repeat a ~25-line preamble (index_scanner.rs:116-160, 210-250, 313+), and there are two ignore-pattern matchers (should_skip_filevsglob::Pattern) which causes review-time vs index-time drift.Direction. One module: 'run all deterministic checks on a diff' → findings + context text; one shared chunk-iteration preamble; one ignore matcher. Depends on the project-root seam.
From the 2026-10 architecture review (deepening candidates, develop @ 147dd75).