Claude Code 2.1.261 gateway policy telemetry operator: что должны исправить proxy

Claude Code 2.1.261 gateway policy telemetry operator changes expose four proxy failure modes: organization policy fetches, client IP parsing, JSON/protobuf OTEL drift, and Bedrock setup probes behind TLS inspection.

Опубликовано источник Claude Code Changelog

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

Сдержанная редакционная схема coding-agent gateway с проверками policy, proxy identity и telemetry перед provider routing
Машинный перевод с английского оригинала — читать оригинал

Claude Code 2.1.261 is not a model launch. For teams that run coding agents through a gateway, it is more practical than one. The changelog names the places where enterprise proxying creates false confidence: policy discovery, client identity, provider setup probes, and OpenTelemetry export format. The Claude Code 2.1.261 gateway policy telemetry operator story is that gateway failures can now become visible to the user, but only if the side-channel control plane is routed and audited on purpose.

The release also raises inline output limits and adds skill-cost diagnostics. Those are useful, but they are not the main operational issue. The important move is to stop treating the coding-agent API path as a single model request. Claude Code now depends on several control-plane calls around the main turn. A gateway that forwards completions while dropping those calls can make the agent look configured while enterprise policy is absent.

Claude Code 2.1.261 gateway policy telemetry operator audit starts with status

The new "Organization policy" line in /status and claude doctor is the change that belongs in the health checklist first. It explains why organization policy could not be loaded, including the case where a proxy does not pass the endpoint through. A quiet governance failure now has a visible diagnostic surface.

For operators, that endpoint is not just another URL. If a company relies on managed settings, model allowlists, plugin controls, or spend rules, policy-fetch failure should be treated as a degraded control plane. The user can still type prompts, but the session is no longer running under the policy posture the organization expected.

The migration path is concrete. Before this release, many gateway checks stopped at the model endpoint: can the CLI reach the provider, does streaming work, does authentication pass. After 2.1.261, add a policy-read check to health probes for managed Claude Code deployments. Run claude doctor or /status from behind the same proxy path developers use, capture the organization-policy line, and alert when it reports a proxy pass-through failure. Teams using TheRouter as the primary OpenAI-compatible entry point should keep the coding-agent control-plane allowlist separate from the model-routing allowlist in the TheRouter docs, because a healthy model path does not prove the policy path is healthy.

Client IP and proxy headers are now access-control data

Claude apps gateway now fixes client IP handling when a trusted proxy appends a port to X-Forwarded-For; with an access list set, an unreadable entry returns 403. This looks like plumbing until an allowlist depends on it.

The operator consequence is named and testable. If an upstream proxy emits 203.0.113.10:53214 instead of 203.0.113.10, older parsing can misclassify the client. One failure mode rejects a valid developer session. A worse one lets fallback logic skip the access-list check or record the wrong tenant source. The new behavior fails unreadable entries closed with 403, which is the right default for an access-controlled gateway.

The cross-provider context matters because coding-agent stacks often cross several routes: direct Anthropic API, Bedrock, Vertex AI, and internal LLM gateways. Cloud load balancers, corporate proxies, and service meshes do not format forwarded headers the same way. A router should normalize X-Forwarded-For once at the edge, preserve canonical client IP in its own trusted header, and avoid re-parsing arbitrary user-controlled header chains deeper in the stack.

For TheRouter users testing Claude Code behind a custom endpoint, the practical sequence is simple: confirm the Claude Code router path works for normal requests, then run a negative test with a malformed forwarded-for entry and expect 403, not silent fallback. If logs cannot show which parsed IP caused the block, the audit trail is still incomplete.

Telemetry format mismatch can erase billing and incident evidence

The release fixes Claude apps gateway telling Claude Desktop to export OpenTelemetry as JSON even when the terminal CLI uses protobuf, so protobuf-only collectors rejected Desktop telemetry. This is not a cosmetic mismatch. For coding-agent operators, telemetry is where model choice, latency, retries, user attribution, and cost get reconciled.

A gateway can route model traffic correctly and still undercount real workflows if Desktop spans are dropped. That matters because Desktop is often used by people who are not terminal-heavy power users. If the collector does not report rejected payloads loudly, the gap looks like normal absence. In a team environment, CLI users become measurable while Desktop users become an accounting blind spot.

The migration path after 2.1.261 is to pin telemetry protocol by deployment lane. If the collector accepts only OTLP/protobuf, verify that Desktop, terminal CLI, cloud sessions, and SDK sessions all emit the same protocol. If both JSON and protobuf are supported, tag the ingestion path so billing and incident reports can distinguish protocol conversion trouble from a real request failure. The changelog also notes a fix for resumed sessions losing hook output and context around parallel tool calls; that belongs in the same audit, because hook output often carries policy or cost attribution that later becomes dispute evidence.

Claude Code 2.1.261 gateway policy telemetry operator checks must include provider setup

Bedrock setup now times out cleanly when AWS or a credential helper never responds, and its model checks no longer fail simply because the path sits behind a TLS-inspecting proxy. The operator angle is not a better setup wizard. Provider-readiness probes need their own timeout and proxy test budget.

Before this fix, a hung helper could consume the user's attention indefinitely, and a TLS-inspection failure could be mistaken for Bedrock model unavailability. After the fix, gateway teams should separate three outcomes in logs and dashboards: credential-helper timeout, TLS/proxy validation failure, and provider model-list failure. They require different remediations. Retrying model routing will not fix a credential helper. Switching providers will not fix a corporate TLS policy that blocks the setup check.

bashOutputMaxChars and taskOutputMaxChars, now configurable up to 128K inline characters, need a guardrail in the same rollout. More inline command output helps debugging, but it also increases the chance that secrets, stack traces, or large generated artifacts enter model context. If these limits go up, pair the change with redaction rules and a lower limit for untrusted workspaces. /skill-doctor fits here too: it shows which loaded skills consume context but never run, making prompt-cache and context-window costs easier to prune.

The routing change to make now

Treat Claude Code 2.1.261 as a control-plane release. Add four probes to the coding-agent gateway checklist: policy fetch visible in /status, forwarded-for parse failure returning 403, OTEL protocol accepted for every client surface, and Bedrock setup checks separated from model invocation checks.

This is also the right time to stop merging all coding-agent events into a single "Claude Code request" metric. A useful router record should separate model calls, policy calls, plugin sync, telemetry export, provider setup probes, and remote-control delivery. The release includes fixes across all of those surfaces. If they collapse into one success counter, the next incident will say Claude Code was up while the part your governance or billing process relied on was missing.

Абстрактная диаграмма: цепочка принятия роли 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
Диаграмма улучшений надёжности 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
Помощь и контакты