zeroclaw-labs/zeroclaw · error
OpenAiCompatibleBuilder: display_name() is required
Error message
OpenAiCompatibleBuilder: display_name() is required
What it means
Error "OpenAiCompatibleBuilder: display_name() is required" thrown in zeroclaw-labs/zeroclaw.
Source
Thrown at crates/zeroclaw-providers/src/compatible.rs:552
) -> Self {
self.auth_model_provider = Some(model_provider.to_string());
self.auth_service = Some(auth_service);
self.auth_profile_override = profile_override;
self
}
/// Finalize the builder into a ready provider. Every optional construction
/// value must be set on this builder; the returned provider has no
/// post-construction mutators.
///
/// # Panics
/// Panics if [`Self::display_name`], [`Self::base_url`], or
/// [`Self::auth_style`] was not called — those three fields carry no
/// sensible default and every real call site sets them.
pub fn build(self) -> OpenAiCompatibleModelProvider {
let name = self
.name
.expect("OpenAiCompatibleBuilder: display_name() is required");
let base_url = self
.base_url
.expect("OpenAiCompatibleBuilder: base_url() is required");
let auth_style = self
.auth_style
.expect("OpenAiCompatibleBuilder: auth_style() is required");
// Either merge preset can enable the shared merge behavior.
let merge_system_into_user =
self.merge_system_into_user || self.merge_system_into_user_preserve_native;
// Default `native_tool_calling` is `!merge_system_into_user_disable_native`,
// i.e. only the "combined preset" builder setter disables it. The
// explicit `without_native_tools()` override wins if present.
let native_tool_calling = self
.native_tool_calling_override
.unwrap_or(!self.merge_system_into_user);
// Read the PEM bytes now so later HTTP clients incur no per-request I/O.
// A read error is logged at WARN and TLS falls back to system roots —
// preserving the established warning-and-fallback semantics.View on GitHub (pinned to 88bb9c8533)
Solutions
- Set display_name on the OpenAiCompatibleBuilder before calling build().
- Provide a display name in the compatible provider configuration entry.
When it happens
Trigger: Thrown at crates/zeroclaw-providers/src/compatible.rs:552 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of zeroclaw-labs/zeroclaw@88bb9c8533 (2026-08-23).
Data as JSON: /api/errors/7bce17e3fe49e6fc.
Report an issue: GitHub.