Кто "он"?.. Middleware это простая концепция, это функция, которую вызывают, передавая в параметрах текущую action и функцию next(). Middleware смотрит на action.type, что-то делает и, если вызовет next(action), то этот action увидит следующий middleware, если следующих нет, то reducer. Если не вызовет, то эта action просто исчезнет и не дойдёт до редьюсеров. Вместо нее можно послать одну или несколько других action, просто вызвав next несколько раз.