   (merge event (l-ext/close-temporal-resources* event)))
 
 (defn release-messages! [messenger event]
-  (loop []
-    (when-let [id (<!! (:release-ch messenger))]
-      (p-ext/ack-message event id)
-      (recur))))
+  (go
+   (loop []
+     (when-let [id (<! (:release-ch messenger))]
+       (p-ext/ack-message event id)
+       (recur)))))
 
 (defn handle-exception [e restart-ch outbox-ch job-id]
   (warn e)

(ns ^:no-doc onyx.peer.task-lifecycle
    (:require [clojure.core.async :refer [alts!! <!! >!! <! timeout chan close! thread go dropping-buffer]]
              [com.stuartsierra.component :as component]
              [dire.core :as dire]
              [taoensso.timbre :refer [info warn trace] :as timbre]

          (prn "Job not covered yet. Backing off and trying again")
          (Thread/sleep 2000))

        (release-messages! messenger pipeline-data)
        (listen-for-sealer job-id task-id pipeline-data seal-resp-ch outbox-ch)
        (thread (run-task-lifecycle pipeline-data kill-ch))

        (assoc component :pipeline-data pipeline-data :kill-ch kill-ch :seal-ch seal-resp-ch))
      (catch Exception e
