ソースを参照

chore: add asserts in rtc.remote-update

rcmerci 3 ヶ月 前
コミット
921cbb832e

+ 2 - 1
src/main/frontend/worker/pipeline.cljs

@@ -383,7 +383,8 @@
        :pages pages
        :blocks blocks})
     (catch :default e
-      (js/console.error e))))
+      (js/console.error e)
+      (throw e))))
 
 (defn invoke-hooks
   [repo conn {:keys [tx-meta] :as tx-report} context]

+ 7 - 1
src/main/frontend/worker/rtc/remote_update.cljs

@@ -104,7 +104,12 @@ so need to pull earlier remote-data from websocket."})
     :transact-opts {:repo repo
                     :conn conn}}
    (let [opts' (assoc opts :keep-block-order? true)]
-     (outliner-core/insert-blocks! repo conn blocks target opts'))))
+     (outliner-core/insert-blocks! repo conn blocks target opts')))
+  (doseq [block blocks]
+    (assert (some? (d/entity @conn [:block/uuid (:block/uuid block)]))
+            {:msg "insert-block failed"
+             :block block
+             :target target})))
 
 (defmethod transact-db! :insert-no-order-blocks [_ conn block-uuid+parent-coll]
   (ldb/transact! conn
@@ -546,6 +551,7 @@ so need to pull earlier remote-data from websocket."})
         ;; TODO: current page-create fn is buggy, even provide :uuid option, it will create-page with different uuid,
         ;; if there's already existing same name page
         (assert (= page-uuid self) {:page-name page-name :page-uuid page-uuid :should-be self})
+        (assert (some? (d/entity @conn [:block/uuid page-uuid])) {:page-uuid page-uuid :page-name page-name})
         (update-block-attrs repo conn self op-value)))))
 
 (defn- ensure-refed-blocks-exist