#![recursion_limit = "256"]
pub mod baseline;
pub mod cli;
pub mod facts;
pub mod graph;
pub mod health;
pub mod install;
pub mod mcp;
pub mod memory;
pub mod profile;
pub mod scanner;
pub mod simulate;
pub mod sys;
pub mod workspace;
pub use baseline::{
build_baseline, diff_baselines, BaselineDiff, BaselineModuleEdge, ModuleEdgeDelta,
ProjectBaseline,
};
pub use facts::{
CallEdgeFact, CallFact, EntryPointFact, EntryPointKind, FileFact, FunctionFact, ImportFact,
ImportResolution, Language, ScanReport, SnapshotFact, TypeFact,
};
pub use graph::GraphMetrics;
pub use health::{
compute_health, compute_health_with_config, is_foundation_file, read_trend_history,
BoundaryConfig, ComplexityMetrics, ConfigError, DependencyViolationMetric,
DuplicateFunctionGroup, FileCouplingMetric, FileHotspot, FileInstabilityMetric,
ForbiddenEdgeConfig, FunctionComplexityMetric, HealthSummary, LanguagePluginConfig,
LayerConfig, ModuleDistanceMetric, ModuleStabilityMetric, RaysenseConfig, Remediation,
ResolutionBreakdown, RootCauseScores, RuleConfig, ScanConfig, ScoreConfig, TestGapCandidate,
TestGapMetrics, TrendHotspotSample, TrendMetrics, TrendSample,
};
pub use health::{RuleFinding, RuleSeverity};
pub use profile::ProjectProfile;
pub use scanner::{scan_path, scan_path_with_config, standard_language_plugins, ScanError};
pub use simulate::{
break_cycle as simulate_break_cycle, break_cycle_recommendations,
move_file as simulate_move_file, remove_file as simulate_remove_file, CycleBreakCandidate,
SimulateError,
};