pub async fn execute_tools_parallel( tools: &HashMap<String, Arc<dyn Tool>>, calls: &[ToolCall], state: &Value, ) -> Vec<ToolExecution>
Execute tool calls in parallel using the same state snapshot for every call.