pub trait SkillScorer: Send + Sync {
// Required methods
fn record(&self, feedback: SkillFeedback);
fn score(&self, skill_name: &str) -> f32;
fn should_disable(&self, skill_name: &str) -> bool;
fn all_scores(&self) -> Vec<SkillScore>;
}Expand description
Skill scorer trait (extension point)
Records feedback and computes scores for skills. Implementations can use any scoring algorithm and persistence strategy.
Required Methods§
Sourcefn record(&self, feedback: SkillFeedback)
fn record(&self, feedback: SkillFeedback)
Record a feedback entry for a skill
Sourcefn score(&self, skill_name: &str) -> f32
fn score(&self, skill_name: &str) -> f32
Get the current score for a skill (0.0 to 1.0, default 1.0 for unknown)
Sourcefn should_disable(&self, skill_name: &str) -> bool
fn should_disable(&self, skill_name: &str) -> bool
Check if a skill should be disabled based on its score
Sourcefn all_scores(&self) -> Vec<SkillScore>
fn all_scores(&self) -> Vec<SkillScore>
Get score summaries for all tracked skills