             failures (->> checkpoints
                           (filter #(-> % :success :value false?)))
             num-failures (count failures)]
+
+        (log :info "Creating target/logs/checkpoints.json")
+        (spit "target/logs/checkpoints.json" (json/generate-string checkpoints))
         (log :info "Creating target/logs/failures.json")
         (spit "target/logs/failures.json" (json/generate-string failures))
         (log :info (str "Failures: " num-failures))

        (condp = fun
          ;; Special forms
          'if
          (eval (conj (evaluate (-> fun-entry val) config) fun))

          'fn
          (fn [& argv]

            [cheshire.generate :refer [add-encoder encode-str]]
            [clojure.pprint :refer [pprint]]
            [clojure.tools.logging :refer [log]]
            [clojure.data.xml :as xml]
            [co.nclk.flax.node :refer [invoke destroy node-manager]]
            [co.nclk.flax.data :refer [resolve-module resolve-program]]
            [stencil.parser :refer [parse]]
