Currently, when mailer fails to send an email, nothing happens (only warning is logged after DSW-200). But it is bad for user - user is informed that confirmation or password recovery email has been sent even if it is not true.
If password recovery email is not sent, record of recovery code should be rolled back and appropriate error returned to client.
If account activation emails is not sent, registration should be rolled back, activated automatically or by administrator ("inform admin"). Again, appropriate error returned to client.
We should discuss the possibilities more before implementation...
Conclusion was that user should be just informed that email was not sent and interaction with the administrator is necessary (fix it, manually activate, manually change password, etc.).