Claude Code 2.1.233: три изменения в gateway, о которых должен знать каждый operator

2.1.233 добавляет forward_user_identity настройку apps gateway для проброса идентичности разработчика в downstream-прокси, исправляет проглатывание ошибок 400/413 от Vertex и AWS, устраняет бесконечный цикл MCP v2 на serverless-хостах.

Опубликовано источник Anthropic

Архивный материал, подготовленный с помощью ИИ по указанному источнику и опубликованный без индивидуальной проверки. Ответственный редактор: Joe Werner.

Абстрактная диаграмма: заголовки с идентичностью пользователя проходят через слой gateway к upstream-прокси
Машинный перевод с английского оригинала — читать оригинал

Самые ценные с операционной точки зрения релизы нередко выходят без громкого анонса. Claude Code 2.1.233, опубликованный на этой неделе, именно такой. Три изменения в changelog затрагивают слой gateway — и это важно для любой команды, которая запускает Claude Code в масштабе через прокси или облачный backend.

Что изменилось в 2.1.233

forward_user_identity — идентичность разработчика теперь доходит до вашего прокси

Apps gateway на Anthropic-апстримах получил опциональную настройку forward_user_identity. При её включении gateway добавляет в каждый исходящий запрос заголовки с идентичностью вошедшего разработчика: user.id, user.email и user.groups, извлечённые из JWT, выданного gateway.

До этой настройки прокси, стоящий за apps gateway, получал одни и те же непрозрачные upstream-учётные данные для каждого запроса вне зависимости от того, кто из разработчиков его инициировал. Атрибуция расходов на конкретного разработчика требовала самостоятельно перехватывать и декодировать JWT, а потом сопоставлять его с логами использования — хрупкое решение, которое к тому же по-разному работало на Vertex AI, Foundry и Claude Platform on AWS.

С включённым forward_user_identity gateway берёт на себя эту работу. Прокси получает структурированные заголовки с идентичностью в каждом запросе и может напрямую записывать их в биллинговые записи, дашборды расходов или применять для квотирования на уровне пользователя — без обращения к JWT-потоку.

Важно, что настройка опциональна. Проброс заголовков с идентичностью создаёт поверхность для header injection, если downstream-прокси не проверяет источник заголовков. Anthropic намеренно сделал это opt-in: не каждый operator хочет, чтобы идентичность разработчика уходила вниз — у ряда организаций есть политики разделения данных, которые относят её к чувствительным метаданным. Перед включением в production убедитесь, что ваш прокси валидирует происхождение этих заголовков.

Проброс ошибок 400/413 от Vertex, Foundry и AWS — и баг auto-compact

До 2.1.233 ошибки, возвращаемые upstream-бэкендами на Vertex, Foundry и Claude Platform on AWS, проглатывались слоем apps gateway. Когда апстрим возвращал 400 (некорректный запрос) или 413 (слишком большой payload), operator видел только общую ошибку gateway без диагностического сообщения от апстрима.

Это особенно критично в двух сценариях. Во-первых, превышение длины контекста: запрос, выходящий за пределы max_tokens или контекстного лимита апстрима, возвращает 413. Без сообщения апстрима невозможно отличить срабатывание лимита токенов от несоответствия payload или неправильно сформированного запроса. Во-вторых, и это явно указано в changelog: баг в auto-compact на apps gateway тоже был скрыт этим механизмом. Команды, включившие auto-compact и заметившие сбои в его работе, не получали никакой ошибки для анализа.

После исправления сообщения об ошибках от апстрима доходят до operator-прокси без изменений. Если ваша логика алертинга или повторных попыток опирается на содержимое сообщений об ошибках, добавьте обработку форматов ошибок Vertex, Foundry и AWS — они не унифицированы между бэкендами.

MCP v2 subscribe stream — бесконечный цикл переподключения на serverless-хостах

MCP v2-серверы на serverless-платформах (Cloud Run, Lambda и любых других, которые закрывают долго удерживаемые HTTP-соединения по фиксированному таймауту) вызывали бесконечный цикл переподключений в Claude Code: сервер закрывал поток subscriptions/listen по таймауту, Claude Code немедленно его переоткрывал, сервер снова закрывал, и так по кругу. На практике Claude Code непрерывно расходовал соединения и CPU, не выполняя никакой полезной работы, и не сообщал operator ни о каких ошибках.

Исправление прерывает этот цикл. Если вы запускаете MCP v2-серверы на serverless-инфраструктуре — это причина обновиться прямо сейчас.

Картина gateway на трёх апстримах

Три исправления вместе обозначают тенденцию: архитектура apps gateway на Vertex AI, Foundry и Claude Platform on AWS с каждым релизом Claude Code набирает операционную глубину, однако поведение на разных бэкендах по-прежнему неодинаково.

