normalize_tool_call

Function normalize_tool_call 

Source
pub fn normalize_tool_call(
    name: String,
    arguments: Value,
    provider_call_id: Option<String>,
) -> ToolCallPayload
Expand description

Normalize raw tool call data into a typed ToolCallPayload variant

This function encapsulates provider-specific knowledge about:

  • Tool name mapping (e.g., “Read” -> FileRead variant)
  • Argument schema parsing (e.g., JSON -> FileReadArgs)
  • Fallback handling (unknown tools -> Generic variant)

§Arguments

  • name - Tool name from provider (e.g., “Read”, “Bash”, “mcp__o3__search”)
  • arguments - Raw JSON arguments from provider
  • provider_call_id - Optional provider-specific call identifier

§Returns

Typed ToolCallPayload variant with parsed arguments, or Generic variant as fallback