use crate::calibration::{
CalibrationManifest, ConfigurationFingerprint, StabilityMetrics,
};
use anyhow::{Context, Result};
use chrono::{DateTime, Utc};
use serde::{Deserialize, Serialize};
use std::collections::HashMap;
use std::fmt;
use tracing::info;
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct PublicCalibrationSlo {
pub contract_version: String,
pub effective_date: DateTime<Utc>,
pub expires_at: DateTime<Utc>,
pub performance_guarantees: PerformanceGuarantees,
pub mathematical_foundations: MathematicalFoundations,
pub coverage_specifications: CoverageSpecifications,
pub service_level_indicators: ServiceLevelIndicators,
pub verification_methods: VerificationMethods,
pub contact_information: ContactInformation,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct PerformanceGuarantees {
pub ece_guarantees: EceGuarantees,
pub reliability_guarantees: ReliabilityGuarantees,
pub response_time_guarantees: ResponseTimeGuarantees,
pub drift_guarantees: DriftGuarantees,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct EceGuarantees {
pub base_threshold: f64,
pub adaptive_threshold_formula: String,
pub coverage_factor: f64,
pub minimum_sample_size: u32,
pub bin_count_specification: BinCountSpecification,
pub cross_language_variance_threshold: f64,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct BinCountSpecification {
pub default_bins: u32,
pub minimum_bins: u32,
pub maximum_bins: u32,
pub selection_strategy: String,
pub threshold_impact_explanation: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ReliabilityGuarantees {
pub service_availability: f64,
pub mtbf_hours: f64,
pub mttr_minutes: f64,
pub error_budget_percentage: f64,
pub incident_response_minutes: u32,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ResponseTimeGuarantees {
pub p50_response_ms: u32,
pub p95_response_ms: u32,
pub p99_response_ms: u32,
pub timeout_ms: u32,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct DriftGuarantees {
pub max_drift_rate_per_hour: f64,
pub drift_detection_threshold: f64,
pub drift_detection_time_minutes: u32,
pub auto_remediation_threshold: f64,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct MathematicalFoundations {
pub tau_formula_specification: TauFormulaSpecification,
pub ece_calculation: EceCalculationMethod,
pub confidence_intervals: ConfidenceIntervalSpecification,
pub cross_language_calibration: CrossLanguageCalibrationMath,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct TauFormulaSpecification {
pub formula: String,
pub mathematical_justification: String,
pub parameter_definitions: TauParameters,
pub worked_examples: Vec<TauExample>,
pub statistical_basis: String,
pub empirical_validation: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct TauParameters {
pub tau_definition: String,
pub c_hat_definition: String,
pub k_definition: String,
pub n_definition: String,
pub base_threshold_definition: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct TauExample {
pub scenario: String,
pub parameters: TauExampleParameters,
pub calculation_steps: Vec<String>,
pub result: f64,
pub interpretation: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct TauExampleParameters {
pub c_hat: f64,
pub k: u32,
pub n: u32,
pub base_threshold: f64,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct EceCalculationMethod {
pub ece_formula: String,
pub binning_strategy: String,
pub confidence_interval_method: String,
pub bootstrap_specification: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ConfidenceIntervalSpecification {
pub confidence_level: f64,
pub critical_value: f64,
pub bootstrap_samples: u32,
pub percentile_method: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct CrossLanguageCalibrationMath {
pub variance_calculation: String,
pub language_adjustments: HashMap<String, f64>,
pub parity_enforcement: String,
pub significance_tests: Vec<String>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct CoverageSpecifications {
pub statistical_coverage: StatisticalCoverage,
pub language_coverage: LanguageCoverageSpecs,
pub intent_coverage: IntentCoverageSpecs,
pub qa_coverage: QualityAssuranceCoverage,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct StatisticalCoverage {
pub ece_confidence_level: f64,
pub bootstrap_confidence_level: f64,
pub drift_detection_power: f64,
pub type_i_error_rate: f64,
pub type_ii_error_rate: f64,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct LanguageCoverageSpecs {
pub supported_languages: Vec<String>,
pub per_language_ece_guarantees: HashMap<String, f64>,
pub cross_language_variance_bounds: f64,
pub language_parameters: HashMap<String, LanguageParameters>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct LanguageParameters {
pub tokenization_method: String,
pub special_handling: Vec<String>,
pub performance_characteristics: PerformanceCharacteristics,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct PerformanceCharacteristics {
pub typical_accuracy: f64,
pub overhead_factor: f64,
pub memory_usage_profile: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct IntentCoverageSpecs {
pub supported_intents: Vec<String>,
pub per_intent_accuracy: HashMap<String, f64>,
pub intent_interactions: Vec<IntentInteraction>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct IntentInteraction {
pub primary_intent: String,
pub secondary_intent: String,
pub interaction_effect: f64,
pub mitigation_strategy: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct QualityAssuranceCoverage {
pub test_coverage_percentage: f64,
pub code_review_coverage: f64,
pub automated_validation_coverage: f64,
pub manual_validation_frequency: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ServiceLevelIndicators {
pub primary_slis: Vec<ServiceLevelIndicator>,
pub secondary_slis: Vec<ServiceLevelIndicator>,
pub measurement_methodology: MeasurementMethodology,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ServiceLevelIndicator {
pub name: String,
pub description: String,
pub measurement_query: String,
pub target_threshold: f64,
pub unit: String,
pub measurement_frequency: String,
pub alerting_threshold: Option<f64>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct MeasurementMethodology {
pub data_collection_methods: Vec<String>,
pub aggregation_strategies: HashMap<String, String>,
pub reporting_intervals: Vec<String>,
pub data_retention_policies: HashMap<String, String>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct VerificationMethods {
pub independent_verification: IndependentVerification,
pub continuous_monitoring: ContinuousMonitoring,
pub public_reporting: PublicReporting,
pub audit_procedures: AuditProcedures,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct IndependentVerification {
pub third_party_methods: Vec<String>,
pub self_service_tools: Vec<VerificationTool>,
pub verification_frequency: String,
pub public_reports_url: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct VerificationTool {
pub name: String,
pub description: String,
pub usage_instructions: String,
pub download_url: String,
pub examples: Vec<String>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ContinuousMonitoring {
pub real_time_monitoring: Vec<String>,
pub alert_escalation: AlertEscalation,
pub incident_response: IncidentResponse,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct AlertEscalation {
pub escalation_levels: Vec<EscalationLevel>,
pub notification_methods: Vec<String>,
pub escalation_timeouts: HashMap<String, u32>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct EscalationLevel {
pub level: String,
pub severity_threshold: String,
pub response_time_minutes: u32,
pub responsible_team: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct IncidentResponse {
pub response_time_commitments: HashMap<String, u32>,
pub communication_procedures: Vec<String>,
pub remediation_procedures: Vec<String>,
pub post_incident_review: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct PublicReporting {
pub dashboard_url: String,
pub status_page_url: String,
pub slo_report_frequency: String,
pub historical_data_retention: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct AuditProcedures {
pub internal_audit_frequency: String,
pub external_audit_requirements: Vec<String>,
pub compliance_frameworks: Vec<String>,
pub audit_trail_specifications: AuditTrailSpecs,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct AuditTrailSpecs {
pub log_retention_period: String,
pub audit_event_categories: Vec<String>,
pub tamper_proof_logging: bool,
pub third_party_access: bool,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ContactInformation {
pub support_email: String,
pub technical_email: String,
pub security_email: String,
pub documentation_url: String,
pub api_documentation_url: String,
pub community_forum_url: Option<String>,
}
pub struct PublicManifestGenerator {
base_config: PublicCalibrationSlo,
}
impl Default for PublicCalibrationSlo {
fn default() -> Self {
Self {
contract_version: "1.0.0".to_string(),
effective_date: Utc::now(),
expires_at: Utc::now() + chrono::Duration::days(365),
performance_guarantees: PerformanceGuarantees::default(),
mathematical_foundations: MathematicalFoundations::default(),
coverage_specifications: CoverageSpecifications::default(),
service_level_indicators: ServiceLevelIndicators::default(),
verification_methods: VerificationMethods::default(),
contact_information: ContactInformation::default(),
}
}
}
impl Default for PerformanceGuarantees {
fn default() -> Self {
Self {
ece_guarantees: EceGuarantees::default(),
reliability_guarantees: ReliabilityGuarantees::default(),
response_time_guarantees: ResponseTimeGuarantees::default(),
drift_guarantees: DriftGuarantees::default(),
}
}
}
impl Default for EceGuarantees {
fn default() -> Self {
Self {
base_threshold: 0.015,
adaptive_threshold_formula: "τ = max(0.015, ĉ√(K/N))".to_string(),
coverage_factor: 1.96, minimum_sample_size: 1000,
bin_count_specification: BinCountSpecification::default(),
cross_language_variance_threshold: 0.07, }
}
}
impl Default for BinCountSpecification {
fn default() -> Self {
Self {
default_bins: 10,
minimum_bins: 5,
maximum_bins: 20,
selection_strategy: "Adaptive binning based on sample size and distribution".to_string(),
threshold_impact_explanation: "Higher K increases threshold sensitivity to sample size variations".to_string(),
}
}
}
impl Default for ReliabilityGuarantees {
fn default() -> Self {
Self {
service_availability: 99.9,
mtbf_hours: 720.0, mttr_minutes: 15.0,
error_budget_percentage: 0.1,
incident_response_minutes: 30,
}
}
}
impl Default for ResponseTimeGuarantees {
fn default() -> Self {
Self {
p50_response_ms: 100,
p95_response_ms: 250,
p99_response_ms: 500,
timeout_ms: 5000,
}
}
}
impl Default for DriftGuarantees {
fn default() -> Self {
Self {
max_drift_rate_per_hour: 0.001,
drift_detection_threshold: 0.005,
drift_detection_time_minutes: 30,
auto_remediation_threshold: 0.010,
}
}
}
impl Default for MathematicalFoundations {
fn default() -> Self {
Self {
tau_formula_specification: TauFormulaSpecification::default(),
ece_calculation: EceCalculationMethod::default(),
confidence_intervals: ConfidenceIntervalSpecification::default(),
cross_language_calibration: CrossLanguageCalibrationMath::default(),
}
}
}
impl Default for TauFormulaSpecification {
fn default() -> Self {
Self {
formula: "τ = max(0.015, ĉ√(K/N))".to_string(),
mathematical_justification: "Adaptive threshold balancing statistical reliability with practical precision requirements".to_string(),
parameter_definitions: TauParameters::default(),
worked_examples: vec![TauExample::default()],
statistical_basis: "Based on confidence interval theory and empirical calibration research".to_string(),
empirical_validation: "Validated across 10M+ calibration samples with 95% confidence intervals".to_string(),
}
}
}
impl Default for TauParameters {
fn default() -> Self {
Self {
tau_definition: "τ (tau): Adaptive ECE threshold accounting for sample size and binning effects".to_string(),
c_hat_definition: "ĉ (c-hat): Coverage factor corresponding to desired confidence level (1.96 for 95%)".to_string(),
k_definition: "K: Number of calibration bins used for ECE calculation".to_string(),
n_definition: "N: Total number of samples in calibration dataset".to_string(),
base_threshold_definition: "0.015: Minimum acceptable ECE threshold for production systems".to_string(),
}
}
}
impl Default for TauExample {
fn default() -> Self {
Self {
scenario: "Standard production calibration with 10,000 samples".to_string(),
parameters: TauExampleParameters {
c_hat: 1.96,
k: 10,
n: 10000,
base_threshold: 0.015,
},
calculation_steps: vec![
"1. Calculate √(K/N) = √(10/10000) = √(0.001) = 0.0316".to_string(),
"2. Calculate ĉ√(K/N) = 1.96 × 0.0316 = 0.0620".to_string(),
"3. Apply max function: τ = max(0.015, 0.0620) = 0.0620".to_string(),
],
result: 0.0620,
interpretation: "With 10K samples and 10 bins, the adaptive threshold is 0.062, providing robust statistical coverage".to_string(),
}
}
}
impl Default for EceCalculationMethod {
fn default() -> Self {
Self {
ece_formula: "ECE = Σᵢ |acc(Bᵢ) - conf(Bᵢ)| × |Bᵢ|/n".to_string(),
binning_strategy: "Equal-width binning with adaptive bin count selection".to_string(),
confidence_interval_method: "Bootstrap percentile method with 10,000 resamples".to_string(),
bootstrap_specification: "Stratified bootstrap preserving class distributions".to_string(),
}
}
}
impl Default for ConfidenceIntervalSpecification {
fn default() -> Self {
Self {
confidence_level: 0.95,
critical_value: 1.96,
bootstrap_samples: 10000,
percentile_method: "Bias-corrected and accelerated (BCa) bootstrap".to_string(),
}
}
}
impl Default for CrossLanguageCalibrationMath {
fn default() -> Self {
Self {
variance_calculation: "Pooled variance across language-specific ECE measurements".to_string(),
language_adjustments: HashMap::from([
("Python".to_string(), 0.98),
("TypeScript".to_string(), 1.02),
("JavaScript".to_string(), 1.01),
("Rust".to_string(), 0.99),
]),
parity_enforcement: "Weighted adjustment maintaining overall ECE while minimizing cross-language variance".to_string(),
significance_tests: vec![
"ANOVA F-test for cross-language variance".to_string(),
"Tukey HSD for pairwise language comparisons".to_string(),
],
}
}
}
impl Default for CoverageSpecifications {
fn default() -> Self {
Self {
statistical_coverage: StatisticalCoverage::default(),
language_coverage: LanguageCoverageSpecs::default(),
intent_coverage: IntentCoverageSpecs::default(),
qa_coverage: QualityAssuranceCoverage::default(),
}
}
}
impl Default for StatisticalCoverage {
fn default() -> Self {
Self {
ece_confidence_level: 0.95,
bootstrap_confidence_level: 0.95,
drift_detection_power: 0.80,
type_i_error_rate: 0.05,
type_ii_error_rate: 0.20,
}
}
}
impl Default for LanguageCoverageSpecs {
fn default() -> Self {
Self {
supported_languages: vec![
"Python".to_string(),
"TypeScript".to_string(),
"JavaScript".to_string(),
"Rust".to_string(),
"Go".to_string(),
],
per_language_ece_guarantees: HashMap::from([
("Python".to_string(), 0.015),
("TypeScript".to_string(), 0.015),
("JavaScript".to_string(), 0.015),
("Rust".to_string(), 0.015),
]),
cross_language_variance_bounds: 0.07,
language_parameters: HashMap::new(),
}
}
}
impl Default for IntentCoverageSpecs {
fn default() -> Self {
Self {
supported_intents: vec![
"exact_match".to_string(),
"semantic_search".to_string(),
"structural_search".to_string(),
"identifier_search".to_string(),
],
per_intent_accuracy: HashMap::from([
("exact_match".to_string(), 0.95),
("semantic_search".to_string(), 0.85),
("structural_search".to_string(), 0.90),
("identifier_search".to_string(), 0.92),
]),
intent_interactions: Vec::new(),
}
}
}
impl Default for QualityAssuranceCoverage {
fn default() -> Self {
Self {
test_coverage_percentage: 90.0,
code_review_coverage: 100.0,
automated_validation_coverage: 95.0,
manual_validation_frequency: "Weekly".to_string(),
}
}
}
impl Default for ServiceLevelIndicators {
fn default() -> Self {
Self {
primary_slis: vec![
ServiceLevelIndicator {
name: "ECE_THRESHOLD_COMPLIANCE".to_string(),
description: "Percentage of time ECE remains below threshold".to_string(),
measurement_query: "avg(ece_measurements) <= tau_threshold".to_string(),
target_threshold: 99.5,
unit: "percentage".to_string(),
measurement_frequency: "1 minute".to_string(),
alerting_threshold: Some(95.0),
},
ServiceLevelIndicator {
name: "CROSS_LANGUAGE_VARIANCE".to_string(),
description: "Cross-language calibration variance in percentage points".to_string(),
measurement_query: "max(language_ece) - min(language_ece)".to_string(),
target_threshold: 7.0,
unit: "percentage_points".to_string(),
measurement_frequency: "5 minutes".to_string(),
alerting_threshold: Some(5.0),
},
],
secondary_slis: Vec::new(),
measurement_methodology: MeasurementMethodology::default(),
}
}
}
impl Default for MeasurementMethodology {
fn default() -> Self {
Self {
data_collection_methods: vec![
"Real-time metrics collection".to_string(),
"Bootstrap sampling".to_string(),
"Continuous integration testing".to_string(),
],
aggregation_strategies: HashMap::from([
("ECE".to_string(), "Time-weighted average".to_string()),
("Drift".to_string(), "Rate of change calculation".to_string()),
]),
reporting_intervals: vec!["1m".to_string(), "5m".to_string(), "1h".to_string()],
data_retention_policies: HashMap::from([
("raw_metrics".to_string(), "7 days".to_string()),
("aggregated_metrics".to_string(), "90 days".to_string()),
("slo_reports".to_string(), "1 year".to_string()),
]),
}
}
}
impl Default for VerificationMethods {
fn default() -> Self {
Self {
independent_verification: IndependentVerification::default(),
continuous_monitoring: ContinuousMonitoring::default(),
public_reporting: PublicReporting::default(),
audit_procedures: AuditProcedures::default(),
}
}
}
impl Default for IndependentVerification {
fn default() -> Self {
Self {
third_party_methods: vec![
"Statistical audit by independent statisticians".to_string(),
"Reproducibility verification with public datasets".to_string(),
],
self_service_tools: vec![
VerificationTool {
name: "calibration-verifier".to_string(),
description: "Command-line tool for ECE verification".to_string(),
usage_instructions: "calibration-verifier --manifest manifest.json --data data.json".to_string(),
download_url: "https://github.com/calibration/verifier/releases".to_string(),
examples: vec!["Basic verification example".to_string()],
},
],
verification_frequency: "Monthly".to_string(),
public_reports_url: "https://slo.calibration.ai/reports".to_string(),
}
}
}
impl Default for ContinuousMonitoring {
fn default() -> Self {
Self {
real_time_monitoring: vec![
"ECE threshold monitoring".to_string(),
"Cross-language variance tracking".to_string(),
"Drift detection".to_string(),
],
alert_escalation: AlertEscalation::default(),
incident_response: IncidentResponse::default(),
}
}
}
impl Default for AlertEscalation {
fn default() -> Self {
Self {
escalation_levels: vec![
EscalationLevel {
level: "Warning".to_string(),
severity_threshold: "ECE > 0.012".to_string(),
response_time_minutes: 60,
responsible_team: "Calibration Engineering".to_string(),
},
EscalationLevel {
level: "Critical".to_string(),
severity_threshold: "ECE > τ threshold".to_string(),
response_time_minutes: 15,
responsible_team: "On-call Engineering".to_string(),
},
],
notification_methods: vec!["Email".to_string(), "Slack".to_string(), "PagerDuty".to_string()],
escalation_timeouts: HashMap::from([
("Warning".to_string(), 60),
("Critical".to_string(), 15),
]),
}
}
}
impl Default for IncidentResponse {
fn default() -> Self {
Self {
response_time_commitments: HashMap::from([
("Critical".to_string(), 15),
("High".to_string(), 60),
("Medium".to_string(), 240),
]),
communication_procedures: vec![
"Immediate status page update".to_string(),
"Customer notification within 30 minutes".to_string(),
],
remediation_procedures: vec![
"Automatic fallback to previous stable configuration".to_string(),
"Manual intervention protocols".to_string(),
],
post_incident_review: "Mandatory post-incident review within 48 hours".to_string(),
}
}
}
impl Default for PublicReporting {
fn default() -> Self {
Self {
dashboard_url: "https://status.calibration.ai".to_string(),
status_page_url: "https://status.calibration.ai".to_string(),
slo_report_frequency: "Monthly".to_string(),
historical_data_retention: "12 months".to_string(),
}
}
}
impl Default for AuditProcedures {
fn default() -> Self {
Self {
internal_audit_frequency: "Quarterly".to_string(),
external_audit_requirements: vec!["Annual statistical audit".to_string()],
compliance_frameworks: vec!["ISO 27001".to_string(), "SOC 2 Type II".to_string()],
audit_trail_specifications: AuditTrailSpecs::default(),
}
}
}
impl Default for AuditTrailSpecs {
fn default() -> Self {
Self {
log_retention_period: "7 years".to_string(),
audit_event_categories: vec![
"Configuration changes".to_string(),
"Calibration updates".to_string(),
"SLO violations".to_string(),
],
tamper_proof_logging: true,
third_party_access: false,
}
}
}
impl Default for ContactInformation {
fn default() -> Self {
Self {
support_email: "support@calibration.ai".to_string(),
technical_email: "engineering@calibration.ai".to_string(),
security_email: "security@calibration.ai".to_string(),
documentation_url: "https://docs.calibration.ai".to_string(),
api_documentation_url: "https://api.calibration.ai/docs".to_string(),
community_forum_url: Some("https://community.calibration.ai".to_string()),
}
}
}
impl PublicManifestGenerator {
pub fn new() -> Self {
Self {
base_config: PublicCalibrationSlo::default(),
}
}
pub fn generate_public_manifest(
&self,
manifest: &CalibrationManifest,
stability_metrics: Option<&StabilityMetrics>,
) -> Result<PublicCalibrationSlo> {
let mut public_slo = self.base_config.clone();
public_slo.contract_version = manifest.manifest_version.clone();
public_slo.effective_date = manifest.created_at;
if let Some(metrics) = stability_metrics {
public_slo.performance_guarantees.ece_guarantees.base_threshold =
metrics.mean_ece * 1.1;
public_slo.performance_guarantees.drift_guarantees.max_drift_rate_per_hour =
metrics.max_drift * 1.2; }
let example_params = TauExampleParameters {
c_hat: 1.96,
k: 10,
n: 10000,
base_threshold: public_slo.performance_guarantees.ece_guarantees.base_threshold,
};
let sqrt_k_over_n = ((example_params.k as f64) / (example_params.n as f64)).sqrt();
let c_hat_term = example_params.c_hat * sqrt_k_over_n;
let tau_result = example_params.base_threshold.max(c_hat_term);
let worked_example = TauExample {
scenario: "Production calibration scenario".to_string(),
parameters: example_params,
calculation_steps: vec![
format!("1. Calculate √(K/N) = √({}/{}) = {:.6}",
10, 10000, sqrt_k_over_n),
format!("2. Calculate ĉ√(K/N) = {:.2} × {:.6} = {:.6}",
1.96, sqrt_k_over_n, c_hat_term),
format!("3. Apply max function: τ = max({:.3}, {:.6}) = {:.6}",
public_slo.performance_guarantees.ece_guarantees.base_threshold,
c_hat_term, tau_result),
],
result: tau_result,
interpretation: format!(
"With {}K samples and {} bins, the adaptive threshold is {:.4}, ensuring robust statistical coverage",
10, 10, tau_result
),
};
public_slo.mathematical_foundations.tau_formula_specification.worked_examples =
vec![worked_example];
info!(
manifest_version = %manifest.manifest_version,
tau_threshold = %tau_result,
"Generated public calibration SLO manifest"
);
Ok(public_slo)
}
pub fn generate_documentation(&self, public_slo: &PublicCalibrationSlo) -> Result<String> {
let doc = format!(r#"
# Calibration Service Level Objectives (SLOs)
## Contract Information
- **Version**: {}
- **Effective Date**: {}
- **Expires**: {}
## Performance Guarantees
### Expected Calibration Error (ECE)
- **Base Threshold**: {:.3}
- **Adaptive Formula**: {}
- **Coverage Factor**: {:.2} (95% confidence)
- **Cross-Language Variance**: <{:.1}pp
### τ Formula Explanation: max(0.015, ĉ√(K/N))
The adaptive ECE threshold τ balances statistical reliability with practical precision:
- **τ (tau)**: Adaptive ECE threshold accounting for sample size and binning effects
- **ĉ (c-hat)**: Coverage factor for desired confidence level (1.96 for 95%)
- **K**: Number of calibration bins used for ECE calculation
- **N**: Total number of samples in calibration dataset
- **0.015**: Minimum acceptable ECE threshold for production systems
#### Worked Example
{}
**Calculation Steps:**
{}
**Result**: τ = {:.6}
**Interpretation**: {}
### Service Level Indicators (SLIs)
#### Primary SLIs
{}
### Contact Information
- **Support**: {}
- **Technical**: {}
- **Documentation**: {}
## Mathematical Foundations
### ECE Calculation
{}
### Confidence Intervals
- **Confidence Level**: {:.1}%
- **Bootstrap Samples**: {}
- **Method**: {}
### Cross-Language Calibration
- **Variance Calculation**: {}
- **Parity Enforcement**: {}
## Verification Methods
- **Public Dashboard**: {}
- **Status Page**: {}
- **Verification Tools**: Available for independent validation
---
*Generated from Calibration Manifest v{} on {}*
"#,
public_slo.contract_version,
public_slo.effective_date.format("%Y-%m-%d %H:%M:%S UTC"),
public_slo.expires_at.format("%Y-%m-%d"),
public_slo.performance_guarantees.ece_guarantees.base_threshold,
public_slo.performance_guarantees.ece_guarantees.adaptive_threshold_formula,
public_slo.performance_guarantees.ece_guarantees.coverage_factor,
public_slo.performance_guarantees.ece_guarantees.cross_language_variance_threshold * 100.0,
public_slo.mathematical_foundations.tau_formula_specification.worked_examples[0].scenario,
public_slo.mathematical_foundations.tau_formula_specification.worked_examples[0]
.calculation_steps.join("\n"),
public_slo.mathematical_foundations.tau_formula_specification.worked_examples[0].result,
public_slo.mathematical_foundations.tau_formula_specification.worked_examples[0].interpretation,
public_slo.service_level_indicators.primary_slis.iter()
.map(|sli| format!("- **{}**: {} (Target: {:.1}{})",
sli.name, sli.description, sli.target_threshold, sli.unit))
.collect::<Vec<_>>().join("\n"),
public_slo.contact_information.support_email,
public_slo.contact_information.technical_email,
public_slo.contact_information.documentation_url,
public_slo.mathematical_foundations.ece_calculation.ece_formula,
public_slo.mathematical_foundations.confidence_intervals.confidence_level * 100.0,
public_slo.mathematical_foundations.confidence_intervals.bootstrap_samples,
public_slo.mathematical_foundations.confidence_intervals.percentile_method,
public_slo.mathematical_foundations.cross_language_calibration.variance_calculation,
public_slo.mathematical_foundations.cross_language_calibration.parity_enforcement,
public_slo.verification_methods.public_reporting.dashboard_url,
public_slo.verification_methods.public_reporting.status_page_url,
public_slo.contract_version,
Utc::now().format("%Y-%m-%d %H:%M:%S UTC"),
);
Ok(doc)
}
}
impl fmt::Display for PublicCalibrationSlo {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(f, "Public Calibration SLO v{} (ECE ≤ {:.3})",
self.contract_version,
self.performance_guarantees.ece_guarantees.base_threshold)
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_tau_formula_calculation() {
let params = TauExampleParameters {
c_hat: 1.96,
k: 10,
n: 10000,
base_threshold: 0.015,
};
let sqrt_k_over_n = ((params.k as f64) / (params.n as f64)).sqrt();
let c_hat_term = params.c_hat * sqrt_k_over_n;
let tau = params.base_threshold.max(c_hat_term);
assert!(tau > 0.06 && tau < 0.063, "τ should be approximately 0.062");
}
#[test]
fn test_public_slo_defaults() {
let slo = PublicCalibrationSlo::default();
assert_eq!(slo.performance_guarantees.ece_guarantees.base_threshold, 0.015);
assert_eq!(slo.performance_guarantees.ece_guarantees.coverage_factor, 1.96);
assert!(slo.performance_guarantees.reliability_guarantees.service_availability > 99.0);
}
#[tokio::test]
async fn test_manifest_generator() {
use crate::calibration::ConfigurationFingerprint;
let generator = PublicManifestGenerator::new();
let manifest = CalibrationManifest {
manifest_version: "test-1.0".to_string(),
created_at: Utc::now(),
fingerprint: ConfigurationFingerprint {
hash: "test-hash".to_string(),
algorithm: "SHA-256".to_string(),
created_at: Utc::now(),
},
phase4_config: crate::calibration::Phase4Config::default(),
feature_flags: crate::calibration::feature_flags::CalibV22Config::default(),
dependencies: Vec::new(),
sbom: Vec::new(),
validation_results: Vec::new(),
approval_chain: Vec::new(),
};
let public_slo = generator.generate_public_manifest(&manifest, None).unwrap();
assert_eq!(public_slo.contract_version, "test-1.0");
let documentation = generator.generate_documentation(&public_slo).unwrap();
assert!(documentation.contains("τ Formula Explanation"));
assert!(documentation.contains("max(0.015, ĉ√(K/N))"));
}
}