0033 catalogue ferme des evenements de pipeline
ADR-33 — Catalogue fermé des événements de pipeline¶
Statut : Décidé (2026-03-28)
Contexte : Sans vocabulaire stable, les logs dérivent, deviennent incohérents et impossibles à agréger.
Décision : Les steps pipeline n'émettent les événements critiques qu'au travers d'un catalogue fermé. L'ajout d'un événement nécessite une revue explicite.
Invariants :
- Événements : run_start, run_summary, crypto_start, crypto_end, screening_start, screening_end, training_start, training_end, fold_result, aggregate_result, backtest_result, verdict, pipeline_warning, pipeline_error, signal_funnel
- Événements obligatoires screen_step : run_start, crypto_start, screening_start, screening_end, crypto_end, run_summary
- Événements obligatoires test_step : run_start, training_start, fold_result (×N), aggregate_result, backtest_result, verdict, run_summary
- Un run sans ces événements obligatoires = défaut qualité
Champs requis par événement :
- run_start : run_id, crypto, group, horizons, mode
- crypto_start : crypto, n_candidates
- screening_start : crypto, grid_points, folds
- fold_result : crypto, fold, f1_buy, baseline_f1_buy, theta, duration_s
- aggregate_result : crypto, mean_f1_buy, std_f1_buy, n_folds
- backtest_result : crypto, strategy, sortino, win_rate, n_trades, tp_pct, sl_pct
- verdict : crypto, strategy, passed, status, code, reason, sortino, f1_buy, baseline_f1_buy
- run_summary : total_candidates, total_passed, total_rejected
Application : scripts/strategy_grid_search.py, scripts/strategy_testing.py, zenml_pipelines/steps/testing/test_step.py