pub trait ModelConfigResolver: Send + Sync {
// Required methods
fn resolve_model_config(
&self,
agent_name: &str,
requested_model: Option<&str>,
environment: Option<&str>,
) -> ResolvedModelConfig;
fn resolve_utility_config(
&self,
utility_name: &str,
environment: Option<&str>,
) -> ResolvedModelConfig;
// Provided method
fn circuit_breaker_config(
&self,
_environment: Option<&str>,
) -> CircuitBreakerConfig { ... }
}