 (defn node-tags-key [id]
   (format node-tags-key-template id))
 
-(defn node-ids []
-  (with-car* (car/smembers node-set-key)))
-
 (defn uuid [] (str (java.util.UUID/randomUUID)))
 
-(defn node-ids []
+(s/defn node-ids :- [s/Str] []
   (with-car* (car/smembers node-set-key)))
 
 (def NodeInRedis

        (modify-node id {:url url :tags tags})
        (car/return (view-model id))))))

(defn destroy-node [id]
  (s/validate s/Str id)
  (with-car*
    (car/watch node-set-key)
    (try

   (s/optional-key :url)   s/Str
   (s/optional-key :tags) [s/Str]})

(s/defn view-model :- NodeView
  [id :- s/Str]
  (let [node-key (node-key id)
        node-tags-key (node-tags-key id)
        [contents tags] (with-car*
