pub struct RoutingPlan {
pub event: LifecycleEventKind,
pub event_id: String,
pub invocation_id: String,
pub adapter: AdapterManifest,
pub integration_mode: IntegrationMode,
pub frame_context: Option<FrameContext>,
pub payload_refs: Vec<PayloadRef>,
pub capability_snapshot_ref: Option<String>,
pub sequence: Option<u64>,
pub idempotency_key: Option<String>,
}Expand description
Pre-dispatch routing plan produced by route.
Holds only data downstream stages need. Carries a clone of the
resolved AdapterManifest so the plan is 'static-friendly —
downstream stages may persist or hand it across threads without
being tied to the registry’s lifetime.
The plan preserves PayloadRefs exactly as received. The router
does not transform them. Issue #3’s renderer will consume them
alongside the lifecycle event, adapter identity, integration mode,
frame context, and (when present) payload envelopes.
Fields§
§event: LifecycleEventKindThe lifecycle event kind being routed.
event_id: StringCaller-supplied event id (already validated non-empty).
invocation_id: StringCaller-supplied invocation id (already validated non-empty).
adapter: AdapterManifestResolved adapter manifest. Both adapter_id and
adapter_version matched the request.
integration_mode: IntegrationModeIntegration mode the caller declared on the request.
Negotiation against adapter.integration_modes is a follow-up
router issue; this skeleton preserves the declared mode
verbatim.
frame_context: Option<FrameContext>Frame context, when supplied. Already validated.
payload_refs: Vec<PayloadRef>Opaque payload references, in the order the caller supplied them. The router does not inspect or reorder them.
capability_snapshot_ref: Option<String>Optional capability-snapshot reference; opaque to the router.
sequence: Option<u64>Optional sequence number from the request.
idempotency_key: Option<String>Optional idempotency key from the request.
Trait Implementations§
Source§impl Clone for RoutingPlan
impl Clone for RoutingPlan
Source§fn clone(&self) -> RoutingPlan
fn clone(&self) -> RoutingPlan
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 RoutingPlan
impl Debug for RoutingPlan
Source§impl PartialEq for RoutingPlan
impl PartialEq for RoutingPlan
Source§fn eq(&self, other: &RoutingPlan) -> bool
fn eq(&self, other: &RoutingPlan) -> bool
self and other values to be equal, and is used by ==.impl Eq for RoutingPlan
impl StructuralPartialEq for RoutingPlan
Auto Trait Implementations§
impl Freeze for RoutingPlan
impl RefUnwindSafe for RoutingPlan
impl Send for RoutingPlan
impl Sync for RoutingPlan
impl Unpin for RoutingPlan
impl UnsafeUnpin for RoutingPlan
impl UnwindSafe for RoutingPlan
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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.