#[non_exhaustive]pub enum Rule {
RunEnded,
DuplicateRunStarted,
DuplicateStart,
NotOpen,
UnknownId,
OpenAtFinish,
OutOfOrder,
OwnerMismatch,
}Expand description
The ordering rule an event broke.
Each variant is one check in the state machine described on
verify.
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.
RunEnded
No event may follow RUN_FINISHED or RUN_ERROR.
DuplicateRunStarted
A run starts exactly once.
DuplicateStart
A message, tool call, reasoning block or step was opened twice under the same id.
NotOpen
Content or a terminator arrived for something that is not open.
UnknownId
An event referenced an id that was never introduced.
OpenAtFinish
RUN_FINISHED arrived while something was still open.
OutOfOrder
The event is legal but arrived in the wrong place — a tool result before
its TOOL_CALL_END, for instance.
OwnerMismatch
A continuation, terminator or re-open carried a subagentRunId that
disagrees with the subagent that opened the entity — or a tool call was
tagged with one subagent while its parent message belongs to another.
Implementations§
Trait Implementations§
impl Copy for Rule
impl Eq for Rule
impl StructuralPartialEq for Rule
Auto Trait Implementations§
impl Freeze for Rule
impl RefUnwindSafe for Rule
impl Send for Rule
impl Sync for Rule
impl Unpin for Rule
impl UnsafeUnpin for Rule
impl UnwindSafe for Rule
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.