///|
pub(all) enum MigrationRiskLevel {
LowRisk
MediumRisk
HighRisk
CriticalRisk
} derive(Debug, Eq)
///|
pub fn MigrationRiskLevel::to_string(self : MigrationRiskLevel) -> String {
match self {
LowRisk => "Low Risk"
MediumRisk => "Medium Risk"
HighRisk => "High Risk"
CriticalRisk => "Critical Risk"
}
}
///|
pub impl Show for MigrationRiskLevel with fn output(self, logger) {
logger.write_string(self.to_string())
}
///|
pub(all) struct TopologyDiffReport {
added_nodes : Array[String]
removed_nodes : Array[String]
modified_nodes : Array[NodeDiffEntry]
added_edges : Array[String]
removed_edges : Array[String]
modified_edges : Array[EdgeDiffEntry]
overall_risk_level : MigrationRiskLevel
risk_score : Double
breaking_changes : Array[String]
mitigation_recommendations : Array[String]
} derive(Debug, Eq)