                                                                                    (dissoc m ::debugger))])
                    (update-in m [::debugger :next-action-id] inc))
 
-             ; looks like originating signal could be already cleared -> create "unknown signal" to record this action
+             ; else: looks like originating signal could be already cleared -> create "unknown signal" to record this action
              (reconcile model a))
 
            ; for bare app actions (e.g. when originating signal was cleared) create an "unknown signal" event
            :else
-           (let [[signal-id _ :as unknown-signal-event] (-signal-event (-> model ::debugger :next-signal-id) ::unknown-signal)]
+           (let [unknown-signal-event (-signal-event (-> model ::debugger :next-signal-id) ::unknown-signal)]
              (-> model
                  (update-in [::debugger :signal-events] concat [unknown-signal-event])
                  (update-in [::debugger :next-signal-id] inc)
-                 (reconcile [::app-action signal-id action]))))))
+                 (reconcile [::app-action (:id unknown-signal-event) action]))))))
 
 ;;;;;;;;;;;;;;;;;;;;;;;; View model
 (defn -view-model

;;;;;;;;;;;;;;;;;;;;;;;; Reconcile
(defn -orphaned-signal?
  "Orphaned signal has no actions."
  [model [signal-id _ :as _signal_]]
  (empty? (filter #(= (:signal-id %) signal-id)
                  (-> model ::debugger :action-events))))

(defn -wrap-reconcile

  [signal-events action-events dispatch]
  [:div
   (doall
     (for [{:keys [id signal]} signal-events]
       ^{:key id}
       [:div
        [-signal-view id signal dispatch]
        [-actions-view action-events id dispatch]]))])

(defn -initial-model-view
  [initial-model]
