use serde::{Deserialize, Serialize};
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
#[derive(Debug, Clone, Deserialize, Serialize)]
pub struct OpenResponsesConfig {
#[serde(default)]
pub enabled: bool,
#[serde(default = "default_open_responses_emit_events")]
pub emit_events: bool,
#[serde(default = "default_open_responses_include_extensions")]
pub include_extensions: bool,
#[serde(default = "default_open_responses_map_tool_calls")]
pub map_tool_calls: bool,
#[serde(default = "default_open_responses_include_reasoning")]
pub include_reasoning: bool,
}
impl Default for OpenResponsesConfig {
fn default() -> Self {
Self {
enabled: false, emit_events: default_open_responses_emit_events(),
include_extensions: default_open_responses_include_extensions(),
map_tool_calls: default_open_responses_map_tool_calls(),
include_reasoning: default_open_responses_include_reasoning(),
}
}
}
#[inline]
const fn default_open_responses_emit_events() -> bool {
true }
#[inline]
const fn default_open_responses_include_extensions() -> bool {
true }
#[inline]
const fn default_open_responses_map_tool_calls() -> bool {
true }
#[inline]
const fn default_open_responses_include_reasoning() -> bool {
true }