Maybe the real issue is that we use the error reporter when we report the error instead of the rejected value (which should always be an Error object)?