pub struct InboxMessage {
pub from_agent_id: String,
pub from_goal_id: GoalId,
pub to_agent_id: String,
pub body: String,
pub sent_at: DateTime<Utc>,
pub correlation_id: Option<Uuid>,
}Expand description
Per-goal inbox message — fire-and-forget peer-to-peer communication. Carries provenance fields so the receiver knows who wrote and (optionally) which goal originated the message.
Fields§
§from_agent_id: StringSending agent’s stable id (matches AgentConfig.id).
from_goal_id: GoalIdSender’s goal id at the time of sending. Useful for the receiver to reply via the sender’s inbox subject.
to_agent_id: StringReceiver’s agent id (the to: argument resolved to a
concrete name). Repeated on the wire so subscribers don’t
have to parse the subject string.
body: StringPlain text body. Empty body is invalid (sender-side validation rejects).
sent_at: DateTime<Utc>UTC timestamp at send time.
correlation_id: Option<Uuid>Optional correlation id. When set, a reply may carry the same value so request/response patterns work without a separate transport.
Trait Implementations§
Source§impl Clone for InboxMessage
impl Clone for InboxMessage
Source§fn clone(&self) -> InboxMessage
fn clone(&self) -> InboxMessage
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for InboxMessage
impl Debug for InboxMessage
Source§impl<'de> Deserialize<'de> for InboxMessage
impl<'de> Deserialize<'de> for InboxMessage
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for InboxMessage
Source§impl PartialEq for InboxMessage
impl PartialEq for InboxMessage
Source§impl Serialize for InboxMessage
impl Serialize for InboxMessage
impl StructuralPartialEq for InboxMessage
Auto Trait Implementations§
impl Freeze for InboxMessage
impl RefUnwindSafe for InboxMessage
impl Send for InboxMessage
impl Sync for InboxMessage
impl Unpin for InboxMessage
impl UnsafeUnpin for InboxMessage
impl UnwindSafe for InboxMessage
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
Mutably borrows from an owned value. Read more
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§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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> 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>
Converts
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>
Converts
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