Local /review-bugbot always skips the same files on a large diff

Where does the bug appear (feature/product)?

Bugbot / Security Review Agent

Describe the Bug

/review-bugbot on a branch diff of 37 files reviewed 19 and skipped the same 18 files on two consecutive runs. The second run’s Custom Instructions said to review only the omitted files. The reviewed set and the skip list did not change.

The kept files were tracked source and OpenAPI. The skipped files were skill markdown, five untracked files, and one tracked source file, crates/cli/src/cli/mod.rs. Two test files in the same crate, with only a few changed lines, were reviewed. That CLI entry file was not.

The docs say /review-bugbot reviews every change relative to the base branch, including committed and uncommitted changes. They do not document a 19-file cap. The local reviewer reports “This review covered 19 of 37 changed files” and lists the omitted files, so the diff was computed. The cut happens before the model reads Custom Instructions, so asking it to review the leftovers while Diff stays branch changes rebuilds the same packet.

Steps to Reproduce

  1. In a git repo whose branch diff is larger than the local review budget (this case: 37 changed files, including untracked files), run /review-bugbot with Diff set to branch changes.
  2. Note the “covered 19 of 37” message and the omitted file list.
  3. Run /review-bugbot again with the same Diff and Custom Instructions that say to review only those omitted files.
  4. Compare the covered count and the omitted list. They match the first run.

Expected Behavior

A branch-changes review should cover every changed file, or a follow-up that names the omitted files should actually review those files. Custom Instructions should not be ignored by a file picker that runs before the model sees them. If there is a file budget, the docs should say so, and the follow-up the reviewer itself suggests (“Split a follow-up review across the omitted files”) should change which files are loaded.

Operating System

MacOS

Version Information

Version: 3.24.12
Commit: 37b865941ccb

For AI issues: which model did you use?

Bugbot subagent, model inherited from the parent agent (Grok 4.7)

Additional Information

Local review agent ids from the two runs: ccc2deee-d418-4ea3-a8f5-38e08494bc38 and a0101a71-b27c-4ee6-99a9-7087b6daa334. Both returned the identical omit list. The second prompt kept Diff: branch changes and added Custom Instructions listing the 18 omitted paths. OS: macOS.

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hey @cscs, thanks for the report and for including both run IDs.

What you’re seeing is how local review works today: it reviews the branch diff up to a fixed size limit, and the files that don’t fit are left out before the reviewer reads your instructions. Re-running with the same Diff setting rebuilds the same set of files, so Custom Instructions can’t change which files are loaded. I’ve flagged to the team that the follow-up the review suggests (“split a follow-up review across the omitted files”) currently has no way to work, and that the limit should be documented.

In the meantime, a few ways to get the skipped files reviewed:

  1. Run /review-bugbot again with Diff set to “uncommitted changes”. That reviews only your uncommitted and untracked files, which should cover the five untracked files on their own.
  2. For crates/cli/src/cli/mod.rs and the other committed files, ask the agent in a normal chat to review those specific files against the base branch. That doesn’t go through the size-limited review packet.
  3. For future large branches, running a review after each smaller chunk of work (with “uncommitted changes”) keeps each review under the limit.