Stable Discrimination Can Hide Reliability Failures in AI Decision Support Under Distribution Shift and Changing Target Definitions
Official code, results, and reproducibility repository for the peer-reviewed article published in Computers (MDPI).
Kovari, A. (2026). Stable Discrimination Can Hide Reliability Failures in AI Decision Support Under Distribution Shift and Changing Target Definitions. Computers, 15(9), 560. https://doi.org/10.3390/computers15090560
- Canonical DOI: https://doi.org/10.3390/computers15090560
- Publisher article: https://www.mdpi.com/2073-431X/15/9/560
- Canonical repository: https://github.com/kovariati/CRIT-AID
- Canonical software release: https://github.com/kovariati/CRIT-AID/releases/tag/v1.0.0
- Large generated results: https://github.com/kovariati/CRIT-AID/releases/download/v1.0.0/CRIT_AID_large_results_v1.0.0.zip
- Author ORCID: https://orcid.org/0000-0003-3521-4757
- Published: 26 August 2026
- Special Issue: Intelligence for Complex Data: From Retrieval and Understanding to Decision-Making
- Preferred scholarly citation: the peer-reviewed journal article above
- Machine-readable citation:
CITATION.cff,CITATION.bib,CITATION.ris
If the scientific method or findings contribute to your work, cite the peer-reviewed article. If you directly reuse or modify the software, also cite the CRIT-AID software release and follow LICENSE.
CRIT-AID is an executable empirical reliability-audit framework for AI decision support under distribution shift. It tests whether probability mappings, selection/abstention rules, and conformal uncertainty outputs retain their intended statistical meaning when source-derived rules are transported unchanged to target domains, when target definitions change, or when decision-relevant evidence is degraded.
The CRIT-AID protocol is the framework's mandatory seven-stage execution procedure. It separates model fitting, probability calibration, selection/conformal calibration, and testing; prohibits target-test tuning; and evaluates discrimination, probability quality, selective operating behavior, class-specific validity, and uncertainty informativeness through a common transport experiment. CRIT-AID is an audit framework and protocol, not a new predictive model.
In this project, a reliability failure means failure to preserve a stated statistical reliability property under transport or stress. It does not by itself imply clinical harm, safety failure, governance failure, or an application-level pass/fail judgment.
- Stable discrimination does not imply stable decision-support reliability. Under the evaluated shifts, AUROC could change little while probability calibration, transported operating points, or class-specific uncertainty changed materially.
- Target semantics can change probability reliability without materially changing ranking. On identical ACS 2024 records, changing the income target definition left AUROC nearly unchanged while ECE differed by 0.083; prevalence/intercept alignment reduced the ECE contrast to approximately −0.004.
- Label-conditional conformal calibration is a trade-off, not a universal repair. Across 27 primary 90% OOD/stress conditions, it improved worst-class coverage in 18, worsened it in 9, and usually enlarged prediction sets.
- Model-family sensitivity did not eliminate the reliability mismatch. A fixed cross-domain LightGBM analysis changed absolute performance without making discrimination, calibration, operating points, and uncertainty interchangeable.
- Transportability is the common audit object. Probability mappings, thresholds, class-specific coverage, and uncertainty informativeness should be tested directly rather than inferred from discrimination alone.
This repository may be useful as:
- a reference implementation of a multi-output AI reliability audit under distribution shift;
- an evaluation protocol for probability calibration under shift, selective prediction, and conformal prediction under shift;
- a benchmark design for target-definition sensitivity, target semantics, and decision-target drift;
- a reproducible baseline for comparing shift-aware calibration, abstention, uncertainty, and model-monitoring methods;
- a source of validated cross-domain results for ACS, OULAD, credit-risk, and heart-disease tabular settings;
- a starting point for external replication, sensitivity analysis, robustness studies, or reproducible reliability evaluation.
Paper keywords: AI decision support; trustworthy AI; distribution shift; dataset shift; target-definition sensitivity; probability calibration; selective prediction; uncertainty quantification; conformal prediction; model monitoring.
Related indexing/search terms: AI reliability; machine-learning reliability; reliability auditing; deployment shift; out-of-distribution evaluation; covariate shift; label shift; concept shift; target drift; target-definition shift; calibration under distribution shift; probability shift; selective classification; abstention; risk–coverage analysis; conformal prediction under distribution shift; class-conditional coverage; conditional coverage; uncertainty-set informativeness; trustworthy machine learning; tabular machine learning; robustness evaluation; decision support systems; ACSIncome; OULAD; credit-risk prediction; clinical prediction transfer.
| Domain | Main shift/audit question | Primary role |
|---|---|---|
| ACS 1-Year PUMS / ACSIncome, 2018→2024 | temporal/state transport and target-definition sensitivity | probability semantics and calibration |
| OULAD | matched temporal transfer, risk-set estimand, evidence timing | temporal reliability and estimand sensitivity |
| South German Credit | random vs decision-relevant evidence degradation | informational relevance under measurement loss |
| Heart Disease | leave-one-site-out institutional transfer | site shift, missingness, class-specific uncertainty |
Logistic regression with Platt scaling is the deliberately low-capacity primary audit probe. A fixed LightGBM specification provides model-family sensitivity analysis.
CRIT-AID/
├── README.md Scientific landing page and citation funnel
├── PROJECT_METADATA.json Canonical project/article metadata source
├── CITATION.cff GitHub-native citation metadata
├── CITATION.bib BibTeX article/software citation export
├── CITATION.ris RIS article/software citation export
├── codemeta.json Machine-readable research-software metadata
├── ARTICLE_METADATA.json Machine-readable published-article metadata
├── llms.txt Experimental machine/AI discovery index
├── DATA_AVAILABILITY.md Public data sources and reuse boundaries
├── REPRODUCTION_LEVELS.md Smoke → shipped-results → full regeneration paths
├── README_RUNNING.md Detailed execution instructions
├── CONTRIBUTING.md Contribution and reproducibility-reporting policy
├── SECURITY.md Security reporting policy
├── GITHUB_SETTINGS_CHECKLIST.md GitHub About/Website/Topics/social-preview settings
├── CHANGELOG.md Public release/change history
├── assets/ Social-preview source and PNG
├── scripts/ Data preparation, analyses, figures, and audits
├── tools/ Metadata generation and repository validation
├── manifests/ Cohort, split, seed, provenance, and source records
├── outputs/ Machine-readable canonical results
├── figures/ Figures generated from machine-readable results
├── docs/ Result registries and reproduction/provenance guides
├── data_raw/ User-supplied public source archives; not tracked by Git
├── prepared/ Locally generated analysis tables; not tracked by Git
└── .github/ Automated quality gate and issue templates
The repository intentionally excludes manuscript-production files, editorial correspondence, reviewer-response material, raw third-party datasets, local environments, caches, and internal development artefacts.
Windows PowerShell:
py -3.13 -m venv .venv
Set-ExecutionPolicy -Scope Process Bypass -Force
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
pip install -r requirements.txtLinux/macOS:
python3.13 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
pip install -r requirements.txtpython scripts/audit_repository.py --mode source
python tools/validate_repository.py .No raw datasets or model refits are required for this level.
Download CRIT_AID_large_results_v1.0.0.zip from the v1.0.0 release, extract its outputs/ files into this repository's outputs/ directory, then run:
python scripts/audit_repository.py --mode resultsSee REPRODUCTION_LEVELS.md and README_RUNNING.md for prepared-table and cold-regeneration workflows.
The study uses four public data sources: U.S. Census Bureau ACS PUMS (2018 and 2024), OULAD, South German Credit, and UCI Heart Disease. Raw third-party datasets are not redistributed. Exact sources and expected archive names are documented in DATA_AVAILABILITY.md, THIRD_PARTY_DATA.md, and manifests/raw_file_map.json.
Most compact canonical result tables are stored directly in outputs/. Three larger generated files are distributed through CRIT_AID_large_results_v1.0.0.zip as the versioned release asset rather than in Git history.
- Level 1 — Source/metadata audit: no raw data or refit required.
- Level 2 — Shipped-results validation: add the large-results asset and validate the complete result layer without refitting.
- Level 3 — Full regeneration: obtain the public source datasets and rerun the complete pipeline.
- Level 4 — Optional extension/sensitivity: additional analyses beyond canonical article reproduction.
Details: REPRODUCTION_LEVELS.md, README_RUNNING.md, and docs/REPRODUCIBILITY.md.
PROJECT_METADATA.json— canonical article/software identitymanifests/analysis_matrix.csv— analysis specificationmanifests/seed_manifest.csv— seed policymanifests/environment.json— frozen runtime/dependency recorddocs/METHOD_TO_CODE_MAP.md— method → implementation mapdocs/PUBLIC_RELEASE_VALIDATION.md— publication-day release auditdocs/RELEASE_PROVENANCE.md— article ↔ version relationship
The external raw-source archive identities remain recorded in manifests/raw_input_manifest.csv. These identifiers concern third-party input archives only; CRIT-AID does not maintain a repository-wide checksum manifest for ordinary source/documentation files.
The empirical evidence is intentionally bounded. It covers four public binary tabular domain families and does not establish population-level effect sizes for all AI systems. The primary model is logistic regression with Platt calibration, with LightGBM as a fixed sensitivity analysis; deep tabular models, foundation models, multimodal systems, LLMs, agents, online-adaptive systems, and continuous production monitoring were not evaluated. A passed CRIT-AID technical audit is not evidence of appropriate human reliance, clinical safety, or governance adequacy.
The software release and the scholarly article are distinct research objects.
Peer-reviewed article:
Kovari, A. (2026). Stable Discrimination Can Hide Reliability Failures in AI Decision Support Under Distribution Shift and Changing Target Definitions. Computers, 15(9), 560. https://doi.org/10.3390/computers15090560
Software:
Kovari, A. (2026). CRIT-AID Reliability Audit Software (Version 1.0.0). GitHub. https://github.com/kovariati/CRIT-AID/releases/tag/v1.0.0
Use CITATION.cff, CITATION.bib, or CITATION.ris for machine-readable citation export.
The original CRIT-AID source code and documentation are released under the MIT License. Third-party datasets retain their original licenses and repository terms. See CONTRIBUTING.md, SECURITY.md, and THIRD_PARTY_DATA.md.