при добавлении нового товара или изменении - дергается логика, которая формирует список рассылки
По сути фильтр смотрит на изменение каких-то атрибутов. Так что если этот атрибут изменился, надо пересчитать фильтр. Думаю разумно делать count запрос, что бы не нагружать систему. И если он вернул отличное число, то уже делать обычный. При этом можно кешировать результат, что бы юзать при пользовательском поиске.