• M11 — Orchestration du pipeline

    AntoineVe released this 2026-09-08 15:27:11 +02:00 | 16 commits to main since this release

    Jalon M11 complet : orchestration du pipeline pronote-sync.

    Composants livrés :

    • PipelineRunner : composition root orchestrant fetch -> normalize -> blog ->
      compare -> CalDAV -> synthese -> envoi XMPP
    • Etapes pipeline/steps/ : fetch, normalize, compare, caldav_sync, synthesis,
      send, fetch_blog
    • Hiérarchie des erreurs : PipelineError, PipelineWarning, PipelineCriticalError
    • Mode dry_run : aucune ecriture CalDAV/XMPP
    • Injection de dependances via Protocol, aucun singleton global
    • Reutilisation iCal par run (cache local, non persistant)

    Corrections FIXME_M11 (4 constats) :

    • PipelineCriticalError propage depuis les etapes non-bloquantes (arret du pipeline)
    • redact_exception() etendue avec extra_secrets ; Settings.redaction_secrets()
      collecte les 6 SecretStr configures ; PipelineRunner._redact() uniformise
    • BlogRSSClient signale ses echecs via BlogRSSFetchResult.error ; le pipeline
      emet un PipelineWarning pour le blog
    • 11 tests d'integration ajoutes (19 total), coverage pipeline 91%

    Validation : 619 tests, ruff/mypy/bandit/pre-commit verts.

    Downloads