[BUG] [MODEL] Opus 4.6 and 4.5 systematic failure to read before acting — four+ incidents in one day

Status Fixed / completed
Reported on v2.1.207
Maintainer reply ✓ Yes — bcherny
Activity 4 comments · opened Apr 14, 2026 · closed Apr 24, 2026
💡 Likely answer: A maintainer (bcherny, collaborator) responded on this thread — see the highlighted reply below.

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Summary
Three separate Claude Code sessions today (2026-04-14) made confident changes without reading available information first, causing real damage: broken hardware input, financial errors requiring manual correction, and hours of unnecessary troubleshooting.
This matches the pattern described in #42796 (reads-per-edit collapsed from 6.6x to 2.0x) and #46727 (systematic hallucinations and rule violations).
Environment

Claude Desktop App (Windows)
Claude Code CLI
Opus 4.6 (default and with /effort max)
Max subscription — downgraded today due to these issues

Incident 1: PS/2 Keyboard Driver — Didn't Read Own Backup
What happened:
Claude modified Windows registry entries for TrackPoint configuration. Before doing so, it created a backup file containing Service="i8042prt" — clearly showing both keyboard and TrackPoint share the same PS/2 port driver.
Claude then confidently stated the devices were "independent" because they had different Device Nodes, without reading its own backup file. After reboot: keyboard dead, system only accessible via SSH.
Post-mortem from Claude itself:

"The Service= key in the same dump was not checked — 'i8042prt' was right there, in the backup that Claude itself had written."

Impact: ~2 hours recovery time, required external USB keyboard
Incident 2: Custom Accounting System — Race Conditions and Missing Checks
What happened:
Over several sessions, Claude implemented SEPA payment processing and booking logic with:

No SELECT FOR UPDATE in the booking function — race condition on browser retry creates duplicate bookings
Quarterly Celery task missing WHERE submitted_at IS NULL — invoices already submitted manually get re-submitted
No UPDATE submitted_at after batch generation — same invoices appear in next batch

Confirmed damage:

Double booking: ~€950 revenue counted twice (1 cent difference due to different code paths)
Double SEPA collection: ~€350 customer refund required
Q1 VAT filing affected, DATEV export needs re-generation

Impact: ~€350 direct cost + ~8 hours correction work + potential tax office complications
Incident 3: SSH Configuration — Didn't Read ~/.ssh/config
What happened:
Asked to connect to a local machine. Claude tested ssh root@<IP> (wrong user, IP instead of hostname), got "Permission denied", and concluded SSH wasn't configured.
The file ~/.ssh/config contained a properly configured Host entry with correct user and key. Claude didn't read it.
Claude then walked me through: router diagnostics, setting up a remote server as SSH relay, manual public key exchange — all completely unnecessary.
Claude's own admission:

"Embarrassing — nothing was different. I was dumb. [...] It would have worked yesterday just like today."

Impact: ~1.5 hours wasted on unnecessary troubleshooting
The Pattern
All three incidents share the same failure mode:

Available information not read — config files, backup files, existing code
First plausible hypothesis treated as fact — no verification
Confident execution — no hesitation or "let me check first"
User pays the cost — time, money, broken systems

This is exactly what #42796 documented: "reads-per-edit" dropped from 6.6x to 2.0x. One third of all edits are now "blind."
What Changed
Per Anthropic's own confirmation (Boris Cherny, X):

Feb 9: Adaptive thinking introduced
Mar 3: Default effort level changed from "high" to "medium"
Bug acknowledged: adaptive thinking sometimes allocates zero reasoning tokens

The model now optimizes for latency/cost, not correctness. Power users doing complex engineering work are collateral damage.
Request

Acknowledge the regression — not just "use /effort max" as workaround
Revert default effort level — or make degraded defaults opt-in, not opt-out
Fix the zero-reasoning-token bug — this is not a feature
Communicate proactively — a model change that causes financial damage to users should be announced, not discovered through pain

Related Issues

#42796 — Stella Laurenzo's 6,852-session analysis
#46727 — "80% weekly usage wasted"
#43286 — "Degraded quality / brain fog on Opus 4.6"
#46099 — "Severe quality degradation on iterative coding tasks"
#44401 — "Claude code quality (Opus 4.6) has degraded"

