pub struct ProbeSession {
pub id: String,
pub name: String,
pub question: String,
pub sources: Vec<String>,
pub findings: Vec<ProbeFinding>,
pub completed: bool,
pub created_at: u64,
pub total_queries: u32,
}Expand description
A named Probe session — orchestrates exploratory queries across multiple sources.
A probe session gathers information by querying multiple sources (corpora, axonstores, dataspaces) and aggregating findings with relevance scoring.
ΛD alignment: ψ = ⟨T=“probe”, V=findings, E=⟨c≤0.99, τ, ρ, δ=derived⟩⟩ Probing is inherently exploratory — findings are speculative (Theorem 5.1).
Fields§
§id: StringSession identifier.
name: StringProbe name/label.
question: StringThe investigation question or topic.
sources: Vec<String>Sources to probe (e.g., [“corpus:papers”, “axonstore:facts”]).
findings: Vec<ProbeFinding>Accumulated findings from all queries.
completed: boolWhether the probe is complete.
created_at: u64Unix timestamp of creation.
total_queries: u32Total queries executed.
Implementations§
Source§impl ProbeSession
impl ProbeSession
Sourcepub fn add_finding(
&mut self,
source: String,
query: String,
content: String,
relevance: f64,
)
pub fn add_finding( &mut self, source: String, query: String, content: String, relevance: f64, )
Add a finding to the session.
Sourcepub fn top_findings(&self, limit: usize) -> Vec<&ProbeFinding>
pub fn top_findings(&self, limit: usize) -> Vec<&ProbeFinding>
Get top findings sorted by relevance.
Sourcepub fn aggregate_certainty(&self) -> f64
pub fn aggregate_certainty(&self) -> f64
Aggregate certainty across all findings.
Sourcepub fn findings_per_source(&self) -> HashMap<String, usize>
pub fn findings_per_source(&self) -> HashMap<String, usize>
Count findings per source.
Trait Implementations§
Source§impl Clone for ProbeSession
impl Clone for ProbeSession
Source§fn clone(&self) -> ProbeSession
fn clone(&self) -> ProbeSession
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 ProbeSession
impl Debug for ProbeSession
Source§impl<'de> Deserialize<'de> for ProbeSession
impl<'de> Deserialize<'de> for ProbeSession
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 ProbeSession
impl RefUnwindSafe for ProbeSession
impl Send for ProbeSession
impl Sync for ProbeSession
impl Unpin for ProbeSession
impl UnsafeUnpin for ProbeSession
impl UnwindSafe for ProbeSession
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
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<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