Skip to main content

Release notes

Version history for Tetrate Agent Router. Each release lists its security updates, new features, bug fixes, and deprecations, together with upgrade and rollback notes for platform operators. Security updates name the CVEs a release fixes as identifiers, and an update with no identifier assigned says so; vulnerabilities without a shipped fix are not listed.

Releases are cut every Wednesday, and a patch ships when it is needed rather than waiting for the next cut. Each release is supported for six months from the day it ships, and every entry below carries its end-of-support date. The window applies to the release an operator runs, the self-hosted data plane and the tare CLI, since the Tetrate-hosted management plane is always current. Supported means the management plane keeps working with that release until the date; fixes are not backported, so getting a fix means upgrading to a release that contains it. This page is the published list of versions that the Maintenance and Support Terms refer to as Supported Software.

What each supported release requires and ships is listed on Release compatibility, and deprecations across releases are tracked on Deprecations.


v0.3.0

Released September 9, 2026. Supported until March 9, 2027.

v0.3.0 ships 1 security update, 21 new features, 26 bug fixes, and 1 deprecation. Behavior between the management plane and the data plane changed in this release.

Upgrade and rollback

  • No breaking changes. No operator action is required before upgrading.
  • The upgrade does not roll through without dropping traffic. Plan a maintenance window.
  • Rollback to v0.2.1 is conditional. See the note below.
Rollback condition

Migration 0131 is forward-only. After rolling the management plane back to an earlier release, creating a budget scoped to a single API key fails until the management plane is rolled forward again; every other budget scope is unaffected.

Security updates

Management plane API

A project can no longer be left with no administrator.

New features

tare CLI

tare manage install and tare manage upgrade can now render a management plane with no GCP dependency anywhere.

tare manage install and tare manage upgrade accept --master-kms-uri, which points the management plane's secret encryption at an external KMS instead of a locally supplied master key. tare install accepts --post-renderer, an executable Helm pipes the rendered manifest through before applying it, for several data planes sharing one cluster.

tare manage gateway install --type aws now installs the management plane's ingress on AWS: an ALB, managed by aws-load-balancer-controller, fronting the management-plane services via --certificate-arn (a required wildcard ACM certificate) and an optional --wafv2-acl-arn.

tare manage gateway install --type azure now installs the management plane's ingress on Azure: five Ingress resources consolidated by the Application Gateway Ingress Controller (AGIC) into one Application Gateway, fronting the management-plane services.

tare install --image-sync can now also mirror the management-plane images (app, auth, dashboard, bootstrapper) with the new --include-manage-images flag.

tare manage install and tare manage upgrade now check, before touching the cluster, that the key-encryption key each tier's --secret-manager-type will actually read resolves in the target secret store: GCP Secret Manager for the valet path's master KEK, or AWS Secrets Manager/Azure Key Vault for the app tier's KEKs when --secret-manager-type is aws or azure.

Consoles

The Admin Console data plane list now reports gateway health and provider health as two separate things.

Both consoles now show the management plane's release version in the user menu, and the Admin Console data plane list gains a Version column showing what each data plane last reported. See Check the management plane version and release notes.

Fallback policies now expose which conditions walk the chain. Available once the data plane is on 0.3.0 or later.

Release process

Release notes now list the CVEs a release fixes as identifiers rather than mentioning them inside a sentence, so a security review can confirm a specific CVE is fixed without reading every entry.

Management plane API

The management plane worker now publishes router_v1models_host_field_cross_writer_overwrites_total on its own metrics endpoint rather than the gateway's, which is a count of how often one gateway took over the per-hostname model list that another gateway last wrote.

The management plane now refuses to serve any operation that needs its key-encryption key when KMS_TYPE is unset or unrecognized, instead of silently falling back to an on-disk store that keeps the key-encryption key protecting BYOK provider keys and telemetry-server credentials in cleartext.

