This interceptor edits nothing, therefore no change should by pass sync and event module.
Sync saves records and Event module fires events from the afterTransactionCompletion() method which is of course called way after onFlushDirty() from where this interceptor throws the exception, so it will never be possible to have afterTransactionCompletion called for sync and event modules interceptors if an exception gets thrown here.