Changed
- (deps) Update dependency isolated-vm to v7 in #1785 by @renovate[bot]
Full Changelog: https://github.com/giantswarm/backstage/compare/v0.138.2...v0.138.3
Full Changelog: https://github.com/giantswarm/backstage/compare/v0.138.2...v0.138.3
Full Changelog: https://github.com/giantswarm/backstage/compare/v0.138.1...v0.138.2
Full Changelog: https://github.com/giantswarm/backstage/compare/v0.138.0...v0.138.1
systemPromptMuster.md now front-loads the muster Kubernetes tool contract (management_cluster: <mc>-mcp-kubernetes, podName, resourceType, tailLines), steers workflow discovery to a ranked filter_tools(query="<topic>") for the muster 0.9.0+ discovery tier, and prefers a matching workflow_* over raw x_kubernetes_* tools. Cuts tool-call trial-and-error and tokens on common Kubernetes questions (#1776, #1784).
See ./docs/releases/v0.138.0-changelog.md for more information.linux/amd64. The devctl-generated config built a multi-arch (amd64+arm64) image, but the arm64 cross-build of the backend’s native modules (isolated-vm, better-sqlite3, keytar) runs under QEMU emulation and silently exceeds the orb’s 20m no-output timeout, which blocked the tag pipeline (and therefore the chart catalog push) on v0.137.1. Every prior release was single-arch amd64 and the management clusters are amd64, so arm64 is unused.
See ./docs/releases/v0.137.2-changelog.md for more information.buildjob that feeds the image build, and the second control-plane-catalog chart push) move to .circleci/custom.yml; the .ats/main.yaml smoke-test config and a renovate-custom.json5 (preserving the repo’s Renovate reviewers, package groups, and schedule) are added so the upcoming generated config.yml/workflows.yml and regenerated renovate.json5 keep the existing behavior.
See ./docs/releases/v0.137.1-changelog.md for more information.gs.installations.<name>.clusterTokenAudience) no longer fall back to the per-cluster OAuth popup or the cookie-based /refresh; the connector mints their tokens silently and, when the main Dex session is missing, triggers exactly one main SSO re-login and retries. Per-cluster failures now surface as a typed error with a coarse reason instead of failing silently. The gs auth backend module registers only the main gs.authProvider, so a stray oidc-<mc> provider block can no longer stall startup on an unreachable Dex’s metadata discovery.AbortController timeout, healthy clusters appear as soon as they resolve instead of waiting on a hung installation, and persistently failing clusters back off with a capped exponential retryDelay.POST /api/auth/cluster-token/:installation backend route exchanges the user’s main Dex ID token for a short-lived cluster token (RFC 8693), cached per user and installation; the kubernetes auth connectors try this silent path before the cookie-based refresh, keeping the legacy popup as fallback for unmigrated clusters. Configured via gs.clusterTokenBroker; installations marked with gs.installations.<name>.clusterTokenAudience disappear from the provider settings page, collapsing it to the single main login.authProvider has no dedicated auth.providers entry, enabling single sign-on for muster. Deployments activate this by removing the mcp-muster provider from auth.providers, which also removes the separate PKCE login from the user settings page.
See ./docs/releases/v0.136.0-changelog.md for more information.call_tool meta-tool and unwraps its result envelope.
See ./docs/releases/v0.135.3-changelog.md for more information.aiChat.mcp[].timeoutMs); hanging servers degrade gracefully instead of blocking the chat. Also patch @ai-sdk/mcp to treat SSE events without an explicit event: field as message events per the SSE specification, fixing silently dropped responses from MCP servers behind agentgateway.
See ./docs/releases/v0.135.2-changelog.md for more information.