pub struct SessionStartPayload {
pub intent: String,
pub participants: Vec<String>,
pub mode_version: String,
pub configuration_version: String,
pub policy_version: String,
pub ttl_ms: i64,
pub roots: Vec<Root>,
pub context_id: String,
pub extensions: HashMap<String, Vec<u8>>,
pub max_suspend_ms: i64,
}Fields§
§intent: String§participants: Vec<String>§mode_version: String§configuration_version: String§policy_version: String§ttl_ms: i64§roots: Vec<Root>§context_id: StringGlobally-unique context reference (e.g. “ctx:sha256:
extensions: HashMap<String, Vec<u8>>Generic extension blocks keyed by protocol identifier. Each value is protocol-specific bytes (typically JSON or sub-proto). The runtime MUST preserve all entries but MUST NOT depend on them for core session lifecycle (RFC-MACP-0001 §7.X).
max_suspend_ms: i64Maximum cumulative suspended duration in milliseconds before a SUSPENDED session transitions to EXPIRED (RFC-MACP-0001 §7.5). Bound at session start like ttl_ms: 0 (or absent) means “use the runtime’s configured default”. The runtime MUST record the resolved cap on the session so replay uses the bound value, never live runtime configuration — the cap is a deterministic replay input (RFC-MACP-0003 §2).
Trait Implementations§
Source§impl Clone for SessionStartPayload
impl Clone for SessionStartPayload
Source§fn clone(&self) -> SessionStartPayload
fn clone(&self) -> SessionStartPayload
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 SessionStartPayload
impl Debug for SessionStartPayload
Source§impl Default for SessionStartPayload
impl Default for SessionStartPayload
Source§fn default() -> SessionStartPayload
fn default() -> SessionStartPayload
Source§impl Message for SessionStartPayload
impl Message for SessionStartPayload
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.Source§impl PartialEq for SessionStartPayload
impl PartialEq for SessionStartPayload
impl StructuralPartialEq for SessionStartPayload
Auto Trait Implementations§
impl Freeze for SessionStartPayload
impl RefUnwindSafe for SessionStartPayload
impl Send for SessionStartPayload
impl Sync for SessionStartPayload
impl Unpin for SessionStartPayload
impl UnsafeUnpin for SessionStartPayload
impl UnwindSafe for SessionStartPayload
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<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request