ic_004 · Industry: Banking — 90-day loan default
Status: ✓ Passing · Last run: 2026-06-07T06:33:34 · Pipeline: v2
· History: 1/1 runs passed (100%)
What was tested
Banking — 90-day loan default Banking loan-default prediction: applicants + loans + payments + credit_history + labels. Signal: missed payments + utilization predict default.
What we planted in the data
- 300 entities
- Signal strength: 0.70 (sigmoid slope multiplier)
What the system did
- Training rows built: 1,200
- Features used in model: 27
- Model selected:
LogisticRegression - CV AUC: 0.698
Top features by importance:
interest_rate(0.336)credit_score(0.312)term_months(0.148)on_time_rate_180d(0.096)employment_type_1099(0.091)
What we checked — all assertions passed
| Status | Assertion | Detail |
|---|---|---|
| ✓ | no_pipeline_errors |
clean run |
| ✓ | feature_survival_rate_above |
27/30 features survived (90% ≥ 40%) |
| ✓ | source_tables_contributing_above |
16 distinct source-table prefixes in surviving features (['annual', 'avg', 'count', 'credit', 'employment', 'interest', 'loan', 'max', 'o… |
| ✓ | auc_in_band |
AUC = 0.698 inside band [0.55, 0.95] |
How this could have gone wrong
(no assertion descriptions provided)
Why this case matters
Industry-canonical ML problem; multi-table shape mirrors real customer datasets.
Reproducing
# from auto_insight_api/
python -m validation.v2 run ic_004 --pipeline v2 -v
- Case config:
validation/v2/cases/ic_004_banking_loan_default.yaml - Data shape:
industry_banking_loan_default - Analytics type:
ml_binary