I'm really curious about this. The question (highlighed in bold):
Can someone name ONE GOOD REASON to have their email server permanently set up to auto-fail/immediate-fail on 4xx codes?
Because frankly, it sounds like "their" setups are broken out-of-the-box. SMTP is not Instant Messaging. Stop treating it like IRC or Jabber or MSN or insert-IM-technology-here. I don't know what possesses people to have the "IMMEDIATE DELIVERY OR FAIL" mentality with SMTP setups, but they need to stop doing that. It just plain breaks things. Every two or three years, I stumble into this. Someone, somewhere, has decided in their infinite wisdom that 4xx codes are immediate failures, and suddenly its OMGWTFBBQ THE INTARNETZ ARE BORKEN, HALP SKY IS FALLING instead of "oh, it'll re-attempt delivery in about 30 minutes". It amazes me how it suddenly becomes "my" problem that a message won't go through, because someone else misconfigured "their" SMTP service.
IF there is a legitimate reason for having your server permanently set up in this manner, then the first good answer will get the check.
IF there is no good reason (and I suspect there isn't), then the first good-sounding-if-still-logically-flawed answer will get the check.
I've set it up once that way because the owner wanted to know when emails were going to be delayed, and if so he wanted to change the text of the email. This was for a trading frim so I can understand the need for timeliness. Other than something like that I can't imagine why (and I thought that was a once in a blue moon setup)
From the RFC:
It's pretty clear that 4xx should only be sent in response to a temporary (transient being bad wording) problem. It follows therefore that there is no justifiable reason to treat it as an immediate error. It should be responded to be routine retries.
With that said, the excessive use of bold and italics suggests you take this matter not only seriously but personally. The best I can suggest is to just relax and not get so upset and strung out over someone else's idiocy.
When someone complains just point out that part of the RFC (leaving out the fact that an RFC is not a standard) and remind them that you have no control over how others set up their systems.
Thinking about it, I can maybe think there might be some sort of DoS attack if launced from inside where the client sends a crap load of emails to known invalid smtp servers. The would cause the mail server to start putting more load on itself as it keeps trying to resend.
I wouldn't called that I a good reason, but maybe it is at least "good sounding"? :-)
Maybe another reason might be "If it didn't work the first time, it probably won't, so lets let the user know right away. And I don't know how to make it alert that it is going to keep retrying". That one sounds even more lame to me though...