Столкнулся с подобной проблемой на другом проекте, и кажется ее возможно решить в текущей реализации. Тем более, что мы уже выделили абстракцию по работе с сайд-эффектами. Нужно как минимум подумать на этот счет.
Т.е. если во время обработки какого-либо события пришло событие из сайд-эффекта, который будет отменен другим сайд-эффектом отправленным после текущей обработки. Мы хотим пропускать такое событие, чтобы убрать код валидации подобных ситуаций из конкретных реализаций и применений.
Кажется будет очень хорошо, если подобные ситуации будут решаться внутри фреймворка.