1) Я предполагаю, что ваш код обработки выполняется в действии перехода.
Вы можете получить из предоставленного StateContext
исходное состояние, целевое состояние и событие, которое вызвало переход.
Вы Я не могу получить следующее событие, потому что оно еще не было отправлено.
2) Я не думаю, что это возможно.
Если переходное действие может завершиться неудачно и это означает, что в этом сценарии вы следует go перейти в совершенно другое состояние - тогда вам следует перепроектировать машину состояний, чтобы запускать этот код где-то, отличным от действия перехода.
Например, из действия состояния, и отправлять другое событие, основанное на успехе / неудаче.