pub struct ToolRoute {
pub capability_id: CapabilityId,
pub canonical_tool_name: CanonicalToolName,
pub namespace: CapabilityNamespace,
pub source: SourceRef,
pub destination: DestinationRef,
pub executor_ref: Option<ExecutorRef>,
pub policy_refs: Vec<PolicyRef>,
pub sidecar_refs: Vec<PackageSidecarRef>,
pub effect_class: EffectClass,
pub risk_class: RiskClass,
pub privacy: PrivacyClass,
pub retention: RetentionClass,
}Expand description
Carries tool route data across a host-port boundary. Constructing the value does not call the host; the port method that receives it documents any adapter, network, or storage effect.
Fields§
§capability_id: CapabilityIdStable capability identifier used for package projection and executable routing.
canonical_tool_name: CanonicalToolNameCanonical tool name used by this record or request.
namespace: CapabilityNamespaceNamespace that groups this capability or identifier. Use it to avoid collisions between packages, hosts, and extensions.
source: SourceRefSource label or ref for this item; it is metadata and does not fetch content by itself.
destination: DestinationRefDestination label or ref for this item; it is metadata and does not deliver content by itself.
executor_ref: Option<ExecutorRef>Typed executor ref reference. Resolving or executing it is a separate policy-gated step.
policy_refs: Vec<PolicyRef>Policy references that govern admission, projection, execution, or delivery.
sidecar_refs: Vec<PackageSidecarRef>References to typed package sidecars needed by this capability.
effect_class: EffectClassClassification value for effect class. Policy and projection paths use it for finite routing decisions.
risk_class: RiskClassRisk classification for the operation or capability. Policy uses it to decide whether approval, sandboxing, or denial is required.
privacy: PrivacyClassPrivacy class used for projection, telemetry, and raw-content access decisions.
retention: RetentionClassRetention class used by hosts and sinks when storing or exporting this item.