pub enum RoutingReasonCode {
PolicyMatch,
BudgetWithinLimits,
ApprovalGate,
Skip,
FallbackDefault,
}Expand description
Stable, namespaced reason code for a routing decision. Matches the dispatch-time policy outcomes the orchestrator already enumerates, so each code aligns with an existing policy-engine return value.
Variants§
PolicyMatch
A policy rule matched explicitly and selected the chosen candidate.
BudgetWithinLimits
The chosen candidate satisfies all budget axes; no policy rule was needed.
ApprovalGate
The chosen candidate is allowed but requires approval before the dispatched step can start. The audit record is written now so the audit chain is complete even if approval is later denied.
Skip
The subtask was deliberately not dispatched (e.g. conditional
skipped, scheduler-imposed truncation). chosen still records the
would-have-been binding so replays can attribute the skip.
FallbackDefault
No policy match and no scoring signal — the orchestrator fell back to the workflow’s declared default. Surfaced as its own code so “we routed because nothing else fired” is auditable.
Implementations§
Trait Implementations§
Source§impl Clone for RoutingReasonCode
impl Clone for RoutingReasonCode
Source§fn clone(&self) -> RoutingReasonCode
fn clone(&self) -> RoutingReasonCode
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for RoutingReasonCode
Source§impl Debug for RoutingReasonCode
impl Debug for RoutingReasonCode
Source§impl<'de> Deserialize<'de> for RoutingReasonCode
impl<'de> Deserialize<'de> for RoutingReasonCode
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>,
impl Eq for RoutingReasonCode
Source§impl Hash for RoutingReasonCode
impl Hash for RoutingReasonCode
Source§impl PartialEq for RoutingReasonCode
impl PartialEq for RoutingReasonCode
Source§impl Serialize for RoutingReasonCode
impl Serialize for RoutingReasonCode
impl StructuralPartialEq for RoutingReasonCode
Auto Trait Implementations§
impl Freeze for RoutingReasonCode
impl RefUnwindSafe for RoutingReasonCode
impl Send for RoutingReasonCode
impl Sync for RoutingReasonCode
impl Unpin for RoutingReasonCode
impl UnsafeUnpin for RoutingReasonCode
impl UnwindSafe for RoutingReasonCode
Blanket Implementations§
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.