           ticket-ids (map id-str->int (filter #(= \:  (get % 0)) parts))]
       {:ids ticket-ids :maybe-command command :message message-str})))
 
-(defn process-git [git-hash email & message-pieces]
+(defn process-git
+  "This is the entry point for processing git feedback.
+  It takes a commit hash, the author email, and any chunks of the message.
+  These are most easily obtained with: `git log -n1 --pretty=format:'%H %ae %s'`"
+  [git-hash email & message-pieces]
   (let [message-map (parse-git-message (cstr/join " " message-pieces))
         command (:maybe-command message-map)
         tickets (:tickets (ticket-file!))]

         _ (unlock!)]
     res)))

(defn open-state [pref-file]
  (-> (:ticket-states pref-file) first keyword))
(defn closed-state [pref-file]

    ret))

(defn blocking-deref
  "Given an atom and a Result object, attempt to cycle the process tick on derefing until `pred-fn` isn't true
  By default, `pred-fn` is nil?
  Once the condition doesn't hold, the Result will be set to @a, and @a is returned"
  ([a r]
