mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-14 10:52:41 +01:00
d9cdbdb9fa
Summary: Ref T4371. Ref T4699. Fixes T3994. Currently, we're very conservative about sending errors back to users. A concern I had about this was that mistakes could lead to email loops, massive amounts of email spam, etc. Because of this, I was pretty hesitant about replying to email with more email when I wrote this stuff. However, this was a long time ago. We now have Message-ID deduplication, "X-Phabricator-Sent-This-Mail", generally better mail infrastructure, and rate limiting. Together, these mechanisms should reasonably prevent anything crazy (primarily, infinite email loops) from happening. Thus: - When we hit any processing error after receiving a mail, try to send the author a reply with details about what went wrong. These are limited to 6 per hour per address. - Rewrite most of the errors to be more detailed and informative. - Rewrite most of the errors in a user-facing voice ("You sent this mail..." instead of "This mail was sent.."). - Remove the redundant, less sophisticated code which does something similar in Differential. Test Plan: - Using `scripts/mail/mail_receiver.php`, artificially received a pile of mail. - Hit a bunch of different errors. - Saw reasonable error mail get sent to me. - Saw other reasonable error mail get rate limited. Reviewers: btrahan Reviewed By: btrahan Subscribers: epriestley Maniphest Tasks: T3994, T4371, T4699 Differential Revision: https://secure.phabricator.com/D8692 |
||
---|---|---|
.. | ||
__tests__ | ||
PhabricatorMailReceiver.php | ||
PhabricatorObjectMailReceiver.php |