pub fn build_release_trend_report(
candidates: &[ReleaseCandidateRiskSnapshot],
) -> ReleaseTrendReportExpand description
Build an ordered release-candidate trend report from candidate snapshots.
ยงExample
use stygian_charon::{
ReleaseCandidateRiskSnapshot, ReleaseRiskLevel, build_release_trend_report,
};
let trend = build_release_trend_report(&[
ReleaseCandidateRiskSnapshot {
candidate_id: "rc1".to_string(),
risk_score: 0.20,
risk_level: ReleaseRiskLevel::Low,
requires_escalation: false,
incident_count_7d: 0,
observatory_regressions: 0,
},
ReleaseCandidateRiskSnapshot {
candidate_id: "rc2".to_string(),
risk_score: 0.35,
risk_level: ReleaseRiskLevel::Guarded,
requires_escalation: false,
incident_count_7d: 1,
observatory_regressions: 1,
},
]);
assert_eq!(trend.points.len(), 2);