Consider
(d/transact conn [{:id 0 :array [{:id 1}]}])
(d/transact conn [{:id 0 :array' []}])
This is handled beautifully, except the :tg/owns statements on [:id 0] node are not retracted: :tg/owns is left pointing to two now non-existent nodes.
Another example:
(d/transact conn [{:id 0 :ent {:id 1}}])
(d/transact conn [{:id 0 :ent' nil}])