cc_001 · Canonical: v2 pipeline reproducibility on a fixed dataset

Status: ✓ Passing · Last run: 2026-06-11T00:51:57 · Pipeline: v2 · History: 1/4 runs passed (25%)

What was tested

Pins three metrics the v2 ML pipeline produces on a fixed entity-static dataset (n=1000, signal_strength=0.5, seed=42):

Each metric is recorded once into cc_001.json and compared on every subsequent run. If any one drifts — for ANY reason: training algorithm change, feature-engineering shift, library upgrade, random-seed handling, dictionary parser change — this case fires. Accepting the drift requires deliberately re-recording the answer key. This is the canonical layer's MVP: one case, three locked claims. Future canonical cases (different signal regimes, different data shapes) can layer in alongside.

What we planted in the data

What the system did

Top features by importance:

What we checked — all assertions passed

Status Assertion Detail
canonical_metric_match n_features=10 matches answer key 10 (diff=0.000000, tolerance=0.0)
canonical_metric_match n_features=10 matches answer key 10 (diff=0.000000, tolerance=0.0)
canonical_metric_match n_features=10 matches answer key 10 (diff=0.000000, tolerance=0.0)

How this could have gone wrong

Why this case matters

Property-based "AUC > 0.7" tells you the pipeline learned SOMETHING. Canonical "AUC == 0.812 ± 0.01" tells you the pipeline is producing the SAME computation it produced when you last validated it. The difference between "looks ok" and "actually reproducible." This case is the deterministic-output snapshot test for the v2 pipeline.

Reproducing

# from auto_insight_api/
python -m validation.v2 run cc_001 --pipeline v2 -v

← back to validation report