The management plane can now resolve its secrets from Azure Key Vault (SecretManagerType=azure), alongside the existing GCP Secret Manager and AWS Secrets Manager backends.

Request-log archival, the WORM audit anchor, and doctor bundle uploads can now target Amazon S3 (s3://bucket) or Azure Blob Storage (az://account/container), alongside the existing Google Cloud Storage backend, by prefixing the configured bucket with the matching scheme.

The management plane can now fetch the key-encryption key that protects BYOK provider keys and telemetry-server credentials from AWS Secrets Manager (KMS_TYPE=aws) or Azure Key Vault (KMS_TYPE=azure), alongside the existing GCP Secret Manager backend.

Data plane

The egress gateway now exposes a dedicated, route-isolated controller liveness listener alongside the public listener, while each gateway member can serve the published readiness contract at /healthz on its own hostname.

The built-in test provider's mock chat-completions endpoint now honors stream: true and answers with an SSE stream, so streaming code paths in the data plane, SDKs, and end-to-end tests can be exercised against the test provider instead of a real upstream LLM.

A request rejected because its key does not belong to the hostname's project gateway now gets a machine-readable reason alongside the existing explanation, instead of prose alone.

The root of a gateway endpoint now answers with a JSON status document reporting whether the gateway is serving, no API key needed, and a new authenticated endpoint, GET /v1/status, adds per-provider reachability observed from the replica's own recent traffic. See Health and status visibility.

Helm charts

The data-plane CRDs are now published as their own chart, oci://registry.tetrate.ai/dataplane-crds-helm, at the same version as serve-helm.

Gateway

Gateway errors composed before a response starts streaming now carry an x-should-retry header.

Bug fixes

Release process

Released Helm charts now carry the release version exactly, so serve-helm 0.3.0 installs as 0.3.0 and the Registry download is named serve-helm-0.3.0-bundle.tar.gz.

Gateway

A gateway whose configuration repeatedly renders empty, for example after every model is unassigned, no longer leaks a stale internal route deployment on each render.

A gateway whose membership probe was still published under its workspace name instead of its gateway UUID no longer re-asserts the stale one: the probe's response body echoed the workspace name, which a DNS failover health check configured to string-match the gateway UUID reads as red.

Claude Code now works against Vertex AI's Gemini and Anthropic models without client-side workarounds. Available once the data plane is on 0.3.0 or later.

A gateway no longer stops serving traffic because of guardrails that had nothing to check.

Deleting the last project gateway on a data plane no longer turns off its project isolation.

Extended thinking is no longer forwarded, on /v1/messages, to an OpenAI-compatible model the catalog does not report as reasoning-capable, so a session that started on a reasoning model keeps working after switching models. See Request normalization.

A system-role message inside the messages array now reaches an OpenAI-backed model instead of being discarded.

When a request asks an OpenAI-backed model for an Anthropic server tool, the tool is still dropped, and the response now carries an x-tars-dropped-fields header naming each dropped tool instead of staying silent. See Request normalization.

Management plane API

Creating, changing, deleting, or disabling a budget policy now schedules a gateway refresh for every project it governs.

Creating an API key now schedules a budget snapshot refresh instead of waiting for the next periodic rebuild, up to five minutes by default.

A budget policy on a single API key now caps the client behind the key, within the key's project, instead of the key row.

Budget policies with a block or fallback action are no longer accepted at the user and per-key-default team scopes, where enforcement does not evaluate them.

The combined OpenAPI document and Postman collection published under https://tare.tetrate.ai/tools/sdks/ now carry the product release version in their filename and info.version, and are republished on every release.

Consoles

A transient failure reading an account's request history no longer shows an established user the new-user onboarding screen.

An API key's fallback and traffic-splitting model lists now answer for the key's own project, not whatever the project selector is on.

The Playground model picker now lists the models it will not allow, under "Not available here", each carrying the reason it cannot be picked, instead of leaving them out with no explanation.

Data plane

The gateway membership probe (/healthz/membership, the green signal DNS-level failover health checks point at) no longer thrashes when a gateway has multiple Active route deployments with conflicting hostnames, for example after a gateway URL rename.

A gateway with no inference provider configured (MCP-only) now serves traffic on its data port.

tare CLI

tare doctor no longer reports a healthy route-level BackendTrafficPolicy as Pending.

tare doctor no longer blames itself when it cannot read the egress gateway's traffic metrics.

tare doctor now reports on the data plane's autoscalers.

The supported Kubernetes range now starts at 1.32 rather than 1.30, which matches the Envoy Gateway this release ships.

tare install, tare upgrade and tare doctor now inspect every CRD the release installs.

The scheduled tare-doctor job no longer fails because the report it just delivered has findings in it.

tare doctor no longer reports a healthy data plane's own admin endpoints as shadowed routes.

Deprecations

tare CLI

--serve-url is deprecated on tare install and tare upgrade. The flag is still accepted, prints a notice, and is ignored; the data plane's URL is registered in the Admin Console under System → Settings → Data planes instead.


v0.2.1

Released September 4, 2026. Supported until March 4, 2027.

v0.2.1 is a security patch on top of v0.2.0. Every data plane and management plane image is rebuilt on updated Go dependencies and a patched Go toolchain to clear reported vulnerabilities. Only dependency and toolchain versions change: the release carries no source, API, configuration, or behavior change, and contains no new features, bug fixes, or deprecations.

Upgrade and rollback

  • No breaking changes. No operator action is required before upgrading.
  • The upgrade rolls through without dropping traffic.
  • Rollback to v0.2.0 is unconditional.

Security updates

Data plane images

The gateway, the rate limit service, the AI gateway controller and its ext-proc, and the bundled kubectl and helm are rebuilt to clear reported vulnerabilities in their bundled Go dependencies:

Management plane and CLI images

The management plane components, the tare CLI and liaison images, and the berglas secret resolver are rebuilt on updated golang.org/x/crypto, golang.org/x/net, golang.org/x/text, golang.org/x/mod (CVE-2026-56864, CVE-2026-56865), and google.golang.org/grpc, and on a patched Go toolchain that clears the Go standard library CVEs.

Telemetry

The bundled OpenTelemetry collector image is updated to clear a high-severity issue in Apache Thrift (CVE-2026-43871).


v0.2.0

Released September 2, 2026. Supported until March 2, 2027.

v0.2.0 ships 1 breaking change, 2 security updates, 8 new features, and 15 bug fixes. The release contains a breaking change, and operator action is required before upgrading. Behavior between the management plane and the data plane changed in this release. The most severe security issue cleared is high.

Upgrade and rollback

  • Breaking change: operator action is required before upgrading. See the warning below.
  • The upgrade rolls through without dropping traffic.
  • Rollback to v0.1.5 is unconditional.
Action required before upgrading

Provider creation through the catalog API changed. UpsertProvider previously asserted "enabled" on every write; a provider created without is_enabled now arrives disabled, and registering a model under it is refused with FailedPrecondition until the provider is enabled. Scripts that create providers must pass is_enabled explicitly. Existing providers are unaffected, and enabling an already created provider is a single further call.

The per-entry change list for this release predates this page. Change lists are published from v0.2.1 onward.


v0.1.5

Released August 28, 2026. Supported until February 28, 2027.

v0.1.5 ships 1 breaking change, 11 security updates, 27 new features, 102 bug fixes, and 1 deprecation. Behavior between the management plane and the data plane changed in this release. The most severe security issue cleared is high.

Upgrade and rollback

  • The release carries a breaking change, but no operator action is required before upgrading.
  • The upgrade rolls through without dropping traffic.
  • Rollback to the previous release is unconditional.

The per-entry change list for this release predates this page. Change lists are published from v0.2.1 onward.