//! Extensibility traits for Open Responses adapter
//!
//! This module provides traits that users can implement to extend the adapter's capabilities.
//! By default, the adapter operates statelessly, but these traits enable:
//!
//! - **ResponseStore**: Persistent storage for `previous_response_id` support
//! - **ToolExecutor**: Server-side tool execution during agent loops
//! - **MultiStepStore**: Multi-step Open Responses orchestration storage.
//! Drives [`crate::run_response_loop`] alongside the existing
//! `ToolExecutor` trait — there is deliberately no parallel multi-step
//! execution trait. Tool dispatch goes through `ToolExecutor::execute`,
//! sub-agent recursion is signalled by `ToolKind::Agent` on the
//! tool's schema, and model calls are fired by the loop directly via
//! the configured HTTP client.
pub use ;
pub use ;
pub use ;