pub struct NoopElicitationInvoker;Expand description
ElicitationInvoker impl that returns NotFound for every call.
The default for evaluator callers that run no elicitation steps —
they must pass something implementing the trait, but the noop never
actually gets invoked. Mirrors NoopDelegationInvoker; tests and
hosts that haven’t wired a real channel backend pass this.
Trait Implementations§
Source§impl ElicitationInvoker for NoopElicitationInvoker
impl ElicitationInvoker for NoopElicitationInvoker
Source§fn dispatch<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
step: &'life1 ElicitStep,
_resolved_from: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<ElicitationDispatch, ElicitationError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn dispatch<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
step: &'life1 ElicitStep,
_resolved_from: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<ElicitationDispatch, ElicitationError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
First arrival. Register the intent and open the channel
backchannel for
step, returning the correlation id plus the
pending metadata the evaluator writes into the bag
(elicitation.id / .approver / .intent_id). Short and
synchronous — the human’s decision happens after this returns,
inside the channel. Read moreSource§fn check<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_step: &'life1 ElicitStep,
id: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<ElicitationStatus, ElicitationError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn check<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_step: &'life1 ElicitStep,
id: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<ElicitationStatus, ElicitationError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Retry. Read the current status of a dispatched elicitation by
id without blocking — Pending until the human acts, then
Resolved (carrying approved/denied) or Expired. step is
passed (the same step that dispatched) so the invoker can resolve
which handler plugin owns this elicitation — on a retry only the
id is in the bag, but the step is still in scope.Source§fn validate<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_step: &'life1 ElicitStep,
id: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<ElicitationValidation, ElicitationError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn validate<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_step: &'life1 ElicitStep,
id: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<ElicitationValidation, ElicitationError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Resolution. Verify that the resolved response is genuine — the
signed token validates, its intent binding matches this
id, and
the responder is the resolved approver. Returns the verdict plus
the facts the evaluator records for audit. The runtime applies the
scope-over-args check separately before honoring an approval.
step resolves the owning handler plugin (see check).Auto Trait Implementations§
impl Freeze for NoopElicitationInvoker
impl RefUnwindSafe for NoopElicitationInvoker
impl Send for NoopElicitationInvoker
impl Sync for NoopElicitationInvoker
impl Unpin for NoopElicitationInvoker
impl UnsafeUnpin for NoopElicitationInvoker
impl UnwindSafe for NoopElicitationInvoker
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