Opus 4.6 quality regression: production automations broken by apparent model downgrade

Status Open
Maintainer reply None cached
Activity 15 comments · opened Mar 6, 2026

Summary

A production automation pipeline that has been running reliably for 2+ weeks with claude-opus-4-6 suddenly started producing incoherent results today (March 6, 2026). The output quality is consistent with Sonnet 3.5, not Opus 4.6.

What happened

We run a daily automation that invokes Claude Code programmatically (@anthropic-ai/claude-code SDK, model: "claude-opus-4-6") to generate structured content following a detailed skill specification. The skill contains:

  • Critical rules clearly marked at the top of the prompt (e.g., "NEVER do X in field Y")
  • Style references pointing to a file the agent must read and apply
  • Schema constraints the output must follow

For the past 2 weeks, the automation consistently:

  • Followed all critical rules
  • Read and applied the referenced style library
  • Produced output matching the expected schema and quality bar

Today, without any change to our code, prompts, or configuration, the agent:

  • Ignored critical rules that were clearly stated (produced output with values explicitly forbidden by "NEVER" rules)
  • Skipped reading a referenced style file entirely, generating output in a completely wrong format
  • The overall reasoning depth and instruction adherence dropped dramatically

This is not a subtle regression. The output went from "follows 15+ layered rules correctly" to "ignores top-level NEVER rules."

Broader pattern

This is not isolated to the automation. Across all sessions today (interactive and programmatic), the model feels like Sonnet 3.5 quality at best:

  • Shallow instruction following
  • Misses rules that require holding multiple constraints simultaneously
  • Reduced reasoning depth on multi-step tasks
  • When we ask the model to self-evaluate conversation quality, it consistently benchmarks at Sonnet 4 level maximum, not Opus 4.6

What we need from Anthropic

1. Transparency

If there has been an inference-time reduction, A/B test, model routing change, or any modification to what claude-opus-4-6 actually serves, this needs to be communicated. Paying for Opus and silently receiving a lower-capability model breaks trust.

2. Model version pinning

Production automations need continuity guarantees. We need the ability to pin to a specific model version (e.g., claude-opus-4-6-20260301) so that:

  • Upgrades don't silently break working pipelines
  • We can test new versions before adopting them
  • Rollbacks are possible when regressions occur

This is standard practice for any API serving production workloads (OpenAI offers dated model snapshots, for example).

3. Immediate resolution

If this is a routing bug (requests for Opus being served by a smaller model), it needs to be fixed immediately. Users paying for Max/Opus tier cannot have their production workloads silently degraded.

Environment

  • @anthropic-ai/claude-code SDK (latest)
  • model: "claude-opus-4-6"
  • permissionMode: "bypassPermissions"
  • Running on Linux VPS via cron
  • Same code, same prompts, same config as previous successful runs

Impact

Production content pipeline is effectively broken. Output requires full manual redo. The automation's entire value proposition depends on the model reliably following complex multi-layered instructions, which it did perfectly until today.

View original on GitHub ↗

14 Comments

CamdenSpehl · 5 months ago

Experiencing the same thing at the same time. It stopped following our merge instructions and claude.md file that outline how to merge things in SOC2 compliance, and clearly disregarded instructions

winderman66 · 5 months ago

Adding another data point from tonight (March 8, 2026, ~9:30 PM EST / ~2:30 AM UTC).

Using Claude Code with claude-opus-4-6 on a Max subscription. During this session, the model exhibited behavior inconsistent with
Opus-level reasoning:

  1. Nearly removed a working Docker collector from monitoring because it wrongly concluded Pi-hole runs natively instead of in Docker —

despite the infrastructure documentation (CLAUDE.md) clearly stating otherwise

  1. Proposed deferring trivial fixes "for later" with no valid justification when asked why
  2. Launched unnecessary sub-agents for tasks that could be done inline
  3. Took hasty actions without analyzing first — rushing to SSH into machines and run commands before understanding the problem

When confronted, the model self-corrected immediately each time, which suggests the underlying capability is there but the reasoning
effort/depth is reduced.

This matches the pattern others describe: the model works but cuts corners, skips analysis steps, and makes shallow decisions that
Opus-tier reasoning should catch. It feels like a lower effort/capability mode rather than a completely different model.

Environment:

  • Claude Code CLI, model: claude-opus-4-6
  • Max subscription
  • Platform: WSL2 (Windows/Linux)
  • Time: ~2:30 AM UTC

Would appreciate transparency from Anthropic on whether inference-time compute, quantization, or routing varies based on server load or
time of day.

alicercedigital · 5 months ago

For us, Claude just isn’t working anymore. It’s too dumb and keeps outputting awful code. These days we can’t use it because we end up losing time trying to make it work decently. The code quality has dropped a lot.

