anchor.diff:                   ;;FIXME: Suboptimal place, but somebody has to do it...
                    (make-rooturl-real rootid)
                    (grab-text url)))
  -         (references (reference-list-for-rooturl url)))
  +         (references (reference-list-for-rooturl url))
  +         (warstats (generate-rooturl-warstats url :reference-cache references)))
       (uiop/common-lisp:ensure-directories-exist (make-warstat-path rootid :opinions))
       (with-open-file (fh (make-warstats-path rootid :opinions)
                           :direction :output :if-exists :overwrite
  
positive.code:     (with-open-file (fh (make-warstats-path rootid :warstats)
                          :direction :output :if-exists :overwrite
                          :if-does-not-exist :create)
        (json:encode-json (generate-rooturl-warstats url :reference-cache references) fh))
      (with-open-file (fh (make-warstats-path rootid :questions)
                          :direction :output :if-exists :overwrite
                          :if-does-not-exist :create)
        (json:encode-json (question-list-for-rooturl url) fh))
      (with-open-file (fh (make-warstats-path rootid :text)
                          :direction :output :if-exists :overwrite
                          :if-does-not-exist :create)
  
negative.code:                            :tree-address (nreverse (cons (car node) location))
                             :questopinid (assoc-cdr :id opin)
                             :questopinurl (assoc-cdr :url opin)
                             :warstats (gethash (car node) warstats)))))))
                     (when (cdr tree)
                       (proc (cdr tree) (cons (car tree) location)))))
          (proc tree nil)))))
  