pub struct IngestMultistepHandler {
pub dispatch: Arc<dyn LlmDispatch>,
pub tier: FeatureTier,
}Expand description
Handler bundle. Keeps the dispatch implementation behind an Arc<dyn LlmDispatch> so the daemon-runtime side can construct it once at
MCP boot and re-use across calls. The dispatch is None until the
daemon wires an LLM client (semantic-tier and below); the tier gate
in handle_ingest_multistep short-circuits before consulting the
dispatch in that case.
Fields§
§dispatch: Arc<dyn LlmDispatch>LLM dispatch — production binding via
crate::multistep_ingest::executor::OllamaDispatch; a mock
queue under tests.
tier: FeatureTierDaemon’s resolved feature tier. Retained as defense-in-depth so callers outside the MCP path still have it available.
Implementations§
Source§impl IngestMultistepHandler
impl IngestMultistepHandler
Sourcepub fn new(dispatch: Arc<dyn LlmDispatch>, tier: FeatureTier) -> Self
pub fn new(dispatch: Arc<dyn LlmDispatch>, tier: FeatureTier) -> Self
Construct a handler with the supplied dispatch + tier.
Auto Trait Implementations§
impl !RefUnwindSafe for IngestMultistepHandler
impl !UnwindSafe for IngestMultistepHandler
impl Freeze for IngestMultistepHandler
impl Send for IngestMultistepHandler
impl Sync for IngestMultistepHandler
impl Unpin for IngestMultistepHandler
impl UnsafeUnpin for IngestMultistepHandler
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<T> ErasedDestructor for Twhere
T: 'static,
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 more