pub fn extract_scope_candidates(numstat: &[NumstatEntry]) -> Vec<ScopeCandidate>Expand description
Deterministically rank scope candidates from numstat by weighted line churn.
A port of omp’s analysis/scope.ts that needs no LLM: each changed path is
mapped to a 1–2 segment component, churn is summed per component,
2-segment components are boosted (×1.2) and single-segment ones dampened
(×0.8), then the list is sorted by descending weight.