pub trait ProviderArgumentStore: Send + Sync {
// Required methods
fn store_provider_arguments(
&self,
provider_ref: &str,
call_id: &str,
canonical_tool_name: &CanonicalToolName,
raw_arguments: &str,
) -> Result<Option<ContentRef>, AgentError>;
fn load_provider_arguments_json(
&self,
content_ref: &ContentRef,
) -> Result<Value, AgentError>;
}Expand description
Read/write store contract for raw provider tool-call arguments.
Implementations must keep raw arguments out of journals, events, summaries, and debug output, returning content refs for later policy-checked access.
Required Methods§
Sourcefn store_provider_arguments(
&self,
provider_ref: &str,
call_id: &str,
canonical_tool_name: &CanonicalToolName,
raw_arguments: &str,
) -> Result<Option<ContentRef>, AgentError>
fn store_provider_arguments( &self, provider_ref: &str, call_id: &str, canonical_tool_name: &CanonicalToolName, raw_arguments: &str, ) -> Result<Option<ContentRef>, AgentError>
Stores raw provider tool arguments and returns a content ref when the host wants executors to resolve arguments through normal content policy.
Sourcefn load_provider_arguments_json(
&self,
content_ref: &ContentRef,
) -> Result<Value, AgentError>
fn load_provider_arguments_json( &self, content_ref: &ContentRef, ) -> Result<Value, AgentError>
Loads stored provider tool arguments as JSON through the same content
ref returned by store_provider_arguments.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".