← Concepts

result_contract

Result Acceptance Gate

Un worker peut terminer sans produire un résultat utilisable. Le Result Acceptance Gate empêche Elora de confondre "la queue est done" avec "l'exécution est acceptée".

accepted

Le livrable est présent, utilisable, conforme au contrat disponible, et la clôture done est autorisée.

not_ready

La queue est encore pending/running, ou le résultat n'est pas synchronisé. Il faut sync/review avant de clôturer.

blocked states

failed, missing_artifacts, contract_violation et needs_revision bloquent close --outcome done sauf override explicite.

Ce que le gate inspecte

Frontière dure

elora-execute sync et elora-execute review rafraîchissent result_acceptance dans le record d'exécution. elora-execute close --outcome done --apply lit ce snapshot et refuse une exécution dispatchée qui n'est pas acceptée.

L'opérateur peut forcer uniquement avec --allow-unaccepted-result --override-reason "...". La raison est stockée dans .close.result_acceptance_override et auditée. L'override ne rend pas le résultat meilleur; il documente seulement une décision opérateur.

Cas manuel

Une exécution sans queue worker n'est pas soumise au même gate. Elle reçoit le statut manual_not_applicable: la clôture reste possible, mais la note opérateur doit expliquer ce qui a réellement été fait.