¿Cómo hacer que una tarea de apio falle desde dentro de la tarea?

Bajo ciertas condiciones, quiero hacer que una tarea de apio falle desde dentro de esa tarea. Intenté lo siguiente:

from celery.task import task
from celery import states

@task()
def run_simulation():
    if some_condition:
        run_simulation.update_state(state=states.FAILURE)
        return False

Sin embargo, la tarea aún informa haber tenido éxito:

Task sim.tasks.run_simulation [9235e3a7-c6d2-4219-bbc7-acf65c816e65] tuvo éxito en 1.17847704887s: False

arece que el estado solo se puede modificar mientras la tarea se está ejecutando y una vez que se completa, el apio cambia el estado a lo que considere que es el resultado (consulteesta pregunt). ¿Hay alguna manera, sin fallar en la tarea al plantear una excepción, para hacer que el apio devuelva que la tarea ha fallado?

Respuestas a la pregunta(3)

Su respuesta a la pregunta