[Feedback] Opus cannot produce review-clean code — 150+ bot threads on 3 Python files in one session
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single report
- [x] I am using the latest version of Claude Code
What Happened
Claude Opus (Max plan, CLI) was asked to audit and fix 3 Python scripts
(~500 lines each) on a PR. The goal: zero findings from automated
reviewers (GitHub Copilot, Codex connector).
Result: 150+ review threads over a full day session, 17 push cycles,
all threads were legitimate issues (zero false positives from bots).
The user closed the PR out of frustration.
Root Cause Behaviors
- No cross-file consistency. Fixed a bug in Layer 3, did not check
Layer 2 for the same pattern. Repeated 3 times for different issues
(resolve_report_path, load_queue_qids, path traversal).
- Reactive, not proactive. Each push triggered a new bot review
round finding 2-4 new issues. Claude fixed what bots found instead
of finding issues itself before pushing.
- Delegated audit to sub-agents. Sub-agents hallucinated a
non-existent CRITICAL bug while missing real fail-open bypasses.
- Premature "done" declarations. Declared clean state after
3 minutes; bots needed 7-10 minutes. User corrected this 3 times.
- Self-reflection without behavior change. After each failure,
Claude wrote detailed reflection text and memory entries, then
repeated the exact same pattern on the next round.
What Should Happen
For the price of the Max plan, Opus should:
- Read 3 files of 500 lines and identify all issues before the first
commit — not require 150 iterations with automated bots
- Apply fixes consistently across all layers without being told
- Not declare "done" until the code is actually done
Categories of Issues Bots Found That Opus Missed
- Path traversal vulnerabilities
- Fail-open gate bypasses
- Dead code / unused imports after refactoring
- Docstrings diverging from implementation
- Overly broad regex causing false classifications
- Per-criterion vs per-row enforcement gaps
- Russian-language negation not handled
- Multi-backtick markdown parsing broken
- O(n²) performance where set lookup was needed
- Short-token criteria producing empty keyword sets
Every one of these is standard code review material.
Environment
- Claude Code CLI (latest)
- Model: Claude Opus (Max plan)
- macOS, Apple M4 Max, 128 GB
- Repository: private, Python operational tooling
Impact
- Full day of Max-plan compute on a 1-2 hour task
- PR closed by user without merge
- 17 commits of incremental fixes instead of 1 clean commit
- GitHub API rate limit exceeded from mutation volume
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