accepted
Le livrable est présent, utilisable, conforme au contrat disponible, et la clôture done est autorisée.
result_contract
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".
Le livrable est présent, utilisable, conforme au contrat disponible, et la clôture done est autorisée.
La queue est encore pending/running, ou le résultat n'est pas synchronisé. Il faut sync/review avant de clôturer.
failed, missing_artifacts, contract_violation et needs_revision bloquent close --outcome done sauf override explicite.
deliverable.usable, statut et raison;quality.json / artefacts;result.md, result.json, quality.json et manifeste artefacts.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.
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.