Skip to content

0030 logs structures comme interface stable correlation data

ADR-30 — Logs structurés comme interface stable (CORRELATION DATA)

Statut : Décidé (2026-03-28)

Contexte : Les logs === CORRELATION DATA === dans le test_step sont parsés pour analyser la corrélation screening/testing. Ils constituent de facto une interface de données entre le pipeline et l'observabilité.

Décision : Les logs structurés (CORRELATION DATA et équivalents) sont traités comme une interface stable, pas comme du texte libre.

Invariants : - Le format key=value | key=value est un contrat — pas de changement de clé sans migration - Toute modification du format = breaking change documenté - Les champs obligatoires : crypto, strategy, screening_f1_buy, last_fold_f1_buy, baseline_f1_buy, verdict, sortino, passed - Les logs sont délimités par === CORRELATION DATA === et === END CORRELATION DATA === - Un parser automatique doit pouvoir extraire ces données sans regex fragiles

Application : zenml_pipelines/steps/testing/test_step.py (émission), Grafana (consommation future)