pub struct PlannedToolCall {
pub request_id: String,
pub server_id: String,
pub tool_name: String,
pub action: Option<String>,
pub parameters: Value,
pub model_metadata: Option<ModelMetadata>,
pub dependencies: Vec<String>,
}Expand description
One step in a submitted plan.
Fields§
§request_id: StringPlanner-assigned identifier for this step. Reused as the
request identifier when the step is synthesised into a full
ToolCallRequest for capability and guard evaluation.
server_id: StringTarget tool-server id.
tool_name: StringName of the tool to invoke.
action: Option<String>Free-form tag describing the action the planner is modelling
(e.g. "read", "write", "transfer"). The kernel does not
interpret this field in v1; it is recorded for telemetry and
future pre-invocation guards that want to discriminate on intent
without inspecting parameters.
parameters: ValueArguments the planner intends to pass to the tool server.
model_metadata: Option<ModelMetadata>Optional metadata describing the model executing the planner.
Scoped per step (not per plan) so an orchestrator that routes
individual steps across different models can declare each step’s
model independently. Consumed by Constraint::ModelConstraint
enforcement in the same way as runtime ToolCallRequests.
dependencies: Vec<String>Other planned step ids this step conceptually depends on.
Advisory only in v1: the kernel records the edges for downstream audit but does not topo-sort the plan, reject cycles, or suppress evaluation of dependent steps when a predecessor is denied.
Trait Implementations§
Source§impl Clone for PlannedToolCall
impl Clone for PlannedToolCall
Source§fn clone(&self) -> PlannedToolCall
fn clone(&self) -> PlannedToolCall
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more