From 4bb72dcf2a6ce7659cefcecb4070d5a971c12c07 Mon Sep 17 00:00:00 2001 From: Ruben Tordjman <144785435+DrRebus@users.noreply.github.com> Date: Wed, 29 Apr 2026 16:11:24 +0000 Subject: [PATCH] fix: Fixed resolutions reaching BLOCKED_DEADLOCK when a Step's state is modified externally Signed-off-by: Ruben Tordjman <144785435+DrRebus@users.noreply.github.com> --- engine/engine.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/engine/engine.go b/engine/engine.go index 243ad3e4..c57dbb78 100644 --- a/engine/engine.go +++ b/engine/engine.go @@ -359,6 +359,15 @@ func initialize(dbp zesty.DBProvider, publicID string, debugLogger *logrus.Entry return nil, nil, nil } + { + // Making sure to prune steps whose dependencies were updated outside the engine (API, manually in DB, etc) + stepsToCheck := map[string]bool{} + for stepName := range res.Steps { + stepsToCheck[stepName] = true + } + pruneSteps(res, stepsToCheck) + } + if err := dbp.Commit(); err != nil { dbp.Rollback() return nil, nil, err