pub mod options;
pub mod orchestration;
pub mod phases;
pub use options::{ConfigError, UnifiedAnalysisConfig, UnifiedAnalysisConfigBuilder};
pub use orchestration::{AnalysisContext, AnalysisTimings};
pub use phases::call_graph::{
CallGraphConfig, CallGraphEnrichmentResult, apply_trait_patterns, build_initial_call_graph,
enrich_metrics_with_call_graph, find_test_only_functions, is_closure, is_test_function,
is_trivial_function, should_process_metric,
};
pub use phases::coverage::{
calculate_coverage_percent, get_overall_coverage, has_coverage_data, load_coverage_data,
load_coverage_file,
};
pub use phases::file_analysis::{
ProcessedFileData, aggregate_file_metrics, calculate_uncovered_lines, create_file_debt_item,
detect_file_context, enhance_metrics_with_line_count, group_functions_by_file,
process_file_metrics, should_include_file,
};
pub use phases::god_object::{
analyze_file_git_context, calculate_god_object_risk, create_god_object_debt_item,
create_god_object_recommendation, enrich_god_analysis_with_aggregates,
};
pub use phases::scoring::{
PriorityConfig, ScoringWeights, calculate_average_complexity, calculate_total_complexity,
create_debt_items_from_metric, create_function_mappings, metrics_to_purity_map,
process_metrics_to_debt_items, setup_debt_aggregator,
};