Documentation Index
Fetch the complete documentation index at: https://docs.getbifrost.ai/llms.txt
Use this file to discover all available pages before exploring further.
Changelog
This release unifies the API authentication path so password-mode admin and API-key auth share the OSSAuthMiddleware/RBAC pipeline, splits SCIM provider configuration into per-provider forms, keeps governance usage snapshots alive across idle periods, and pulls in OSS base transports/v1.5.0-prerelease8 with objectStorageExcludeFields, MCP server/client URL split, and a stack of provider correctness fixes (Anthropic routing, Bedrock structured-output streaming, SGL extra-params passthrough).✨ Features
Authentication & API Surface
- Unified API Auth Pipeline - Removed the enterprise
SessionMiddlewarein favor of the OSSAuthMiddleware.APIMiddleware()on API routes; password-mode admin sessions and API-key auth now flow through the same middleware chain and shareschemas.IsLocalAdminContextKey/schemas.IsAPIKeyAuthContextKeyfrom core, eliminating the previous duplicated context-key constants. - RBAC Always Initialized - RBAC controller and permission cache are now bootstrapped unconditionally (no longer gated on the SCIM controller being present), so API-key permission checks and local-admin RBAC bypass work in non-SSO deployments.
- Auth Middleware Context Keys (OSS) - Core v1.5.7 adds
IsAPIKeyAuthContextKey(short-circuit when API-key auth already passed) andIsLocalAdminContextKey(bypass RBAC when auth is disabled).
SCIM & Identity
- Per-Provider SCIM Config Forms - The single SCIM config form has been split into dedicated forms per provider (Entra, Google, Keycloak, Okta, SailPoint, Zitadel), each with its own validation and field set, replacing the shared switch-case form for better maintainability.
- Dedicated SCIM
config_hashMigration - AddedaddSCIMProviderConfigHashColumn(ident_add_scim_provider_config_hash_column) so installations that already ranent_add_config_hash_columnsstill receive the column onenterprise_scim_providers. Migration also reordered to run alongside other config-hash migrations, before access-profile migrations.
Governance & Cluster
- Governance Snapshot Heartbeat - Added a 10s heartbeat for unchanged governance usage snapshots, tracking
lastBroadcastAtper node so peers don’t expire idle nodes’ usage state under the 30s stale-node TTL. Cluster-wide budget and rate-limit enforcement no longer falls back to a partial local view when a node’s usage simply stops changing.
OSS Base (transports/v1.5.0-prerelease8)
objectStorageExcludeFields- Configurable list of log payload fields that stay in the database instead of being offloaded to object storage.- MCP External Base URL Split - MCP external base URL split into separate server and client URL fields for clearer reverse-proxy configuration.
- Schema Normalizer - New
NormalizeSchemaForAnthropicRaw(gjson/sjson) avoidsmap[string]interface{}round-trips during Anthropic schema preparation. - Bedrock Structured Output - New
extractJSONSchemaObjecthelper unifies composite and decomposed JSON schema fields for OpenAI-compat structured output on Bedrock. - Provider Capability Matrix - Re-enabled
ContextEditingandContextManagementFieldfor Vertex; disabledTaskBudgetsfor Azure (not documented upstream);claude-4.6-sonnetmapped for the Bedrock test account.
Infrastructure
- New Customer Envs - Added
bluestaqandonbeTerraform/Docker scaffolding (hub backend, perimeter, terraform.tfvars); refreshedfalconxandconstructorDockerfiles.
🐞 Fixed
- API Middleware Wiring - Auth middleware now runs before RBAC on API routes so
IsLocalAdminContextKeyis set before RBAC evaluates; cluster-message handler updated to use the unifieds.AuthMiddlewarereference. - Prompts Plugin Missing Header - Prompts plugin’s deployment resolver no longer returns an error when
x-bf-prompt-idis absent - missing header is treated as “plugin not needed for this request” instead of a failure. - SCIM Teams Page Styling - Fixed layout/style regressions on the SCIM teams pages (
usersViewandusersTable). - Anthropic Integration Routing (OSS) - Skip model catalog routing when loadbalancer or governance routing has already set the provider.
- SGL Extra Params Passthrough (OSS) - SGL provider now sets
BifrostContextKeyPassthroughExtraParams, so SGLang vLLM-style extra-body params (chat_template_kwargs,guided_json,guided_regex,separate_reasoning) are no longer dropped. - Bedrock Structured-Output Streaming (OSS) - Suppress non-tool content events (text deltas, reasoning, non-tool content-block starts) in structured-output mode so prose/preamble no longer corrupts the assembled JSON.
- MCP Tool Field Resolution (OSS) - Resolve
tools_to_executeandtools_to_auto_executefrom existing config before validation on MCP client update. - Auth Config Disabled Context (OSS) - Update request context correctly when auth config is disabled.
BifrostErrorString Output (OSS) - AddedString()method so logged errors render as JSON instead of decimal byte dumps.- Streaming Latency Validation (OSS) - Zero-millisecond latency values are now accepted (valid for sub-millisecond cache hits).
NewUnsupportedOperationErrorContext (OSS) - Now populatesProviderandRequestTypeinExtraFields.- SCIM Page Layout (OSS) - Added
no-scrollbarutility class and appliedno-padding-parentto the SCIM page.
📀 Base OSS version
transports/v1.5.0-prerelease8
