pub struct ContextFeatureSet {
pub tool_offload: bool,
pub scratchpad: bool,
pub semantic: bool,
pub provenance: bool,
pub experiential: bool,
pub scheduled: bool,
}Expand description
The resolved on/off state of every context feature (Phase 26, #588) — the
effective set after a manager preset’s defaults and config/session
overrides are applied.
Fields§
§tool_offload: bool§scratchpad: bool§semantic: bool§provenance: bool§experiential: bool§scheduled: boolImplementations§
Source§impl ContextFeatureSet
impl ContextFeatureSet
Sourcepub fn get(&self, f: ContextFeature) -> bool
pub fn get(&self, f: ContextFeature) -> bool
Read one feature’s resolved state.
Sourcepub fn set(&mut self, f: ContextFeature, on: bool)
pub fn set(&mut self, f: ContextFeature, on: bool)
Set one feature’s resolved state.
Sourcepub fn enabled(self) -> Vec<ContextFeature>
pub fn enabled(self) -> Vec<ContextFeature>
The features currently on, in display order.
Sourcepub fn base_for(manager: ContextManager, kind: BackendKind) -> Self
pub fn base_for(manager: ContextManager, kind: BackendKind) -> Self
The base feature set before [context.features] / session overrides:
the manager preset’s bundle, with tool_offload defaulted ON because
it is local, deterministic spill storage and should not depend on
semantic embedding availability. Local-assist features (scratchpad,
semantic, and scheduled) additionally default ON for local
(BackendKind::Ollama) backends. A weak local model needs the <plan> /
<state> ledger to carry a checklist across tool-call rounds instead of
re-deriving state each round (Step 27.4), and semantic retrieval should
be ready without a live toggle once an embedder is configured. Explicit
overrides still win — they layer on top via ContextFeatures::apply_to.
Note: a local vLLM / llama.cpp server reports as Openai (that’s the
wire protocol, not the host), so those users opt in via
[context.features] rather than getting it by default.
Trait Implementations§
Source§impl Clone for ContextFeatureSet
impl Clone for ContextFeatureSet
Source§fn clone(&self) -> ContextFeatureSet
fn clone(&self) -> ContextFeatureSet
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for ContextFeatureSet
Source§impl Debug for ContextFeatureSet
impl Debug for ContextFeatureSet
Source§impl Default for ContextFeatureSet
impl Default for ContextFeatureSet
Source§fn default() -> ContextFeatureSet
fn default() -> ContextFeatureSet
impl Eq for ContextFeatureSet
Source§impl PartialEq for ContextFeatureSet
impl PartialEq for ContextFeatureSet
Source§fn eq(&self, other: &ContextFeatureSet) -> bool
fn eq(&self, other: &ContextFeatureSet) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for ContextFeatureSet
Auto Trait Implementations§
impl Freeze for ContextFeatureSet
impl RefUnwindSafe for ContextFeatureSet
impl Send for ContextFeatureSet
impl Sync for ContextFeatureSet
impl Unpin for ContextFeatureSet
impl UnsafeUnpin for ContextFeatureSet
impl UnwindSafe for ContextFeatureSet
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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>
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>
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