1. Удалять товары в категориях тогда, когда вы удаляете только категорию, это не хорошо. Я просто обычно выкидываю товары из данной категории и в большинстве случаев отправляю их в архив. Уведомить пользователя о том что что-то такое произошло довольно сложно, да и он сам это обнаружит когда обновит страницу ибо эти товары просто пропадут из корзины. А можно написать что мол "извините, этого товара больше нету". Либо через websockets, раз уж у вас все на node.js.
Вообще в интернет магазинах не так часто происходит удаление категорий или реорганизация структуры оных. Так что если у вас какая-то нестандартная ситуация, то думаю стоит обсудить это с владельцами магазина и контент менеджерами.