pub struct AgentEvent {
pub id: Uuid,
pub session_id: Uuid,
pub parent_id: Option<Uuid>,
pub timestamp: DateTime<Utc>,
pub stream_id: StreamId,
pub payload: EventPayload,
pub metadata: Option<Value>,
}Expand description
Agent event Maps 1:1 to database table row
Fields§
§id: UuidUnique event ID
session_id: UuidSession/trace ID (groups entire conversation)
parent_id: Option<Uuid>Parent event ID in time-series chain (Linked List structure) None for root events (first User input)
timestamp: DateTime<Utc>Event timestamp (UTC)
stream_id: StreamIdStream identifier (main, sidechain, subagent) Enables parallel conversation streams within same session
payload: EventPayloadEvent type and content (flattened enum)
metadata: Option<Value>Provider-specific raw data and debug information Examples: Codex “call_id”, Gemini “finish_reason”, etc.
Trait Implementations§
Source§impl Clone for AgentEvent
impl Clone for AgentEvent
Source§fn clone(&self) -> AgentEvent
fn clone(&self) -> AgentEvent
Returns a duplicate of the value. Read more
1.0.0 · 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 AgentEvent
impl Debug for AgentEvent
Source§impl<'de> Deserialize<'de> for AgentEvent
impl<'de> Deserialize<'de> for AgentEvent
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
Auto Trait Implementations§
impl Freeze for AgentEvent
impl RefUnwindSafe for AgentEvent
impl Send for AgentEvent
impl Sync for AgentEvent
impl Unpin for AgentEvent
impl UnwindSafe for AgentEvent
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