Saltar al contenido

El downgrade silencioso de Claude Code

· 11 min de lectura · Leer en English
Compartir:

TL;DR

Hay datos reales — no solo quejas en Reddit — de que la calidad de Claude ha caído. AMD analizó 6.852 sesiones y encontró un 73% menos de razonamiento profundo. El código fuente de Claude Code confirma un sistema de fallback automático de Opus a Sonnet cuando los servidores están saturados — y hasta hace poco, ni te avisaba. Mientras tanto, la factura sube.


La sensación que todos tenemos

Si usas Claude a diario para trabajar, probablemente hayas notado algo en las últimas semanas: respuestas más superficiales, más errores tontos, bucles que antes no existían. Y una pregunta incómoda: ¿estoy pagando tokens de Opus y recibiendo un Haiku disfrazado?

No eres el único. Un post en el subreddit de Anthropic acumuló 1.060 upvotes con exactamente esta queja. Otro titulado “Claude Is Dead” llegó a 841. La directora de IA de AMD dejó de usar Claude Code después de meses de frustración documentada.

Pero lo interesante no es la queja — es que esta vez hay datos.


Los números que Anthropic no quiere que veas

Stella Laurenzo, directora de IA de AMD, no se limitó a quejarse en Twitter. Analizó 6.852 sesiones de Claude Code, 235.000 tool calls y 18.000 bloques de razonamiento. Sus hallazgos:

MétricaAntesDespuésCambio
Lecturas por edición6.62.0-70%
Bucles de razonamiento profundoBaseline-73%Colapso
Violaciones de stop-hooks~0/día~10/díaDe cero a diez

El modelo pasó de un comportamiento “investiga primero, edita después” a “edita primero, pregunta nunca”. En tareas complejas de ingeniería, el razonamiento profundo cayó un 73%.

Marginlab, un tracker independiente de benchmarks, confirmó la tendencia: el pass rate de Opus en SWE-Bench-Pro cayó 6 puntos porcentuales (de 56% a 50%).

AMD cambió de proveedor. No fue una decisión tomada a la ligera.


El fallback silencioso: del rumor al código fuente

La sospecha más extendida es directa: cuando los servidores están saturados, Anthropic te sirve Sonnet en lugar de Opus. Pagas por Ferrari, te dan un Seat.

Anthropic lo ha negado explícitamente. En un postmortem de septiembre 2025, declararon: “We never reduce model quality due to demand, time of day, or server load.”

Pero el código fuente de Claude Code cuenta otra historia.

Lo que dice el código filtrado

Hace unos días se filtró el código fuente de Claude Code. Anthropic publica el paquete compilado en npm y un repo en GitHub, pero no el código fuente real. La filtración ha sido analizada por desarrolladores de la comunidad, y lo que han encontrado en src/services/api/withRetry.ts (líneas 327-350) es un mecanismo de fallback que funciona así:

  1. Tu petición a Opus recibe errores 529 (servidor saturado) de forma consecutiva
  2. Cuando se alcanza MAX_529_RETRIES, Claude Code comprueba si hay un fallbackModel configurado
  3. Si lo hay, lanza un FallbackTriggeredError y reintenta toda la petición con Sonnet
if (options.fallbackModel) {
  logEvent('tengu_api_opus_fallback_triggered', {
    original_model: options.model,
    fallback_model: options.fallbackModel,
  })
  throw new FallbackTriggeredError(
    options.model,
    options.fallbackModel,
  )
}

En query.ts (línea 894), el error se captura, se inyecta el historial completo de la conversación al modelo fallback, y se continúa como si nada. El modelo de fallback ve todo el contexto que generó Opus — responde sin saber que reemplazó a otro modelo.

Hay un matiz importante en la condición de activación (withRetry.ts:329):

(process.env.FALLBACK_FOR_ALL_PRIMARY_MODELS ||
  (!isClaudeAISubscriber() && isNonCustomOpusModel(options.model)))

¿A quién afecta? Según el análisis de auth.ts publicado por la comunidad:

  • Subscribers = usuarios logueados en claude.ai con plan Pro, Max, Team o Enterprise (OAuth + scope de inferencia). No entran en fallback automático. Si Opus se satura, reciben un error — no un downgrade silencioso.
  • No-subscribers = usuarios con API key directa, o tokens de terceros (Vertex, Bedrock, Foundry). Estos sí reciben el fallback Opus → Sonnet.

Es decir: si pagas $200/mes de Max, estás protegido. Si pagas por API key — que es como trabajan la mayoría de desarrolladores y herramientas de terceros como Cursor, Cline o Windsurf — te comes el fallback.

