Regression Detection Flow
Statistical Protocol
Minimum Sample Size The RegressionEngine requires at least 30 independent samples per metric for bootstrap confidence intervals. If fewer samples are available, the engine reports insufficient data rather than a regression verdict. Bootstrap Procedure- Compute per-sample differences: candidate_score - baseline_score
- Resample differences with replacement 10,000 times
- Compute mean difference for each resample
- Extract 2.5th and 97.5th percentiles as the 95% confidence interval
Regression Classes
When regression is detected, it is classified by severity and scope:Metric-Specific Thresholds
Different metrics may have different regression thresholds:- Accuracy: 2 percentage point drop
- Exact Match: 3 percentage point drop
- ROUGE-L: 0.02 absolute drop
- BLEU-4: 0.01 absolute drop
- Safety Pass Rate: any drop is critical
- Latency: 20% increase
Multiple Comparisons
When testing many metrics, the chance of false positives increases. The RegressionEngine applies a simple Bonferroni correction: divide the significance level (0.05) by the number of metrics tested. For 10 metrics, the effective threshold is 0.005.Baseline Selection
The baseline model is specified in the experiment configuration. Typical choices:- The best-performing parent model
- The previous release candidate
- A fixed reference model maintained by the project
Reporting
Regression reports include:- Baseline and candidate model IDs
- Metric name and sample count
- Mean difference and 95% CI bounds
- Regression class and recommended action
- Raw score distributions (for manual review)
Integration
The RegressionEngine is called by the EvaluationEngine after benchmark aggregation. Results are stored in the ExperimentTracker and influence candidate status assignment. See Evaluation Framework for the full evaluation pipeline.Regression evaluation uses the Optimization Set for evolution-phase checks. Post-evolution regression checks may use the Validation Set or Hidden Test Set for final verification.