pub enum ConfidenceTier {
Confirmed,
Likely,
Ambiguous,
}Expand description
v0.7.0 Gap 4 (issue #887) — derived enum partitioning the
confidence real into operator-meaningful buckets so callers
(especially read-side reviewers) can filter by tier instead of
re-deriving thresholds at every site.
Thresholds are stable and load-bearing — operators have wired dashboards / human-review queues against them and a change here is a wire-level break. Bumping a threshold is therefore a schema-bump-class decision, NOT a code-tuning decision.
ConfidenceTier::Confirmed—>= 0.95. High-confidence substrate-curated atoms, typically calibrated by the Form 5 pipeline or asserted by a trusted upstream.ConfidenceTier::Likely—0.7 ..= 0.949…. Default caller-provided observations sit here.ConfidenceTier::Ambiguous—< 0.7. The human-review queue: the caller themselves flagged uncertainty (or the decay updater walked the value down). Operators commonly filter their review tool against this tier.
Surfaced to MCP callers via the confidence_calibration.tier_thresholds
block on memory_capabilities (Gap 4 read-path closeout).
§Disambiguation (issue #970)
The codebase has three enums whose names end in Tier.
ConfidenceTier (this enum) is the confidence-value bucket;
it is unrelated to:
Tier— memory-lifecycle TTL bucket (Short/Mid/Long).crate::config::FeatureTier— host capability tier (Keyword/Semantic/Smart/Autonomous).
They do not share variants, wire strings, or call sites. See
docs/internal/enum-proliferation-audit-970.md.
Variants§
Implementations§
Source§impl ConfidenceTier
impl ConfidenceTier
Sourcepub const CONFIRMED_MIN: f64 = 0.95
pub const CONFIRMED_MIN: f64 = 0.95
Inclusive lower bound for ConfidenceTier::Confirmed. Above
this is a high-confidence observation / calibration result.
Sourcepub const LIKELY_MIN: f64 = 0.7
pub const LIKELY_MIN: f64 = 0.7
Inclusive lower bound for ConfidenceTier::Likely. Below
this is the human-review tier (ConfidenceTier::Ambiguous).
Sourcepub fn from_confidence(c: f64) -> Self
pub fn from_confidence(c: f64) -> Self
Bucket a raw confidence value. NaN is conservatively mapped
to ConfidenceTier::Ambiguous so a corrupt input lands in
the human-review queue rather than masquerading as confirmed.
Trait Implementations§
Source§impl Clone for ConfidenceTier
impl Clone for ConfidenceTier
Source§fn clone(&self) -> ConfidenceTier
fn clone(&self) -> ConfidenceTier
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 ConfidenceTier
Source§impl Debug for ConfidenceTier
impl Debug for ConfidenceTier
Source§impl<'de> Deserialize<'de> for ConfidenceTier
impl<'de> Deserialize<'de> for ConfidenceTier
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>,
impl Eq for ConfidenceTier
Source§impl Hash for ConfidenceTier
impl Hash for ConfidenceTier
Source§impl PartialEq for ConfidenceTier
impl PartialEq for ConfidenceTier
Source§fn eq(&self, other: &ConfidenceTier) -> bool
fn eq(&self, other: &ConfidenceTier) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for ConfidenceTier
impl Serialize for ConfidenceTier
impl StructuralPartialEq for ConfidenceTier
Auto Trait Implementations§
impl Freeze for ConfidenceTier
impl RefUnwindSafe for ConfidenceTier
impl Send for ConfidenceTier
impl Sync for ConfidenceTier
impl Unpin for ConfidenceTier
impl UnsafeUnpin for ConfidenceTier
impl UnwindSafe for ConfidenceTier
Blanket Implementations§
impl<T> Boilerplate for T
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
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>,
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
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.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