Performs multi-agent, multi-model code review of F# compiler PRs across 19 dimensions including type checking, IL emission, binary compatibility, and IDE performance. Dispatches parallel assessment agents per dimension, consolidates with cross-model agreement scoring, and filters false positives. Invoke when reviewing compiler changes, requesting expert feedback, or performing pre-merge quality checks.
Performs multi-agent, multi-model code review of F# compiler PRs across 19 dimensions including type checking, IL emission, binary compatibility, and IDE performance. Dispatches parallel assessment agents per dimension, consolidates with cross-model agreement scoring, and filters false positives. Invoke when reviewing compiler changes, requesting expert feedback, or performing pre-merge quality checks.
Reviewing Compiler PRs
Full dimension definitions and CHECK rules live in the expert-reviewer agent.
When to Invoke
PR touches src/Compiler/ — invoke the expert-reviewer agent
PR touches src/FSharp.Core/ — focus on FSharp.Core Stability, API Surface, Backward Compat, XML Docs
PR touches vsintegration/ or LanguageServer/ — focus on IDE Responsiveness, Concurrency, Memory
FSharp.Core Stability, Backward Compat, XML Docs, RFC Process
vsintegration/
IDE Responsiveness, Memory Footprint, Cross-Platform
eng/, setup/, build scripts
Build Infrastructure, Cross-Platform
Multi-Model Dispatch
Dispatch one agent per selected dimension. For high-confidence reviews, assess each dimension with multiple models (claude-opus-4.6, gemini-3-pro-preview, gpt-5.2-codex). Minimum viable council = 2 models.
Claims coverage — before dimension assessment, cross-reference every claim in the PR description and linked issues against actual code changes. Flag orphan claims (stated but not implemented), orphan changes (code changed but not mentioned), and partial implementations.
Assessment gates — apply before flagging:
Understand execution context before judging (test harness ≠ compiler runtime)
Classify as regression, improvement, or unclear — only regressions are findings
Require a concrete failing scenario — no hypotheticals
"Correct convention" for the context in use → discard, not a finding
"Unexplained" ≠ "wrong" — missing rationale in a commit message is a doc gap, not a defect