pub enum LoopTrigger {
Show 36 variants
StartRun,
ContextReady,
ProjectionReady,
ToolUse,
StreamRuleMatch,
EndTurn,
ProviderFailure,
MaxIterationsReached {
outcome: MaxIterationOutcome,
},
CompactionNeeded,
StreamStopRun,
StreamAbortAndRetry,
StreamPauseForApproval,
StreamUnsafeIntervention,
PolicyAllow,
PolicyAsk,
PolicyDeny,
Approved,
ApprovalDenied,
ApprovalTimeout,
ApprovalTransportFatal,
StreamApprovalResumed,
ContinueWithDeniedResult,
FailOnDenied,
ToolComplete,
ToolInterrupt,
ToolFailure,
WaitForResume,
ResumeAllowed,
ResumeDenied,
CompactionComplete,
ContinueLoop,
FailureClassified {
classification: RecoveryClassification,
},
RepairApplied,
RepairCompletedTerminal,
RecoveryIrrecoverable,
CancelRequested,
}Expand description
Enumerates the finite loop trigger cases. Serialized names are part of the SDK contract; update fixtures when variants change.
Variants§
StartRun
Use this variant when the contract needs to represent start run; selecting it has no side effect by itself.
ContextReady
Use this variant when the contract needs to represent context ready; selecting it has no side effect by itself.
ProjectionReady
Use this variant when the contract needs to represent projection ready; selecting it has no side effect by itself.
ToolUse
Use this variant when the contract needs to represent tool use; selecting it has no side effect by itself.
StreamRuleMatch
Use this variant when the contract needs to represent stream rule match; selecting it has no side effect by itself.
EndTurn
Use this variant when the contract needs to represent end turn; selecting it has no side effect by itself.
ProviderFailure
Use this variant when the contract needs to represent provider failure; selecting it has no side effect by itself.
MaxIterationsReached
Use this variant when the contract needs to represent max iterations reached; selecting it has no side effect by itself.
Fields
outcome: MaxIterationOutcomeOutcome used by this record or request.
CompactionNeeded
Use this variant when the contract needs to represent compaction needed; selecting it has no side effect by itself.
StreamStopRun
Use this variant when the contract needs to represent stream stop run; selecting it has no side effect by itself.
StreamAbortAndRetry
Use this variant when the contract needs to represent stream abort and retry; selecting it has no side effect by itself.
StreamPauseForApproval
Use this variant when the contract needs to represent stream pause for approval; selecting it has no side effect by itself.
StreamUnsafeIntervention
Use this variant when the contract needs to represent stream unsafe intervention; selecting it has no side effect by itself.
PolicyAllow
Use this variant when the contract needs to represent policy allow; selecting it has no side effect by itself.
PolicyAsk
Use this variant when the contract needs to represent policy ask; selecting it has no side effect by itself.
PolicyDeny
Use this variant when the contract needs to represent policy deny; selecting it has no side effect by itself.
Approved
Use this variant when the contract needs to represent approved; selecting it has no side effect by itself.
ApprovalDenied
Use this variant when the contract needs to represent approval denied; selecting it has no side effect by itself.
ApprovalTimeout
Use this variant when the contract needs to represent approval timeout; selecting it has no side effect by itself.
ApprovalTransportFatal
Use this variant when the contract needs to represent approval transport fatal; selecting it has no side effect by itself.
StreamApprovalResumed
Use this variant when the contract needs to represent stream approval resumed; selecting it has no side effect by itself.
ContinueWithDeniedResult
Use this variant when the contract needs to represent continue with denied result; selecting it has no side effect by itself.
FailOnDenied
Use this variant when the contract needs to represent fail on denied; selecting it has no side effect by itself.
ToolComplete
Use this variant when the contract needs to represent tool complete; selecting it has no side effect by itself.
ToolInterrupt
Use this variant when the contract needs to represent tool interrupt; selecting it has no side effect by itself.
ToolFailure
Use this variant when the contract needs to represent tool failure; selecting it has no side effect by itself.
WaitForResume
Use this variant when the contract needs to represent wait for resume; selecting it has no side effect by itself.
ResumeAllowed
Use this variant when the contract needs to represent resume allowed; selecting it has no side effect by itself.
ResumeDenied
Use this variant when the contract needs to represent resume denied; selecting it has no side effect by itself.
CompactionComplete
Use this variant when the contract needs to represent compaction complete; selecting it has no side effect by itself.
ContinueLoop
Use this variant when the contract needs to represent continue loop; selecting it has no side effect by itself.
FailureClassified
Use this variant when the contract needs to represent failure classified; selecting it has no side effect by itself.
Fields
classification: RecoveryClassificationClassification used by this record or request.
RepairApplied
Use this variant when the contract needs to represent repair applied; selecting it has no side effect by itself.
RepairCompletedTerminal
Use this variant when the contract needs to represent repair completed terminal; selecting it has no side effect by itself.
RecoveryIrrecoverable
Use this variant when the contract needs to represent recovery irrecoverable; selecting it has no side effect by itself.
CancelRequested
Use this variant when the contract needs to represent cancel requested; selecting it has no side effect by itself.
Trait Implementations§
Source§impl Clone for LoopTrigger
impl Clone for LoopTrigger
Source§fn clone(&self) -> LoopTrigger
fn clone(&self) -> LoopTrigger
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for LoopTrigger
Source§impl Debug for LoopTrigger
impl Debug for LoopTrigger
Source§impl<'de> Deserialize<'de> for LoopTrigger
impl<'de> Deserialize<'de> for LoopTrigger
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 LoopTrigger
Source§impl Hash for LoopTrigger
impl Hash for LoopTrigger
Source§impl PartialEq for LoopTrigger
impl PartialEq for LoopTrigger
Source§fn eq(&self, other: &LoopTrigger) -> bool
fn eq(&self, other: &LoopTrigger) -> bool
self and other values to be equal, and is used by ==.