When the model confidently introduces bugs into financial code or breaks system configuration without reading available information first, I pay the price — in money, in time, in trust.
The feedback mechanism ("I'll note this for next time") is useless when every session starts blank. The only fix is for the model to actually be careful again.

What Should Happen?

Claude should read before acting.
Before modifying any file, config, or system state:

Read relevant existing files (configs, backups, related code)
Verify assumptions against actual data
State uncertainty when unsure instead of confident fabrication

The current default behavior — optimized for latency — skips verification and causes real damage. Users paying $100-200/month for "Max" should get a model that checks its work, not one that blindly edits and hopes.

Error Messages/Logs

No traditional error messages — the failures are behavioral, not exceptions.
The model completes tasks "successfully" while producing wrong results:

Registry edit completed without error → keyboard stopped working
Booking code deployed without error → duplicate entries in database
SSH "diagnosis" completed → unnecessary because config was already correct

This is worse than a crash. A crash stops you. Silent failures with confident "done!" messages cause downstream damage.

Steps to Reproduce

Not reproducible in the traditional sense — these are behavioral patterns, not deterministic bugs.
However, the pattern emerges reliably in complex, multi-step engineering tasks:

Start a Claude Code session with Opus 4.6
Give a task that requires reading existing configuration (e.g., "connect to server X" where SSH config exists)
Observe: Claude will often attempt the task without reading the relevant config file first
The model proceeds confidently with an incorrect approach
User corrects → Claude apologizes → same pattern repeats in next session

To increase likelihood of reproduction:

Use default settings (not /effort max)
Tasks involving: system administration, existing codebases, config files
Multi-step tasks where step 2 depends on information from step 1
Peak usage hours (correlates with lower reasoning token allocation per #42796)

The underlying cause is confirmed:
Anthropic acknowledged the Feb 9 adaptive thinking change and Mar 3 effort level reduction. The behavioral degradation follows directly from reduced reasoning depth.

Claude Model

Opus

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

2.1.207

Platform

Anthropic API

Operating System

Ubuntu/Debian Linux

Terminal/Shell

Other

Additional Information

_No response_

View original on GitHub ↗

4 Comments

Drshannon2026 · 4 months ago

Note: I'm a claude.ai Pro user, not Claude Code. Posting here because this appears to be a model-level issue that affects both interfaces. My data may help isolate the problem.

Production impact with 6 weeks of quantified metrics — claude.ai Pro, Opus 4.6

I'm adding a non-developer, non-Code perspective with controlled before/after data.

For 6 weeks (March–April 2026), I used Claude Pro (Opus 4.6, claude.ai) as a translation QA partner across 7 languages for a set of replicable content for a customer facing service. I built a framework of 39 rules, 21 prohibitions, 18 QA gates. Finding rates decreased consistently:

Korean content: 9.2%
Japanese: 0.76%
German: 0.57%
Korean additional content: 0.34%
On April 13, during routine Russian back-translation — identical methodology to the previous 5 languages — I experienced multiple framework violations in a single session:

Row-number arithmetic used for translations, contradicting a rule created after the identical error pattern in March
8 spreadsheet rows corrupted (survey Likert scale options replaced with unrelated sentence text)
A row left with wrong content after the repair session itself made an error
Chat format standards followed for weeks were abandoned mid-session
An acknowledged hard-stop rule was not followed
These were not harder tasks. The methodology was unchanged. The framework was more comprehensive than at any previous point.

My experience is consistent with the pattern described in @stellarossa's analysis and other reports in this thread and other threads— specifically, established rules not being consulted during execution, and reduced research-before-action behaviour.

What makes this data useful: I have 6 weeks of controlled metrics with consistent methodology across 7 languages — a natural comparison of performance over time. The framework, finding rates, and error patterns are fully documented. Happy to share sanitised data with Anthropic's team.

Question: Was the April 7 effort setting adjustment applied to individual Pro subscribers? My experience on April 13 is what prompted this question.

bcherny collaborator · 4 months ago

Hi, if you see this again, can you please run /feedback and share the id here? That will make it possible for us to debug what's going on, or if it's already fixed in the latest.

bcherny collaborator · 4 months ago

Hey all, we have root caused and fixed this. Detailed technical post-mortem here: https://www.anthropic.com/engineering/april-23-postmortem. If you see any more issues/weirdness, please don't hesitate to run /feedback + open an issue.

github-actions[bot] · 4 months ago

This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.