Commit ad8036e
committed
CSHARP-5943: Expand /review-areas to full feature set and require verified findings
TL;DR
- /review-areas gains external-clone mode and an `--iterate` review→fix→converge loop (fixer agent commits fixes; stops on two clean passes, max-iterations, or no-op).
- Findings now carry two tags `[fix-in-code|external-action][blocking|substantive|nit]` and lead with a bold ≤8-word TL;DR headline; cap tightened to 5 per pass.
- Reviewers must reproduce every functional finding by running code before reporting it (and include the repro) — a local MongoDB is always available (`MONGODB_URI` or `mongodb://localhost`), and Atlas tests run when `ATLAS_SEARCH_TESTS_ENABLED` + `ATLAS_SEARCH_URI` are set.
- The skill hard-gates on the superpowers plugin (Step 0) and weaves its skills into run framing, fixing, and the convergence check.
- Breaking changes are now measured against the latest released NuGet (not `main`); `internal` is never breaking; unsupported-feature exception-type changes are not breaks (api-stability-reviewer + new AGENTS.md "Versioning conventions" section).
Details
This ports the MongoDB EF Core Provider's review skill feature set (plus its
not-yet-merged refinement PR) onto this repo's `/review-areas`, adapting every
EF-specific detail to the driver:
.claude/commands/review-areas.md (full rewrite)
- Three modes: local range, external PR, and external clone (diff a branch in
another clone while using this clone's reviewer briefs); `<diff-repo>` is
threaded through every git command and file path.
- `--iterate [--max-iterations N]`: alternates review and fix passes, narrowing
the file set to what the previous fixer touched, carrying forward `[nit]`
findings as do-not-re-emit notes, and gating the "clean" call on
`superpowers:verification-before-completion`.
- Two-tag finding model and a bold TL;DR headline on every finding; report is
saved to disk for PR/clone/iterate runs.
- Verification requirement: functional findings must be reproduced by running a
test or small repro first; repro blocks are included in the report and exempt
from the word cap. Driver-accurate harness wording (no auto-testcontainer; the
suite is not parallel-safe, so scope repros to the tightest `--filter`).
- `[external-action]` is reserved for what genuinely can't run here — CSFLE/QE
(`CRYPT_SHARED_LIB_PATH`, KMS vars), external auth mechanisms, and Atlas only
when `ATLAS_SEARCH_*` is unset.
- Keeps this repo's reviewer table and cross-cutters (security, api-stability,
async); fixer guidance uses driver conventions (BOMs, ConfigureAwait(false),
CancellationToken/OperationContext CSOT, paired sync/async, the
netstandard2.1/net472/net6.0 target set).
.claude/agents/api-stability-reviewer.md
- `internal` is never breaking regardless of `InternalsVisibleTo` / Moq proxy
visibility; baseline is the latest released `v<major>.<minor>.<patch>` tag via
`gh release list` (not stale local tags); exception-type changes for
unsupported features are not breaks.
AGENTS.md
- New "Versioning conventions" section documenting the same baseline and
not-a-break rules.1 parent 22940c4 commit ad8036e
3 files changed
Lines changed: 286 additions & 54 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
13 | 21 | | |
14 | 22 | | |
15 | 23 | | |
| |||
18 | 26 | | |
19 | 27 | | |
20 | 28 | | |
21 | | - | |
| 29 | + | |
22 | 30 | | |
23 | 31 | | |
24 | 32 | | |
| |||
35 | 43 | | |
36 | 44 | | |
37 | 45 | | |
38 | | - | |
| 46 | + | |
39 | 47 | | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
0 commit comments