Development Changelog
Development history and milestone releases for vfairness. We are building towards v0.1.0, following Keep a Changelog and Semantic Versioning conventions.
vfairness is in active development. APIs may change before the stable v0.1.0 release. We welcome feedback and contributions via GitHub.
Roadmap to v0.1.0
The following features are planned for the stable 0.1.0 release:
Stable API
Finalized, documented API with backward compatibility guarantees.
Complete Test Coverage
Comprehensive unit and integration tests with >90% coverage.
Production Documentation
Full API reference, tutorials, and deployment guides.
PyPI Publication
Official package release on PyPI with all dependencies.
v0.0.8
Current March 2026Release consolidating all v0.0.x development work into a stable alpha milestone. Will include 43 historical discrimination patterns across US, EU, EU AI Act & Swiss jurisdictions, finalized APIs for the full pipeline, expanded test coverage, and polished documentation across all modules.
repair_level (0 = no change, 1 = full repair) with a tie-robust empirical-CDF mapping. Registered under dispatch key disparate_impact_removal and wired into the platform's pre-processing step (with a configurable repair-strength control).DisparateImpactRemover
disparate_impact_removal
get_massaged_labels() hook and a max_flip_fraction safety cap. Wired into the platform's pre-processing step.LabelMassager
label_massaging
get_resampled_data() hook with configurable strategy and balance_by. The platform rebalances the training split only, leaving the held-out test split intact for honest evaluation.Resampler
resampling
BCE + λ · GroupFairnessRegularizer. The fairness metric (demographic parity, equalized odds, equal opportunity, or FPR parity) is selected from the chosen fairness definition, and the penalty strength gives continuous control over the accuracy-fairness trade-off. Registered under dispatch key fairness_regularization; falls back to reweighting if torch is unavailable.GroupFairnessRegularizer
fairness_regularization
transform returns the latent columns (rep_0..). Tunable representation_dim and lambda_fairness; multiple attributes handled via their intersection. Registered as fair_representation and wired into the pre-processing step + Pareto sweep. Requires torch.FairRepresentationTransformer
fair_representation
DisparateImpactRemover, LabelMassager, Resampler, FairRepresentationTransformer and the fairness-regularization training loop now operate on the intersection of all protected attributes rather than only the first (e.g. they repair / rebalance / penalize race x gender jointly); (2) the regularizer accepts secondary fairness constraints (penalized jointly); (3) a degenerate-collapse guard detects and softens penalties that drive the model to a single class; (4) a training-row cap keeps the torch sweep responsive on large datasets; (5) pre-processing techniques (Disparate Impact Removal, Label Massaging, Resampling, Fair Representation) gained Pareto strength sweeps; and (6) results surface proxy-survival notes and small-sample / confidence warnings so a near-unchanged metric is explained rather than mistaken for a no-op.get_massaged_labels
get_resampled_data
secondary_constraints
attribute_historical_pattern(attribute, domain) helper resolves 24 documented (attribute class × regulated domain) precedents -- race / gender / age / national-origin / religion / disability / geographic proxy across hiring, lending, healthcare, justice, insurance and education. Pulse attaches the citation-backed envelope onto bias findings so the “Historical pattern” channel keys off a structured flag instead of regex-matching evidence text.attribute_historical_pattern
CRITICAL
HIGH
MEDIUM
_statistics.pybootstrap_ci
stratified_bootstrap_ci
bayesian_proportion_ci
bayesian_difference_ci
compute_metric_with_ci
proportion_z_test
fisher_exact_test
cohens_h
minimum_detectable_effect
power_warning
intersectional_disparity.svg) with ground truth overlay, severity-colored bars, prediction delta indicators, most/least advantaged comparison cards, and insight cards. 44th SVG template in the rendering module.intersectional_disparity_to_svg()
identify_privileged_groups() and intersectional_disparity_analysis() now compute ground truth rates, false positive rates, and prediction deltas per subgroup. New outcome_polarity parameter supports both favorable (loan approval) and unfavorable (recidivism) outcome directions.ground_truth_rate
false_positive_rate
prediction_delta
outcome_polarity
data_validation_to_svg() now safely handles nested dicts and lists, truncates overly long string representations, and only includes scalar values in metric cards. Previously, raw Python repr output (e.g., {'count': 5}) could appear in the SVG text.outcome_polarity='positive_unfavorable'. Previously, the ratio calculation was inverted for unfavorable outcomes, making insights misleading.
v0.0.7
Stable
February 2026
Show details
Documentation quality overhaul and major feature release. Complete site redesign with gradient theme system, plus new Reporting & Dashboards, Experimentation & A/B Testing, and Workflow Integration modules. 43 SVG templates across 15 adapter modules, 114 gallery illustrations.
v0.0.7
Stable February 2026 Show detailsvfairness.operations.reportingMetricsStore
FairnessDashboard
ReportGenerator
InteractiveDashboard
vfairness.operations.experimentationFairnessExperiment
FairnessPowerAnalyzer
ExperimentAnalysis
FairnessDriftDetector
AdaptiveThresholdManager
FairnessAlertPrioritizer
monitoring_dashboard
drift_report
alert_timeline
temporal_analysis
vfairness.operations.cicdHierarchicalGateConfig
FairnessReportCard
SmallSampleWarning
log_fairness_to_wandb()@auto_log_fairnessvfairness-check-config
vfairness-check-model-card
pytest11 entry point with marker, fixture, and terminal summary.@pytest.mark.fairness
fairness_gate
fairness-checks.yml
workflow_overview
hierarchical_gate
report_card
reporting_units_3.ipynb
experimentation_unit_4.ipynb
vfairness_8_workflow_integration.ipynb
correlation_matrix
causal_decomposition
robustness_testing
ranking_fairness
data_validation
auto_discovery
regression_fairness
reporting_dashboard
adapters_robustness.py
adapters_ranking.py
adapters_validation.py
adapters_discovery.py
adapters_regression.py
adapters_reporting.py
sys.modules aliasing.pyproject.tomlcorrelation_heatmap and correlation_matrix templates were painted over by grid cells. Fixed text-anchor from end to start, increased font size to 12px, and added 100px panel headroom.dot_x computation around the axis position and added smart label placement for negative values.
Major feature and documentation release. New modules require optional dependencies: pip install vfairness[reporting], pip install vfairness[experimentation], or pip install vfairness[mlops].
v0.0.5-dev
Alpha
February 2026
Show details
Post-processing expansion and SVG rendering engine. Added threshold optimisation, prediction reweighting, operations/monitoring modules for production deployment, and 28 purpose-built SVG templates for server-side report generation.
v0.0.5-dev
Alpha February 2026 Show detailsThresholdOptimizer
GroupThresholdOptimizer
PredictionReweighter
RejectionOptionClassifier
CalibratedEqualizer
DataBiasValidator
ModelFairnessGate
BiasMonitor
DriftAlert
FairnessConstraintType
FairnessTestSuite
@fairness_test
vfairness.rendering
evaluation.integrations to dedicated operations.cicd module.
v0.0.3-dev
Alpha
January – February 2026
Show details
Full pipeline expansion. Post-processing calibration, feature engineering, in-processing training interventions, and enhanced visualisation. Expanded vfairness from detection-only to a full-pipeline fairness toolkit.
v0.0.3-dev
Alpha January – February 2026 Show detailsFairExplAIner
GroupCalibrator
IntersectionalCalibrator
CalibrationAnalyzer
vfairness.preprocessing.feature_engineering
FeatureEngineeringAnalyzer
vfairness.in_processing
ExponentiatedGradient
FairClassifier
TemperatureScaling
PlattScaling
TrainableGroupCalibrator
classification_fairness_report()
FairnessTrainingAnalyzer
FairClassifier
FairRegressor
vfairness is no longer detection-only. With in-processing and post-processing modules, it now covers the full ML fairness pipeline.
v0.0.1-alpha
Alpha
December 2025
Show details
Initial development release. Core fairness metrics, statistical validation, bias detection module, and MLOps integration foundations.
v0.0.1-alpha
Alpha December 2025 Show detailsFairnessAnalyzer
BiasDetector
log_fairness_to_mlflow()
First public development release. Not recommended for production use. Install from source or GitHub.
Future Plans (Post v0.1.0)
Planned features for releases after the stable v0.1.0:
v0.1.x Series
- Causal fairness metrics
- Model-agnostic explanations
- Fairness-aware model selection
v0.2.x Series
- LLM fairness evaluation
- Continuous monitoring dashboard
- Enterprise compliance reports
Found a bug or have a feature request? Please open an issue on GitHub. We welcome contributions from the community.