platform: v1.3.9
Immutable
release. Only release title and notes can be modified.
1.3.9 (2026-07-14)
Features
- a2a: SSE streaming + external-IdP/OAuth auth, and a unified Credentials page (#6544) (8149511)
- credentials: Client Credentials rename, Virtual Keys landing, and OAuth clients polish (#6571) (208cc56)
- guardrails: deep-link to tool policy editor on blocked external tool calls (#6528) (b3cf6d1)
- observability: emit llm_request_duration_seconds for Bedrock (#6514) (5304a65)
Bug Fixes
- a2a: default a missing attachment content type in buildUserContent (#6559) (f05cd3e)
- agents: assign discovered tools without a caller-resolvable install (#6533) (aae1547)
- apps: correct panel and sandbox state (#6485) (0f3450b)
- apps: default edit_app baseVersion to the current head (#6522) (a210849)
- apps: don't register an MCP App when its UI resource can't be read (#6503) (d03107c)
- apps: forward preview cancellation (#6499) (b1b201f)
- apps: handle terminal UI states (#6498) (983ea45)
- apps: repair app run-links and escape app names against markdown injection (#6486) (4c2dcf3)
- apps: tighten fallback resource scanning (#6500) (db38704)
- chat: make seeded owned-app chats work on Bedrock (#6518) (68dd447)
- chatops: cancel in-flight runs when a thread is muted (#6529) (3ef6c10)
- chatops: Telegram group behavior — privacy-mode truth in docs, full participation when privacy is off (#6562) (0f525ac)
- chat: stop rapid submits from racing the direct-send path and losing messages (#6534) (782e177)
- chat: suppress empty "Thinking…" reasoning accordions (#6517) (99de8d3)
- cut three production error-tracking signals (loopback crash, title-gen race, upstream connection noise) (#6515) (3be0fcc)
- docker: upgrade curl to 8.20.0-r0 in platform + mcp base images (#6565) (bf86b86)
- k8s: full-replace managed custom policies so stale selectors self-heal (#6546) (662ab7e)
- k8s: key MCP per-pod egress policy selector on stable labels (#6542) (8928d48)
- k8s: reconcile MCP egress policies on runtime start (#6535) (d144d66)
- llm providers: microsoft 365 copilot provider ux polishing (#6513) (e1300da)
- LLM proxy + frontend request-error resilience (#6506) (d866ed5)
- llm-proxy: give Bedrock non-OK errors a diagnosable message (#6541) (084f537)
- llm-proxy: proactively stream long Anthropic requests instead of capping them (#6543) (2339cfe)
- llm-proxy: strip sampling params the Anthropic model rejects and retry (#6549) (1795f22)
- mcp-base: bump click to fix CVE-2026-7246 (#6548) (4eef2e4)
- mcp-catalog: don't fail catalog listing when one secret can't resolve (#6545) (6655183)
- mcp-gateway: stop the chat client's GET SSE reconnect storm (#6564) (683a4d0)
- mcp-registry: render ForbiddenPage for users without registry read access (#6555) (c84ccbc)
- mcp: app-managed egress policy for MCP pods (#6488) (2071a41)
- skills: slugify SKILL.md names so shared skills install as working slash commands (#6538) (9ea78d0)