Skip to content

feat(review): exclude catch-all rules when files are specified#352

Merged
nhorton merged 1 commit intomainfrom
feat/exclude-catch-all-rules-when-files-specified
Apr 9, 2026
Merged

feat(review): exclude catch-all rules when files are specified#352
nhorton merged 1 commit intomainfrom
feat/exclude-catch-all-rules-when-files-specified

Conversation

@nhorton
Copy link
Copy Markdown
Contributor

@nhorton nhorton commented Apr 9, 2026

Summary

  • When callers narrow review scope to a specific file set (run_review(files=...) or get_configured_reviews(only_rules_matching_files=...)), rules whose include patterns are all pure wildcards (*, **, **/*, */**) are now dropped. Rules with any literal path segment are kept. Catch-all rules remain in effect when scope comes from git diff.
  • Added REVIEW-REQ-006.6.6 and REVIEW-REQ-008.3.3/.3.4 spec'ing this behavior; new tests carry traceability annotations.
  • Updated doc/architecture.md description of get_configured_reviews to mention DeepSchema-generated rules and the new catch-all filtering.

Test plan

  • uv run pytest tests/unit/review/test_mcp.py (36 passed, 100% coverage on review/mcp.py)
  • make lint clean
  • Full DeepWork review cycle clean

🤖 Generated with Claude Code

When callers narrow review scope to a specific file set (via run_review
files= or get_configured_reviews only_rules_matching_files=), rules
whose include patterns are all pure wildcards (*, **, **/*, */**) are
now dropped — they rarely reflect caller intent and produce noisy
results. Rules with any literal path segment are kept. Catch-all rules
remain in effect when scope comes from git diff.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@nhorton nhorton enabled auto-merge April 9, 2026 00:18
@nhorton nhorton added this pull request to the merge queue Apr 9, 2026
Merged via the queue into main with commit 67e0f5a Apr 9, 2026
5 checks passed
@nhorton nhorton deleted the feat/exclude-catch-all-rules-when-files-specified branch April 9, 2026 00:21
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