Skip to main content

GroupingOptions

Struct GroupingOptions 

Source
pub struct GroupingOptions<'a, C: GroupingCache, A: ArtefactStore> {
    pub backend: &'a dyn LlmBackend,
    pub cache: &'a C,
    pub artefacts: &'a A,
    pub fetch: &'a str,
    pub progress: Option<&'a (dyn Fn(Progress) + Send + Sync)>,
}

Fields§

§backend: &'a dyn LlmBackend

The backend, always injected. dyn because config picks which command to run — the one runtime-open seam in this stage (ADR 0016, 0020).

Cancellation is a property of the backend the caller built (llmio::CommandBackend::with_cancel), not of the pipeline: killing an in-flight subprocess was never a pipeline concern.

§cache: &'a C

Where groupings are pinned. Disabling is a state of the cache (FsGroupingCache::disabled()), not an Option here.

§artefacts: &'a A

Where the pre-group document is left for the model to read (ADR 0022).

§fetch: &'a str

The executable the model runs to fetch from that document — normally this process, so composition supplies it.

The backend’s tool allowlist MUST be built from the same string (llmio::CommandBackend::claude_cli), or the prompt names a command the model is not permitted to run.

§progress: Option<&'a (dyn Fn(Progress) + Send + Sync)>

Stage notifications for renderers that show progress while the pipeline runs (the TUI’s splash screen). None reports nothing.

Auto Trait Implementations§

§

impl<'a, C, A> !RefUnwindSafe for GroupingOptions<'a, C, A>

§

impl<'a, C, A> !UnwindSafe for GroupingOptions<'a, C, A>

§

impl<'a, C, A> Freeze for GroupingOptions<'a, C, A>

§

impl<'a, C, A> Send for GroupingOptions<'a, C, A>
where &'a C: Send, &'a A: Send,

§

impl<'a, C, A> Sync for GroupingOptions<'a, C, A>
where &'a C: Sync, &'a A: Sync,

§

impl<'a, C, A> Unpin for GroupingOptions<'a, C, A>

§

impl<'a, C, A> UnsafeUnpin for GroupingOptions<'a, C, A>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.