AI.Agent.Review.Decomposer (fnord v0.9.29)
View SourceTriage agent for code reviews. Estimates change complexity, partitions large changes into right-sized review units, fans out scoped Reviewers in parallel, optionally runs an integration review for cross-component seams, and synthesizes a deduplicated final report.
Sits between the reviewer_tool and AI.Agent.Review.Reviewer. Small changes
(< 3 scrum points) pass through to a single Reviewer with full scope. Larger
changes are decomposed so each Reviewer sees only a focused subset of files
and concerns.
Pipeline
- Estimate - read the diff, estimate scrum points (1-13), identify files to exclude from review (vendored, generated, lockfiles).
- Partition (>= 3 points) - split into ~3-point review units, each described as a self-contained briefing string for a scoped Reviewer.
- Fan-out - delegate to N scoped Reviewers (and an integration reviewer for >= 5 points), all running in parallel.
- Synthesize - deduplicate findings across review units, merge findings with the same root cause, produce a final severity-grouped report.
Steps 2-4 are injected dynamically via get_next_steps/2 based on the
estimate result. This is the first composite agent to use dynamic step
generation.
Summary
Functions
Build the small-reviewer scope using only the original scope and estimate.
Functions
Build the small-reviewer scope using only the original scope and estimate.
Legacy/test helper: extracts :constraints from the estimate if present
(tests may inject them), otherwise defaults to an empty list. Production
flow uses build_small_scope/3 with constraints from composite state.