 (defn update-fn
   "This function is what actually gets sent to the conv-actor. In addition to the conversation and vote batches
   up in the channel, we also take an error-callback. Eventually we'll want to pass opts through here as well."
-  [conv vote-batches error-callback]
+  [conv votes error-callback]
   (let [start-time (System/currentTimeMillis)]
     (try
-      (let [votes          (flatten vote-batches)
-            updated-conv   (conv/conv-update conv votes)
+      (let [updated-conv   (conv/conv-update conv votes)
             zid            (:zid updated-conv)
             finish-time    (System/currentTimeMillis)]
         (log/info "Finished computng conv-update for zid" zid "in" (- finish-time start-time) "ms")

      ; In case anything happens, run the error-callback handler. Agent error handlers do not work here, since
      ; they don't give us access to the votes.
      (catch Exception e
        (error-callback vote-batches start-time (:opts' conv) e)
        ; Wait a second before returning the origin, unmodified conv, to throttle retries
        (Thread/sleep 1000)
        conv))))

            [polismath.metrics :as met]
            [polismath.db :as db]
            [polismath.utils :refer :all]
            [plumbing.core :as pc]
            [clojure.core.matrix.impl.ndarray]
            [clojure.core.async
             :as as
