Skip to content

feat: context-aware reviewer selection for plan and code reviews#3

Merged
jcasimir merged 2 commits intomainfrom
feat/context-aware-reviewer-selection
Mar 23, 2026
Merged

feat: context-aware reviewer selection for plan and code reviews#3
jcasimir merged 2 commits intomainfrom
feat/context-aware-reviewer-selection

Conversation

@jcasimir
Copy link
Copy Markdown
Member

Summary

  • Plan review: Replace hardcoded all-8-reviewers-every-time with a selection guide that picks 3-5 based on plan content
  • Code review: Replace "run ALL discovered agents" with a selection guide based on file patterns, targeting 4-6 agents per review

Problem

Both review workflows run every single reviewer on every PR/plan regardless of relevance. A backend Rails refactor triggers the frontend races reviewer. A docs change triggers the performance oracle. This wastes tokens and dilutes the signal from actually relevant reviewers.

How It Works

Plan review — Classifies the plan and selects reviewers by domain:

  • Jason Fried always runs (scope/simplicity)
  • Avi for Rails, Steve for frontend, Greg for AI, etc.
  • Charles Eames for complex systems, Marty Cagan for features, etc.

Code review — Analyzes the PR diff file patterns to select reviewers:

  • code-simplicity always runs
  • app/models/ → architecture, performance, pattern-recognition
  • db/migrate/ → data-integrity, data-migration, deployment-verification
  • app/javascript/ → julik-frontend-races
  • etc.

Both announce which reviewers were selected and why before launching.

Test plan

  • Plan review skill loads and parses correctly
  • Code review skill loads and parses correctly
  • Manual test: run /workflow:2-plan-review on a backend plan, verify frontend/Sandy reviewers are skipped
  • Manual test: run /workflow:4-code-review on a backend PR, verify frontend reviewers are skipped

jcasimir and others added 2 commits March 23, 2026 16:48
Instead of running ALL reviewers on every PR/plan, analyze what
changed and select the 3-6 most relevant reviewers. This reduces
token waste, eliminates noise from irrelevant reviewers (e.g.,
frontend reviewers on backend-only PRs), and gives the relevant
voices more prominence in Abby's synthesis.

Plan review: Replace hardcoded all-8-reviewers with a selection
guide. Jason Fried always runs (scope). Others selected by plan
content (Avi for Rails, Greg for AI, Steve for frontend, etc.).

Code review: Replace "run ALL discovered agents" with a selection
guide based on file patterns. code-simplicity always runs. Others
matched by what files changed (migrations → data-integrity,
JS → julik-frontend-races, etc.). Target 4-6 agents per review.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
New code review agent focused on Sandi Metz's object-oriented
design principles: single responsibility, dependency injection,
tell-don't-ask, open/closed, and duck typing over type checking.

The existing pattern-recognition agent (also named "Sandi") is
a code scanner for duplication, naming, and anti-patterns. This
new agent is specifically about OO design quality — whether
classes have clear responsibilities, interfaces are narrow,
dependencies flow correctly, and code can survive future changes.

Added to the reviewer selection guide for Ruby model/service PRs.
Registered in plugin.json.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@jcasimir jcasimir merged commit fc47392 into main Mar 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant