pub struct RoutingInputs {
pub sensitivity: SensitivityClass,
pub local_available: bool,
pub external_consented: bool,
pub requires_capability: Option<String>,
pub local_has_capability: bool,
pub estimated_cost_microcents: u64,
}Expand description
The inputs to a routing decision for a single curated job.
All fields are supplied by the caller from the job’s curation metadata and the current device/consent state; this module treats them as ground truth and does not fetch them.
Fields§
§sensitivity: SensitivityClassSensitivity of the data the job will touch. [SensitivityClass::Classified] is
sanctuary-grade and is never routed off-device.
local_available: boolWhether a local, in-process inference engine is available to run the job.
external_consented: boolWhether the person has explicitly consented to using an external MCP provider for this job. Consent is a precondition for every remote path (never assumed).
requires_capability: Option<String>A capability the job requires (e.g. a specific model or tool), if any. When present and not satisfied locally, the job needs an external provider.
local_has_capability: boolWhether the local engine can satisfy RoutingInputs::requires_capability. Ignored
when no capability is required.
estimated_cost_microcents: u64The estimated cost of the remote execution, in microcents (1 cent = 1_000_000 microcents). Only compared against the ceiling when a remote path is chosen.
Trait Implementations§
Source§impl Clone for RoutingInputs
impl Clone for RoutingInputs
Source§fn clone(&self) -> RoutingInputs
fn clone(&self) -> RoutingInputs
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RoutingInputs
impl Debug for RoutingInputs
Source§impl<'de> Deserialize<'de> for RoutingInputs
impl<'de> Deserialize<'de> for RoutingInputs
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for RoutingInputs
impl PartialEq for RoutingInputs
Source§fn eq(&self, other: &RoutingInputs) -> bool
fn eq(&self, other: &RoutingInputs) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for RoutingInputs
impl Serialize for RoutingInputs
impl Eq for RoutingInputs
impl StructuralPartialEq for RoutingInputs
Auto Trait Implementations§
impl Freeze for RoutingInputs
impl RefUnwindSafe for RoutingInputs
impl Send for RoutingInputs
impl Sync for RoutingInputs
impl Unpin for RoutingInputs
impl UnsafeUnpin for RoutingInputs
impl UnwindSafe for RoutingInputs
Blanket Implementations§
§impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more