///|
/// Clamp an operational quality threshold to a safe interval.
pub fn clamp_quality_threshold(value : Double) -> Double {
value.max(0.0).min(1.0)
}
///|
/// Return whether a quality score is healthy under a threshold.
pub fn quality_meets_threshold(score : Double, threshold : Double) -> Bool {
score >= clamp_quality_threshold(threshold)
}
///|
/// Return a stable quality band for dashboards.
pub fn quality_band(score : Double) -> String {
let value = clamp_quality_threshold(score)
if value >= 0.85 {
"healthy"
} else if value >= 0.65 {
"degraded"
} else {
"unhealthy"
}
}
///|
/// Return a machine-readable numeric quality band.
pub fn quality_band_code(score : Double) -> Int {
let value = clamp_quality_threshold(score)
if value >= 0.85 {
2
} else if value >= 0.65 {
1
} else {
0
}
}
///|
/// Return whether a quality score requires operator action.
pub fn quality_requires_action(score : Double) -> Bool {
quality_band_code(score) == 0
}