pub struct Attempt {
pub style: PromptStyle,
pub cache_ttl: CacheTtl,
pub progress: Option<Arc<dyn Progress>>,
pub format: &'static dyn Adapter,
pub present: PresentContext,
}Expand description
The coded skill.
Everything its decisions depend on — the bundle, the policy’s command prefixes and the limits — arrives in the run’s input, so it is journaled and strict replay needs no configuration. Only the prompt dialect is construction-time, and it is part of each model call’s effect key.
Fields§
§style: PromptStylePrompt dialect.
cache_ttl: CacheTtlCache breakpoint lifetime.
progress: Option<Arc<dyn Progress>>Where live progress goes; not journaled, None in replay.
format: &'static dyn AdapterThe project’s spec format.
present: PresentContextThe sandbox, as a person asked about a command is told; live only.
Trait Implementations§
Source§impl Skill for Attempt
impl Skill for Attempt
fn descriptor(&self) -> SkillDescriptor
fn invoke<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
cx: &'life1 mut StepCtx<'life2>,
input: Tainted<Value>,
) -> Pin<Box<dyn Future<Output = Result<Outcome, SkillError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Source§fn compensation(&self) -> Compensation
fn compensation(&self) -> Compensation
This step’s place in the saga. Read more
Source§fn compensate<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_cx: &'life1 mut StepCtx<'life2>,
_output: &'life3 Tainted<Value>,
) -> Pin<Box<dyn Future<Output = Result<(), SkillError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
fn compensate<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_cx: &'life1 mut StepCtx<'life2>,
_output: &'life3 Tainted<Value>,
) -> Pin<Box<dyn Future<Output = Result<(), SkillError>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
Undo this step, because a later one failed. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for Attempt
impl !UnwindSafe for Attempt
impl Forget for Attempt
impl Freeze for Attempt
impl Send for Attempt
impl Sync for Attempt
impl Unpin for Attempt
impl UnsafeUnpin for Attempt
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoMaybeUndefined<T> for T
impl<T> IntoMaybeUndefined<T> for T
Source§fn into_maybe_undefined(self) -> MaybeUndefined<T>
fn into_maybe_undefined(self) -> MaybeUndefined<T>
Converts this value into a three-state builder argument.
Source§impl<T> IntoOption<T> for T
impl<T> IntoOption<T> for T
Source§fn into_option(self) -> Option<T>
fn into_option(self) -> Option<T>
Converts this value into an optional builder argument.
Creates a shared type from an unshared type.