Most production ML incidents are data incidents. featurecheck is a tiny, NumPy-only guardrail you can run in training, batch scoring, or CI to catch feature drift and schema breakage early.
pip install -e .fromfeaturecheckimportdrift_report, psi, ks_statistic, check_schema# Distribution drift between a reference and a live sampledrift_report(reference_values, live_values) # -> {"psi":..., "ks":..., "level":"ok|warn|alert"}# Schema / null / dtype validation on recordscheck_schema(records, {"age": "int", "email": "str"})- PSI with quantile binning from the reference sample
- KS two-sample statistic
- Schema check: missing/extra columns, per-column null rates, dtype mismatches
MIT licensed.