   [spec args]
   (when-not (s/valid? spec args)
     (throw (ex-info "Invalid args"
-                    {:error "Invalid args"}))))
+                    {::validation-error "Invalid args"}))))
 
 ;; Commands -----
 

    (if-let [timer-id (:timer-id args)] ;; Necessary b/c validation hasn't happened yet
      (if (timers.db/owns? connection google-id timer-id)
        (func channel google-id connection args)
        (send-error! channel "Unauthorized"))
      (send-invalid-args! channel))))

(defn- wrap-can-create-timer


(def command-map
  (wrap-middlewares
   [wrap-exception wrap-validator wrap-transaction]
   (merge {"create-and-start-timer" (wrap-can-create-timer
                                     create-and-start-timer-command!)}
          (wrap-middlewares