Existe un env var no documentado (FALLBACK_FOR_ALL_PRIMARY_MODELS) que activa el fallback para todos los modelos y todos los usuarios, incluidos subscribers. No aparece en ninguna documentación pública. Y junto a la condición hay un TODO en el código que dice literalmente:

“Revisit if the isNonCustomOpusModel check should still exist, or if isNonCustomOpusModel is a stale artifact of when Claude Code was hardcoded on Opus.”

Ni los propios desarrolladores de Anthropic tienen claro si ese check debería seguir ahí.

En cuanto al cobro: los tokens del intento fallido con Opus se descartan. Te cobran los tokens del modelo que realmente responde (Sonnet). Eso es lo justo. Lo que no es justo es que no te enteres.

Lo que confirma el changelog

El historial de cambios de Claude Code es aún más revelador:

  • v1.0.59: “Fixed issue where some Max users that specified Opus would still see fallback to Sonnet” — usuarios de pago premium recibiendo Sonnet sin pedirlo
  • v2.1.73: “Fixed subagents with model: opus being silently downgraded to older model versions on Bedrock, Vertex, and Microsoft Foundry” — downgrade silencioso en plataformas cloud
  • v2.1.76: “Improved model fallback notifications — now always visible instead of hidden behind verbose mode” — las notificaciones de fallback estaban ocultas por defecto

Lee esa última otra vez. Hasta la versión 2.1.76, si Claude Code te cambiaba Opus por Sonnet, solo lo veías si tenías activado el modo verbose. La mayoría de usuarios ni siquiera sabe que existe ese modo.

Técnicamente, Claude Code sí emite un mensaje: “Switched to Sonnet due to high demand for Opus”. Pero si eso estaba oculto tras verbose mode… ¿realmente cuenta como notificación?

No hace falta teoría conspirativa cuando el código ha salido a la luz — solo que Anthropic prefería que no lo vieras.

El doble golpe: fallback + degradación configurada

Pero el fallback de modelo no es el único problema. Anthropic también ha cambiado cómo trabaja Opus incluso cuando sí te lo sirven:

  1. Adaptive thinking (9 febrero 2026): Opus empezó a decidir dinámicamente cuánto “pensar” por cada petición. Menos pensamiento = respuestas más rápidas y baratas para Anthropic, más superficiales para ti.

  2. Effort level medio por defecto (3 marzo 2026): Se puso effort=85 como default, reduciendo la profundidad de razonamiento un 67% según telemetría interna.

  3. Redacción de bloques de pensamiento (12 febrero 2026): Un cambio de UI que oculta el razonamiento del modelo. Anthropic dice que no afecta al razonamiento real — pero la correlación temporal con la caída de calidad es difícil de ignorar.

Así que tienes dos escenarios posibles cuando abres Claude Code:

  • Escenario A: Opus está disponible, pero trabaja al 33% de su capacidad por configuración por defecto
  • Escenario B: Opus está saturado y te sirven Sonnet sin que lo sepas

En ambos casos, confías en respuestas que no tienen la calidad que esperas.


El precedente: OpenAI ya fue pillada

Esto no es teoría conspirativa. OpenAI hizo exactamente esto con GPT-5.

En agosto de 2025 se descubrió que GPT-5 no era un modelo único, sino un sistema de routing que seleccionaba automáticamente entre variantes más baratas y más caras según la complejidad percibida de tu petición. Los usuarios creían estar usando el modelo premium. Estaban usando un sistema multiagente con costes ocultos disfrazado de modelo único.

Un estudio que rastreó 2.250 respuestas de GPT-4 y Claude durante 6 meses encontró un 23% de varianza en longitud de respuesta en GPT-4. Un paper de PLOS One (febrero 2026) confirmó “meaningful behavioral drift across deployed transformer services”.

El modelo que usas hoy no es necesariamente el modelo que usabas ayer, aunque tenga el mismo nombre.


La factura: el elefante en la habitación

Aquí es donde la historia se pone realmente incómoda.

Un desarrollador documentó que su factura de API pasó de $345 en febrero a $42.121 en marzo. No porque usara más — porque el modelo necesitaba más intentos para hacer lo mismo.

Un análisis de 42 ejecuciones de agente reveló dónde se van tus tokens:

Concepto% de tokens
Lectura de archivos y búsqueda35-45%
Output de herramientas15-25%
Re-envío de contexto15-20%
Razonamiento real10-15%
Código generado5-15%

