Fix resume lifecycle ordering

This commit is contained in:
Thigazhezhilan J 2026-03-28 14:37:42 +05:30
parent 2a75cec620
commit f92b5c5afc

View File

@ -627,6 +627,7 @@ def resume_strategy(user_id: str):
"broker": broker_state.get("broker"),
}
engine_config = None
if not engine_external:
try:
engine_config = _build_engine_config(user_id, run_id, None)
@ -642,25 +643,34 @@ def resume_strategy(user_id: str):
"run_id": run_id,
"message": "Saved strategy configuration is incomplete.",
}
reactivate_strategy_config(user_id, run_id)
update_run_status(user_id, run_id, "RUNNING", meta={"reason": "user_resume"})
_write_status(user_id, run_id, "RUNNING")
if not engine_external:
try:
started = start_engine(engine_config)
except Exception as exc:
deactivate_strategy_config(user_id, run_id)
_write_status(user_id, run_id, "STOPPED")
update_run_status(user_id, run_id, "STOPPED", meta={"reason": "resume_start_failed"})
return {
"status": "resume_failed",
"run_id": run_id,
"message": f"Unable to resume the strategy engine: {exc}",
}
if not started:
deactivate_strategy_config(user_id, run_id)
_write_status(user_id, run_id, "STOPPED")
update_run_status(user_id, run_id, "STOPPED", meta={"reason": "resume_start_failed"})
return {
"status": "resume_failed",
"run_id": run_id,
"message": "Strategy engine could not be started.",
}
reactivate_strategy_config(user_id, run_id)
resume_run(user_id, run_id)
_write_status(user_id, run_id, "RUNNING")
update_run_status(user_id, run_id, "RUNNING", meta={"reason": "user_resume"})
try:
user = get_user_by_id(user_id)