core/v1.8.5
maximhq/bifrostcore/v1.8.5Sep 8, 2026by akshaydeo
Upgrading?
AI Summary
A feature-rich release adding new providers (Databricks, GitHub Copilot), virtual MCP server support, and extensive fixes for Bedrock, reasoning handling, and streaming.
Key Highlights
- New Databricks provider
- New GitHub Copilot provider
- Virtual MCP server support
- Project governance dimension in request context
- Native raw request redaction for Anthropic and Gemini
New Features
- Databricks provider (Model Serving and Unity AI Gateway)
- GitHub Copilot provider with installation tokens
- Virtual MCP server support
- Project governance dimension
- Native raw request redaction
- Semantic complexity routing contracts and vector stores
- Multiple fixes for Bedrock Converse, reasoning blocks, and streaming
Full Release Notes
## Core Release v1.8.5 - fix: map forced tool choice `any` to `required` on OpenAI Responses and Chat egress (#6887) [@Atharva-Kanherkar](https://github.com/Atharva-Kanherkar) - [fix]: preserve max reasoning effort for GPT-6 Astra [@nettee](https://github.com/nettee) - fix: give a Bedrock message a placeholder text block instead of a null `content` field when it has no text and no tool calls - `BedrockMessage.Content` has no `omitempty`, so a message with empty text and no tool calls (or an empty `tool_calls` array) serialized as `content:null`, which Converse rejects with "Member must not be null" (#2765) - [fix]: marshal required nullable response fields as null [@PSR94](https://github.com/PSR94) - fix: accept top-level arrays from OpenAI-compatible model APIs [@dani29](https://github.com/dani29) - feat: add Baseten to Hugging Face inference provider discovery [@nicolastoulemont](https://github.com/nicolastoulemont) - fix: strip the encrypted reasoning signature when the upstream reports the field as unsupported (e.g. Bedrock Converse replaying a Claude signature onto a non-Anthropic model after a mid-conversation model switch), extending the existing unverifiable-signature fail-soft - fix: clear Anthropic raw-body passthrough based on the resolved provider and model pair, so non-Claude models on multi-family providers (Vertex, Azure, Bedrock Mantle) convert the request instead of passing the Anthropic payload through - feat: optionally synthesize prompt-cache breakpoints for requests that carry none, so agentic clients that emit no cache markers (Codex and similar) stop paying the cache-write rate on every turn; off by default per provider via `prompt_cache.auto_inject`, with `cache_control_injection_points` for role/index targeting, and extended to translate the marker into `prompt_cache_breakpoint` plus explicit cache mode on the gpt-5.6 family - fix: drop unsigned reasoning blocks from Bedrock Converse replays to Claude, which verifies the thinking signature and rejects a block without one in every serialisation; Nova and MiniMax keep receiving unsigned blocks with the field omitted. Gated on a new datasheet capability `bedrock_requires_signed_reasoning` with an Anthropic-family fallback (#6624) - fix: render reasoning the upstream actually returned on Bedrock Converse-shaped responses (`/bedrock` converse and the framework drop-ins that reuse it): a native Grok or OpenAI reasoning summary with no encrypted content was resolved through the request-direction redacted shape and silently dropped, so clients saw text only; the response direction now emits `reasoningText` for exposed text and keeps `redactedContent` for opaque blocks, while replays to Bedrock are unchanged [@akshaydeo](https://github.com/akshaydeo) - feat: add Databricks as a first-class provider covering Model Serving and Unity AI Gateway with PAT or OAuth M2M auth, per-model parameter sanitization from datasheet capabilities, Claude reasoning translation, remote image inlining, Responses-to-chat fallback and surfaced upstream errors (#6665, #6676, #6770, #6958) - feat: add GitHub Copilot provider that mints installation tokens server-to-server from GitHub App credentials, with chat completions, Responses and list models (#6352, #6353, #6356) - feat: add virtual MCP server support, endpoint slugs for direct MCP servers, and config.json wiring for `mcp.virtual_mcps` (#6746, #6791, #6904) - feat: add the project governance dimension to request context, schemas and log payloads (#6702, #6705) - feat: settle per-request identity onto a grant at context conversion and rename `AllowOnAllVirtualKeys` to `AllowByDefault` with backward-compatible wire aliases (#6306, #6307, #6308, #6641, #6642, #6649) - feat: add `allow_all_providers` to virtual key schemas (#6662) - feat: add semantic complexity routing contracts, vector store and embedding executor, LLM classifier fallback, session-aware routing and the 750-phrase limit; rename `BifrostCacheDebug`, `BifrostGuardrailDebug` and `BifrostRoutingDebug` to `*Metadata` with type aliases, and rename the `routing_debug` field to `routing_metadata` (#6164, #6166, #6177, #6317, #6722, #6727) - feat: support native raw request redaction for Anthropic and Gemini passthrough and add `RawStreamTextCodec` with a paused buffer transform for native SSE redaction (#6365, #6386) - feat: route Azure DeepSeek Responses requests from coding harnesses to chat completions, fall back for models without a Responses endpoint, and gate it on `compat.azure_deepseek` (#6326, #6737) - feat: split converter processing into individual span buckets and add the overhead spans export toggle (#6588, #6945) - feat: persist the served model from the provider response (#6693) - feat: record `MCPConnectionFailure` on client state (#6794) - feat: remove the plugin `version` field in favour of hash-based reconciliation (#6250) - fix: patch fasthttp to remove races when closing streams, drain abandoned streams so upstream connections return to the pool, terminate streams that send only heartbeats after usage, and add `does_not_send_done_marker` for custom providers (#6799, #6802, #6948, #6960) - fix: alias assistant `reasoning_content` for Groq and Cerebras instead of stripping it (#6949) - fix: populate `summary_index`, summary text and signatures on `reasoning_summary_*` stream events for Anthropic, Bedrock and Gemini (#6902) - fix: derive chat `finish_reason` from the Responses terminal state and incomplete details (#6901) - fix: emit proper terminal events for Anthropic `response.incomplete` and `response.failed` instead of truncating, and synthesize a missing terminal text suffix from `output_text.done` (#6159, #6805) - fix: route Anthropic-on-Vertex passthrough usage and stream terminal detection through the Anthropic parsers (#6639) - fix: remove raw body passthrough when the provider does not support the output config format (#6798) - fix: route Bedrock models to Converse (#6655) - fix: keep standalone `thoughtSignature` parts with empty text on native GenAI (#6745) - fix: use `max_tokens` instead of `max_completion_tokens` for Ollama (#6607) - fix: send rerank documents as Cohere v2 strings, not objects (thanks [@AdityaPainuli](https://github.com/AdityaPainuli)!) (#6654) - fix: handle reasoning efforts for Azure providers (#6877) - fix: thinking block modification error on replay (#6854) - fix: skip custom providers in list models when the request is not allowed to use them (#6853) - fix: pass the MIME type in file responses (#6684) - fix: retry video job polling and record video debug data (#6728) - fix: translate `cache_control` breakpoints for OpenRouter Claude models on the Responses API (#6692) - fix: block Teredo addresses in the dial-time SSRF guard and run MCP auth through SSRF checks (#6757, #6760) ### Installation ```bash go get github.com/maximhq/bifrost/core@v1.8.5 ``` --- _This release was automatically created from version file: `core/version`_
Related Repositories
ollama/ollama★ 184,258
Get up and running with Kimi, GLM, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other models.
fatedier/frp★ 110,072
A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.
infiniflow/ragflow★ 92,646
RAGFlow is a leading open-source Retrieval-Augmented Generation (RAG) engine that fuses cutting-edge RAG with Agent capabilities to create a superior context layer for LLMs
gohugoio/hugo★ 90,197
The world’s fastest framework for building websites.
junegunn/fzf★ 83,716
:cherry_blossom: A command-line fuzzy finder