pub struct AitpEnvelope {
pub version: String,
pub message_type: MessageType,
pub message_id: Uuid,
pub timestamp: Timestamp,
pub sender: Sender,
pub payload: Value,
pub signature: String,
}Expand description
The standard AITP message envelope (RFC-AITP-0001 §5.1).
payload is kept as raw JSON so that protocol-specific crates
(aitp-handshake, aitp-tct, etc.) can parse it into their own typed
payload structs. The envelope crate does not need to know every payload
type.
The schema is additionalProperties: false — the envelope has no
extensions slot. Forward compatibility happens inside payload per
RFC-AITP-0012.
Fields§
§version: StringProtocol version. MUST be "aitp/0.2".
message_type: MessageTypeWire-level message type.
message_id: UuidUUID v4 (hyphenated lowercase). Used for replay-prevention deduplication.
timestamp: TimestampUnix timestamp in seconds.
sender: SenderIdentifier of the sending agent.
payload: ValueType-specific payload, kept as raw JSON until parsed by a protocol crate.
signature: Stringbase64url-unpadded Ed25519 signature over
sha256(message_id|ts|sender|hex(sha256(jcs(payload)))).
Trait Implementations§
Source§impl Clone for AitpEnvelope
impl Clone for AitpEnvelope
Source§fn clone(&self) -> AitpEnvelope
fn clone(&self) -> AitpEnvelope
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 AitpEnvelope
impl Debug for AitpEnvelope
Source§impl<'de> Deserialize<'de> for AitpEnvelope
impl<'de> Deserialize<'de> for AitpEnvelope
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 AitpEnvelope
Source§impl PartialEq for AitpEnvelope
impl PartialEq for AitpEnvelope
Source§impl Serialize for AitpEnvelope
impl Serialize for AitpEnvelope
impl StructuralPartialEq for AitpEnvelope
Auto Trait Implementations§
impl Freeze for AitpEnvelope
impl RefUnwindSafe for AitpEnvelope
impl Send for AitpEnvelope
impl Sync for AitpEnvelope
impl Unpin for AitpEnvelope
impl UnsafeUnpin for AitpEnvelope
impl UnwindSafe for AitpEnvelope
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,
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§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.