На Vertex AI gateway использует workload identity federation; forward_user_identity отображает аутентифицированный Vertex-principal. На Foundry (Azure) идентичность передаётся через скоупы AAD-токена. На Claude Platform on AWS учётные данные берутся из политик доступа Bedrock. Форматы сообщений об ошибках тоже отличаются: Vertex возвращает структурированные JSON-ошибки, Foundry — формат ошибок Azure API Management, AWS — формат Bedrock.

Если ваш прокси обрабатывает ошибки единообразно, 2.1.233 может показать вам больше расхождений между бэкендами, чем раньше. Но этот компромисс оправдан: вместо непрозрачных gateway-сбоев вы получаете конкретную диагностику.

Что сделать operator-у прямо сейчас

Включите forward_user_identity, если вы ведёте биллинг или квотирование на уровне пользователя. Настройка находится в конфигурации apps gateway для Anthropic-апстримов. После включения убедитесь, что прокси валидирует источник заголовков, и подключите user.email или user.id к вашему пайплайну атрибуции расходов. Это заменит любую JWT-middleware, написанную ранее как workaround.

Проверьте обработку форматов 400/413 от каждого апстрима. Если раньше вы опирались на строки сообщений об ошибках для роутинга или алертинга, протестируйте логику на реальных форматах ошибок Vertex, Foundry и AWS.

Проверьте развёртывания MCP v2-серверов. Если вы размещаете MCP v2-серверы на serverless-инфраструктуре, обновите Claude Code до 2.1.233 и проверьте логи сервера на наличие повторяющихся запросов subscriptions/listen — это признак того, что цикл переподключения был активен до исправления.

Учтите изменение в todo-tools. TaskCreate, TaskGet, TaskUpdate, TaskList и TodoWrite по умолчанию больше недоступны на Opus 4.8, Sonnet 5, Fable 5, Mythos 5 и более новых моделях. Если ваши CI-скрипты или автоматизация использовали эти инструменты, установите CLAUDE_CODE_ENABLE_TODO_TOOLS=1 — иначе они будут молча падать на актуальных версиях моделей.

Что отслеживать пользователям TheRouter

Если вы направляете трафик Claude Code через TheRouter и дальше на Vertex, Foundry или Bedrock, исправление 400/413 актуально немедленно: теперь вы будете видеть детали ошибок от апстрима, а не непрозрачные сбои gateway. Проверьте, как ваша конфигурация роутинга обрабатывает ограничения контекста модели на каждом бэкенде.

Контракт заголовков forward_user_identity также накладывает ограничение на порядок в цепочках прокси: заголовки должны добавляться именно в apps gateway, а не в промежуточном роутере — иначе гарантии валидации источника нарушаются. Если вы вставляете TheRouter или другой прокси между Claude Code и apps gateway, убедитесь, что заголовки с идентичностью записываются на уровне gateway и без изменений пробрасываются через все промежуточные хопы.

Подробнее о роутинге Claude Code через enterprise gateway: TheRouter docs.

Диаграмма улучшений надёжности Claude Code 2.1.274 для операторов gateway: стабильность MCP-соединений и восстановление транскриптов

Claude Code 2.1.274: масштабное исправление MCP, конфигурация Postgres в gateway и самовосстановление транскриптов

Claude Code 2.1.274 устраняет шесть причин тихих сбоев MCP в production, добавляет store.connect_timeout_seconds и CLAUDE_CODE_GATEWAY_DRAIN_TIMEOUT_MS в Claude apps gateway, а также переводит повреждённые транскрипты на режим самовосстановления вместо бесконечного цикла.

источник Anthropic
Абстрактная диаграмма: цепочка принятия роли IAM от Claude apps gateway к Bedrock-апстриму в отдельном аккаунте AWS, с уровнем принудительного применения guardrail

Claude Code 2.1.281: Bedrock-апстримы получили кросс-аккаунтный IAM и принудительный Guardrail

2.1.281 добавляет assume_role и guardrail в Bedrock-апстримы Claude apps gateway. assume_role обменивает IAM-учётные данные на per-developer STS-токены. guardrail применяет Bedrock guardrail к каждому запросу. Оба смещают границу доверия в мультиаккаунтных AWS-деплоях.

источник Anthropic
Claude Code 2.1.275: регрессия шлюза — тег advisor_20260301 вызывает 400 на прокси с ANTHROPIC_BASE_URL, исправлено в 2.1.276

Claude Code 2.1.275 сломал все прокси-шлюзы. 2.1.276 исправил это в тот же день.

Тег advisor_20260301 в 2.1.275 сломал все прокси-шлюзы: 400 на каждый запрос. 2.1.276 вышел hotfix'ом в тот же день. Разбор механики сбоя, затронутых конфигураций и трёх дополнительных изменений для операторов.

источник Anthropic
Помощь и контакты