pub struct GapDetector;Expand description
Analyses a workspace and surfaces knowledge gaps.
Implementations§
Source§impl GapDetector
impl GapDetector
pub fn new() -> Self
Sourcepub fn analyze_coverage(
&self,
conn: &Connection,
workspace: &str,
) -> Result<CoverageReport>
pub fn analyze_coverage( &self, conn: &Connection, workspace: &str, ) -> Result<CoverageReport>
Analyse memory coverage for workspace.
Returns a CoverageReport with tag distribution, temporal gaps,
and weak areas.
Sourcepub fn detect_gaps(
&self,
conn: &Connection,
workspace: &str,
) -> Result<Vec<KnowledgeGap>>
pub fn detect_gaps( &self, conn: &Connection, workspace: &str, ) -> Result<Vec<KnowledgeGap>>
Detect knowledge gaps for workspace.
Three gap types are checked:
- Sparse topics (< 3 memories per tag)
- Temporal gaps (no memories for > 7 days)
- Unresolved questions (memories containing
?)
Sourcepub fn suggest_acquisitions(
&self,
conn: &Connection,
workspace: &str,
limit: usize,
) -> Result<Vec<AcquisitionSuggestion>>
pub fn suggest_acquisitions( &self, conn: &Connection, workspace: &str, limit: usize, ) -> Result<Vec<AcquisitionSuggestion>>
Suggest specific new memories that would close the most important gaps.
Priority order: unresolved questions (1) > sparse topics (2) > temporal gaps (3).
At most limit suggestions are returned (0 = unlimited).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for GapDetector
impl RefUnwindSafe for GapDetector
impl Send for GapDetector
impl Sync for GapDetector
impl Unpin for GapDetector
impl UnsafeUnpin for GapDetector
impl UnwindSafe for GapDetector
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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 moreCreates a shared type from an unshared type.