Solo un 5-15% de lo que pagas produce código real. El resto es overhead. Y si el modelo razona peor, necesita más iteraciones, lo que genera más overhead, lo que te cuesta más. Un círculo vicioso donde más tokens no significa mejor resultado.

La ironía: Opus bajó un 67% de precio (de $15/$75 a $5/$25 por millón de tokens). Pero si el modelo necesita 3x más tokens para hacer el mismo trabajo, tu factura sube un 50% neto.


Lo que Anthropic dice vs. lo que hace

Anthropic ha sido consistente en un mensaje: nunca degradan intencionalmente la calidad. Los problemas son bugs de infraestructura, ya corregidos.

Técnicamente no mienten. El fallback de Opus a Sonnet está en el cliente (Claude Code), no en la API. Cuando dicen “we never reduce model quality due to demand”, se refieren al servidor. Que su propio cliente haga exactamente eso cuando el servidor devuelve 529… bueno, es un tecnicismo conveniente.

Y ya tenemos precedente de que este argumento no aguanta. En septiembre de 2025 reconocieron tres bugs que habían degradado respuestas durante semanas:

  • Un error de routing de ventana de contexto que afectó al 16% de peticiones
  • Corrupción de output por mala configuración en servidores TPU
  • Un bug de compilación que causaba errores de precisión en probabilidades de tokens

Tres bugs. Durante semanas. Afectando hasta al 16% de peticiones. Y solo lo reconocieron después de que la comunidad llevara semanas quejándose.

¿Qué no han hecho esta vez? Responder a los datos de AMD. Ni a la caída en Marginlab. Ni a las cancelaciones masivas. The Register reportó que Anthropic no respondió a solicitudes de comentario sobre las quejas más recientes.

La definición de “no degradar intencionalmente” tiene mucho margen cuando publicas un cliente que hace fallback silencioso y lo ocultas tras verbose mode.


Qué hacer como usuario

No se trata de dejar de usar Claude — sigue siendo una herramienta potente cuando funciona bien. Se trata de no ser ingenuo:

1. No confíes ciegamente en las respuestas. Si notas respuestas superficiales o errores que antes no cometía, no seas fanboy. Verifica. Especialmente en código que va a producción.

2. Controla tu factura. Si usas la API, monitoriza tokens consumidos por tarea. Si el ratio tokens/resultado útil se dispara, es señal de degradación — independientemente de la causa.

3. Fuerza el esfuerzo máximo cuando importa. Si tu herramienta lo permite, sube el effort a máximo en tareas críticas. La configuración por defecto está optimizada para el margen de Anthropic, no para tu productividad.

4. Ten un plan B. Mira los benchmarks de otros proveedores, usa comparativas actualizadas y no te cases con nadie. Hoy Claude puede ser el mejor para tu caso de uso. Mañana puede no serlo.

5. Exige transparencia. Como industria, deberíamos demandar que los proveedores de IA sean transparentes sobre cambios de configuración que afectan a la calidad. Si cambias el effort por defecto de 100 a 85, eso no es un “ajuste de producto” — es una degradación.


El problema de fondo

Lo que está pasando con Claude es un síntoma de un problema mayor: la IA como servicio es una caja negra donde el proveedor tiene todos los incentivos para degradar la calidad y ninguna obligación de contártelo.

Cuando contratas un servidor, puedes medir CPU, RAM, latencia. Cuando contratas tokens de IA, no puedes medir “profundidad de razonamiento”. No hay SLA de calidad cognitiva. No hay forma de demostrar que el modelo que te sirven hoy es peor que el de ayer.

Y eso es exactamente lo que hace que la transparencia en costes de IA sea tan importante. No solo para tu factura — para saber qué estás comprando.

Anthropic tiene un producto excelente. Pero la confianza se construye con transparencia, no con postmortems tardíos y silencios incómodos.


¿Has notado cambios en la calidad de Claude? ¿Te ha subido la factura sin explicación? Me interesa tu experiencia — sobre todo si tienes datos, no solo sensaciones.

Sigue explorando

¿Te ha sido útil? Compártelo

Compartir:

Curso relacionado

Aprende Máster de Desarrollo con IA con práctica real

Módulos paso a paso, ejercicios prácticos y proyectos reales. Sin humo.

Ver curso →

Consultoría

¿Tienes un problema parecido con Integraciones con IA?

Puedo ayudarte. Cuéntame qué tienes y te doy un diagnóstico honesto — sin compromiso.

Ver consultoría →

También te puede interesar