pub struct ClassificationStats {
pub total_commits: usize,
pub classified: usize,
pub by_method: HashMap<String, usize>,
pub by_category: HashMap<String, usize>,
pub coverage_pct: f64,
pub coverage_by_repo: HashMap<String, RepoCoverage>,
}Expand description
Aggregate statistics from a single pipeline run.
Why: callers (CLI, tests) need a uniform shape describing how many
commits were classified and via which tier; coverage breakdowns let
reports surface gaps per repository.
What: counters per-tier (by_method), per-category (by_category),
and per-repo coverage. Populated by ClassificationPipeline::run.
Test: covered by tests::pipeline_runs_against_in_memory_db and
pipeline_force_reclassifies_rows.
Fields§
§total_commits: usizeTotal commits processed.
classified: usizeCommits that received a non-uncategorized verdict.
by_method: HashMap<String, usize>Count of verdicts per tier ("exact_rule", "regex_rule", …).
by_category: HashMap<String, usize>Count of verdicts per category.
coverage_pct: f64Overall classification coverage as a percentage (0–100).
Defined as classified / total_commits * 100. Zero when
total_commits == 0.
coverage_by_repo: HashMap<String, RepoCoverage>Per-repository coverage (repo_name → coverage percentage).
Trait Implementations§
Source§impl Clone for ClassificationStats
impl Clone for ClassificationStats
Source§fn clone(&self) -> ClassificationStats
fn clone(&self) -> ClassificationStats
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 ClassificationStats
impl Debug for ClassificationStats
Source§impl Default for ClassificationStats
impl Default for ClassificationStats
Source§fn default() -> ClassificationStats
fn default() -> ClassificationStats
Auto Trait Implementations§
impl Freeze for ClassificationStats
impl RefUnwindSafe for ClassificationStats
impl Send for ClassificationStats
impl Sync for ClassificationStats
impl Unpin for ClassificationStats
impl UnsafeUnpin for ClassificationStats
impl UnwindSafe for ClassificationStats
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,
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