   (log/debug "invoked handle-resource-offers!")
   (let [offer-stash (atom nil)] ;; This is a way to ensure we never lose offers fenzo assigned if an errors occures in the middle of processing
     ;; TODO: It is possible to have an offer expire by mesos because we recycle it a bunch of times.
-    ;; TODO: We will see a lot of pending job contention as fenzo takes a long time to schedule. This is *probably* fine as long as some iterations are faster than ranking..
-    ;;       Can we *just* update the new job atom?
     ;; TODO: If there is an exception before offers are sent to fenzo (scheduleOnce) then the offers will be lost. This is fine with offer expiration, but not great.
     (timers/time!
       handle-resource-offer!-duration

  (import java.util.concurrent.TimeUnit
          com.netflix.fenzo.TaskAssignmentResult
          com.netflix.fenzo.TaskScheduler
          com.netflix.fenzo.VirtualMachineLease))

(defn now
  []

            ;; "Penalization" should only be employed when Fenzo does successfully match,
            ;; but the matches don't align with Cook's priorities.
            (empty? matches) true
            :else
            (let [_ (swap! pending-jobs update-scheduler-contents)
                  task-txns (for [{:keys [tasks leases]} matches
                                  :let [offers (mapv :offer leases)
                                        slave-id (:slave-id (first offers))]
                                  ^TaskAssignmentResult task tasks
