#[non_exhaustive]pub enum SessionEvent {
Show 17 variants
BackgroundJobTerminal {
session_id: String,
session_generation: u64,
summary: BackgroundJobTerminalSummary,
},
SubmissionQueued {
session_id: String,
submission_id: String,
sender_generation: u64,
source: SubmissionSource,
item_count: usize,
total_text_bytes: usize,
},
SubmissionStarted {
session_id: String,
submission_id: String,
sender_generation: u64,
turn_id: String,
},
StructuredSubmissionStarted {
session_id: String,
session_generation: u64,
submission: StructuredSubmission,
receipt_id: String,
turn_id: String,
},
StructuredSubmissionInjected {
session_id: String,
session_generation: u64,
submission: StructuredSubmission,
receipt_id: String,
turn_id: String,
},
SubmissionRejected {
session_id: String,
submission_id: String,
sender_generation: u64,
reason: SubmissionRejectionReason,
},
SubmissionPaused {
session_id: String,
session_generation: u64,
submission_id: String,
receipt_id: String,
reason: SubmissionRejectionReason,
},
SubmissionResolved {
session_id: String,
session_generation: u64,
submission_id: String,
receipt_id: String,
state: PendingSubmissionState,
},
SubmissionReceipt {
session_id: String,
session_generation: u64,
submission_id: String,
reservation_id: String,
receipt_id: String,
source: SubmissionSource,
item_count: usize,
total_text_bytes: usize,
disposition: SubmissionReceiptDisposition,
},
StructuredTurnEvent {
session_id: String,
session_generation: u64,
source: SubmissionSource,
submission_id: String,
receipt_id: String,
turn_id: String,
sequence: u64,
payload: TurnEventPayload,
},
EntriesCommitted {
session_id: String,
turn_id: String,
entry_ids: Vec<String>,
},
TurnEvent {
session_id: String,
turn_id: String,
sequence: u64,
payload: TurnEventPayload,
},
AgentEvent {
event: AgentEvent,
},
ApprovalRequired {
tool_name: String,
arguments: String,
call_id: String,
},
TurnStarted {
turn_id: String,
},
TurnCompleted {
turn_id: String,
status: TurnCompletionStatus,
},
Error {
message: String,
},
}Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
BackgroundJobTerminal
One live-session background job reached its unique terminal state. This event is not persisted and never starts a provider turn.
SubmissionQueued
Fields
§
source: SubmissionSourceSubmissionStarted
StructuredSubmissionStarted
Authoritative model-visible projection emitted immediately before a structured Turn starts. The Actor, not the receipt observer, defines the visible ordering when retained work precedes a new resume item.
Fields
§
submission: StructuredSubmissionStructuredSubmissionInjected
A durably accepted steering submission was committed to the continuation context of a running structured Turn at a complete tool-call boundary. Cancellation can still prevent the subsequent Provider request.
Fields
§
submission: StructuredSubmissionSubmissionRejected
Fields
§
reason: SubmissionRejectionReasonSubmissionPaused
Fields
§
reason: SubmissionRejectionReasonSubmissionResolved
A durable submission was resolved without Provider execution: a pre-start cancellation, or an unacknowledged boundary handoff failure.
Fields
§
state: PendingSubmissionStateSubmissionReceipt
StructuredTurnEvent
EntriesCommitted
TurnEvent
AgentEvent
Fields
§
event: AgentEventApprovalRequired
TurnStarted
TurnCompleted
Error
Trait Implementations§
Source§impl Clone for SessionEvent
impl Clone for SessionEvent
Source§fn clone(&self) -> SessionEvent
fn clone(&self) -> SessionEvent
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 SessionEvent
impl Debug for SessionEvent
Source§impl<'de> Deserialize<'de> for SessionEvent
impl<'de> Deserialize<'de> for SessionEvent
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 SessionEvent
impl RefUnwindSafe for SessionEvent
impl Send for SessionEvent
impl Sync for SessionEvent
impl Unpin for SessionEvent
impl UnsafeUnpin for SessionEvent
impl UnwindSafe for SessionEvent
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