Skip to main content

Module priority

Module priority 

Source
Expand description

Technical debt prioritization and unified scoring.

This module provides the core prioritization engine for debtmap, combining multiple signals (complexity, coverage, architecture) into a unified debt score. It handles call graph construction, impact calculation, and tiered classification of debt items.

§Key Components

  • UnifiedAnalysis: Aggregated analysis results with scoring
  • CallGraph: Function call relationships for impact analysis
  • Scoring: Multi-factor scoring combining complexity, coverage, and context
  • Tiers: Classification into actionable priority levels
  • Filtering: Configurable filtering with statistics tracking

§Debt Categories

  • Architecture: God objects, feature envy, scattered types
  • Testing: Coverage gaps, test quality issues
  • Performance: Async misuse, collection inefficiency
  • Code Quality: Complexity hotspots, duplication

Re-exports§

pub use call_graph::CallGraph;
pub use call_graph::FunctionCall;
pub use coverage_propagation::calculate_transitive_coverage;
pub use coverage_propagation::TransitiveCoverage;
pub use debt_aggregator::DebtAggregator;
pub use debt_aggregator::FunctionId as AggregatorFunctionId;
pub use file_metrics::FileDebtItem;
pub use file_metrics::FileDebtMetrics;
pub use file_metrics::FileImpact;
pub use file_metrics::GodObjectIndicators;
pub use filter_predicates::FilterStatistics;
pub use filtering::filter_with_metrics;
pub use filtering::ClassifiedItem;
pub use filtering::FilterConfig;
pub use filtering::FilterMetrics;
pub use filtering::FilterResult;
pub use formatter::format_priorities;
pub use formatter::OutputFormat;
pub use formatter_markdown::format_priorities_categorical_markdown;
pub use formatter_markdown::format_priorities_markdown;
pub use formatter_markdown::format_priorities_tiered_markdown;
pub use god_object_aggregation::aggregate_god_object_metrics;
pub use god_object_aggregation::GodObjectAggregatedMetrics;
pub use pipeline::analyze_and_filter;
pub use pipeline::filter_sort_limit;
pub use pipeline::sort_by_score;
pub use pipeline::take_top;
pub use semantic_classifier::classify_function_role;
pub use semantic_classifier::FunctionRole;
pub use tiers::classify_tier;
pub use tiers::RecommendationTier;
pub use tiers::TierConfig;
pub use unified_analysis_queries::UnifiedAnalysisQueries;
pub use unified_analysis_utils::UnifiedAnalysisUtils;
pub use unified_scorer::calculate_unified_priority;
pub use unified_scorer::Location;
pub use unified_scorer::UnifiedDebtItem;
pub use unified_scorer::UnifiedScore;
pub use view::CategoryCounts;
pub use view::ItemLocation;
pub use view::LocationGroup;
pub use view::PreparedDebtView;
pub use view::ScoreDistribution;
pub use view::SortCriteria;
pub use view::ViewConfig;
pub use view::ViewItem;
pub use view::ViewSummary;
pub use view_pipeline::prepare_view;
pub use view_pipeline::prepare_view_default;
pub use view_pipeline::prepare_view_for_terminal;
pub use view_pipeline::prepare_view_for_tui;
pub use debt_types::DebtType;
pub use debt_types::FunctionVisibility;

Modules§

architecture_recognition
Architecture recognition for stable core detection (spec 269).
call_graph
Call graph analysis module for function relationship tracking
caller_classification
Caller classification for dependency metrics (Spec 267)
classification
complexity_patterns
Complexity Pattern Detection
context
Context window suggestions for AI agents (Spec 263).
coverage_propagation
Indirect coverage detection through call graph analysis (Spec 120)
debt_aggregator
debt_types
Debt type definitions and related implementations.
detected_pattern
Detected Pattern
external_api_detector
file_metrics
filter_config
Unified filter configuration for debt items.
filter_predicates
Pure predicate functions for filtering debt items.
filtering
Filter transparency with metrics tracking.
formatted_output
Pure data structures for formatted priority output.
formatter
Terminal formatting for priority analysis results
formatter_markdown
Markdown formatting for priority analysis results
formatter_verbosity
Verbosity-Aware Formatter
god_object_aggregation
Pure aggregation functions for god object metrics.
impact_calculation
Pure helper functions for impact calculation.
parallel_call_graph
pipeline
Composable filter pipeline with functional composition.
refactoring_impact
Refactoring Impact Calculation
score_formatter
score_types
Score types module.
scoring
semantic_classifier
tiers
unified_analysis_queries
Query and data access operations for UnifiedAnalysis.
unified_analysis_utils
Utility operations for UnifiedAnalysis.
unified_scorer
view
Unified view data model for debt display.
view_pipeline
Pure transformation pipeline for view preparation.

Structs§

ActionStep
Single actionable step with clear impact (spec 138a)
ActionableRecommendation
Placeholder for recommendations (spec 262: recommendations removed) This struct is kept for backward compatibility with JSON output. All fields are now empty/default - debtmap focuses on identification and severity, not on providing refactoring recommendations.
CategorizedDebt
CategorySummary
CrossCategoryDependency
DisplayGroup
FunctionAnalysis
ImpactMetrics
TieredDisplay
UnifiedAnalysis

Enums§

DebtCategory
DebtItem
Difficulty
Difficulty classification for actionable steps (spec 138a)
ImpactLevel
Tier