pub struct LifecyclePolicy {
pub decay_rate: f32,
pub low_confidence_threshold: f32,
pub stale_days: i64,
pub similarity_threshold: f32,
pub forgetting_model: String,
pub base_stability_days: f32,
pub archetype_aware_decay: bool,
pub prune_unretrieved_after_days: Option<i64>,
pub reclaim_headroom_pct: f32,
pub reclaim_enabled: bool,
}Fields§
§decay_rate: f32§low_confidence_threshold: f32§stale_days: i64§similarity_threshold: f32§forgetting_model: StringForgetting curve (#1): ebbinghaus (default) or linear (legacy).
base_stability_days: f32Characteristic memory stability in days for the Ebbinghaus curve.
archetype_aware_decay: boolScale Ebbinghaus stability by fact archetype so structural evidence decays slower than inference. Default false keeps the baseline tuning unchanged.
prune_unretrieved_after_days: Option<i64>Archive single-confirmation facts untouched for this many days that were
never retrieved — dead weight regardless of confidence (#962). Defaults to
a conservative 90 days (#972): genuinely cold facts are archived (and
rehydrate on recall), so a store self-curates instead of only churning at
its cap. Set None/off to disable.
reclaim_headroom_pct: f32Proactive headroom on a capacity reclaim (#995): when a store reaches its
cap, settle it at 1 - reclaim_headroom_pct (e.g. 0.25 → 75%) instead
of churning right at the cap. Lossless — the reclaimed tail is archived
and restorable.
reclaim_enabled: boolMaster switch for the proactive reclaim (#995). false is the documented
escape hatch: trim only the overflow, no headroom. Eviction stays lossless
either way.
Trait Implementations§
Source§impl Clone for LifecyclePolicy
impl Clone for LifecyclePolicy
Source§fn clone(&self) -> LifecyclePolicy
fn clone(&self) -> LifecyclePolicy
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for LifecyclePolicy
impl Debug for LifecyclePolicy
Source§impl Default for LifecyclePolicy
impl Default for LifecyclePolicy
Source§impl<'de> Deserialize<'de> for LifecyclePolicywhere
LifecyclePolicy: Default,
impl<'de> Deserialize<'de> for LifecyclePolicywhere
LifecyclePolicy: Default,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for LifecyclePolicy
impl RefUnwindSafe for LifecyclePolicy
impl Send for LifecyclePolicy
impl Sync for LifecyclePolicy
impl Unpin for LifecyclePolicy
impl UnsafeUnpin for LifecyclePolicy
impl UnwindSafe for LifecyclePolicy
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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