AlKuz · 5 months ago

The temporary fix I found for myself is to pin model version in settings.json - {"model": "claude-opus-4-5-20251101"}. Hope the issue will be resolved soon

arwoxb24 · 5 months ago

Adding structured data from a production system running 30+ days with strict monitoring and documented instruction-following metrics.

Our observations align with the reported window. March 6-8 showed measurable degradation specifically in multi-constraint instruction following: rules requiring 3 or more simultaneous conditions applied correctly dropped noticeably. The model began acknowledging rules accurately when queried directly, but not applying them during tool execution — a pattern distinct from earlier baseline behavior.

We audited our own system as the first hypothesis: same hooks, same CLAUDE.md, same command patterns, same environment. The hooks continued blocking what they always blocked. The degradation was in reasoning depth on complex instruction sets, not in our configuration.

The "invalid" label on this issue is not justified by the evidence. Whether the root cause is inference routing changes, quantization updates, or A/B testing of effort levels — production automations silently changing behavior IS a Claude Code platform problem, regardless of where in the stack it originates.

Relevant data point: v2.1.68 (released around March 4) changed Opus 4.6 to medium reasoning effort by default. That single change could account for the observed quality drop on multi-constraint tasks. If effort level was adjusted without user notification, that is a transparency gap.

Users on the Max Plan at $100/month building production systems on this platform need either version pinning, a changelog for inference-quality changes, or a status page. Silent degradation with no acknowledgment is the worst outcome.

arwoxb24 · 5 months ago

For a comprehensive technical analysis covering all documented failure patterns and concrete feature requests, see #34358 — filed with detailed root cause analysis, 5 documented violation patterns, and 7 specific asks to Anthropic.

arwoxb24 · 5 months ago

@AlKuz good call on the workaround — pinning to a known-good version is often the fastest way to stop the bleeding.

That said, it's essentially giving up on the newer model entirely. Curious if you actually saw consistent improvement after pinning, or just partial? We've been tracking instruction-following compliance with 30+ enforcement hooks and the degradation was pretty specifically in multi-constraint scenarios — so wondering if the older version holds up there too.

The real fix has to come from Anthropic's side. A version pin buys time but it's not sustainable — next release, same problem potentially.

fwiw we filed #34358 with concrete metrics and specific asks if you want to add your data there.

arwoxb24 · 5 months ago

This issue should not be labeled \invalid\.

The \invalid\ label signals that an issue is not a real problem, but the evidence here contradicts that:

  • 17 upvotes from independent users confirming the same regression window (March 6-8)
  • 4 separate reporters across different environments, subscription tiers, and use cases — all describing the same behavioral shift on the same dates
  • A concrete workaround exists (pinning to \claude-opus-4-5-20251101\, per @AlKuz) — workarounds don't exist for invalid issues, they exist for real regressions
  • The pattern is specific and technically coherent: multi-constraint instruction following degraded while single-constraint awareness remained intact. This is not vague dissatisfaction.

Cross-reference: #34358 documents the same degradation window with enforcement hook telemetry across 30+ automated sessions, 5 distinct violation patterns, and explicit feature requests (model version pinning, transparency on routing changes).

The \invalid\ label actively discourages community input on what is clearly a reproducible, widely-confirmed problem. At minimum, this deserves investigation rather than dismissal.

Please reconsider this classification.

AlKuz · 5 months ago

@arwoxb24 I didn't measure any metrics, but it started working better in general. It's missing skill calls, but I had this problem previously. The pinned version at least keeps context and works closely with the project context - the latest version just created new implementations instead of using existing code.

nanopink · 5 months ago

My issue covers what actually happens versus feelings, the reason of the "feeling" of the quality downgrade is because 4.6 at 1m context is actually 4.5.
Opus 4.6 at 1m context was silently rolled for a lot of people, it only became apparent when they started comparing their maximum context length, which might be why the drop in quality wasn't noticed outright.

vadamk · 5 months ago

Confirming the same behavior and seeing it on social media, where people are complaining that for the last week you've been working with a simpler model.

harry-m · 5 months ago

I have been experiencing this very consistently for the past several days in interactive sessions: tasks which previously were straightforwardly complete to a high standard are now containing inexplicably stupid errors. OP's comment is great and matches my experience.

JZiegener · 4 months ago

This seems to be happening very frequently. Fresh session, small context, CLAUDE.md instructions loaded but not followed, fabricated details presented as fact. And denial when confronted with evidence of it not reading instructions

tugrul512bit · 4 months ago

For last 3 days, I see Claude Opus 4.6 in cowork is forgetting things very fast and repeating same errors despite telling not to. Plus, the session limits are depleting 4-5 times faster. But until 3 days before, it was smart.

Showing cached comments. Read the full discussion on GitHub ↗