    ::score-signal-fn  default-score-signal
    ::collect-fn       collect-into
    ::signal-fn        async-vertex-signal
-   ::input-channel-fn chan})
+   ::input-channel-fn chan
+   ::new-edges        0})
 
 (defrecord Vertex [id value state prev-val in outs]
   #?@(:clj

          (let [signal (f vertex opts)]
            (if-not (nil? signal)
              (receive-signal v id signal)
              (warn "signal fn for" (:id v) "returned nil, skipping...")))
          (recur (next outs)))))))

(def default-vertex-state

          (let [signal (f vertex opts)]
            (if-not (nil? signal)
              (>! (input-channel v) [id signal])
              (debug "signal fn for" (:id v) "returned nil, skipping...")))
          (recur (next outs)))))))

(defn sync-vertex-signal
