Per Barry's request, I thought I'd describe some of the issues our sites has encountered with Mailman lists and bounce messages.
At our site, we currently 15,775 subscribers (8,296 unique) across 549 lists. While a few of the lists are huge (hundreds or thousands of subscribers), the median list size is only 4 subscribers.
The primary issue we are encountering is that the vast majority of our lists (even the ones with hundreds of subscribers) are announcement-type lists, not discussion-type lists. The list owners are using the lists to reach coworkers, specific customers, course attendees, etc. The list admins know exactly which addresses are on their lists, because they've added them all themselves.
Situations like this happen all the time:
1. A VIP asks an administrative assistant to send out a message
to a group of people: team members, specific customers, etc.
2. The AA sends the message to the appropriate Mailman list.
Unbeknown to the AA, one of the addresses bounces.
3. The person whose address bounced doesn't get the message, and
(e.g.) misses an important meeting, fails to provide some
important information, etc.
4. The VIP comes down hard on the AA for failing to notify
everyone.
5. The AA comes to us full a fire and brimstone, complaining the
Mailman doesn't permit people to perform necessary business
functions.
The issue is that people in this situation *want* to see the individual bounces, and they want to see them *immediately*, because the bounces contain important information that they might need to act upon. The closest they can get to that right now is to configure the list so that a single bounce immediately removes the subscriber from the list. But this isn't always the correct thing to do. (For example, lots of people seem to have broken vacation programs that respond to *everything*, and they continually get unsubscribed from lists.)
The more I think about this, the more I think that silently discarding bounces is an error. While some bounces are irrelevant (e.g. vacation messages), in the majority of cases, bounces are information that some entity should act upon. There should be two (and only two) options:
1. Mailman processes all bounces.
2. All bounces are forwarded to the list administrator(s).
I've attached my first attempt at implementing this behavior. (I say "first attempt" because I'd really like to get both the listname and the address that bounced into the Subject header, but to do that requires more complicated logic than what I've implemented so far.)
If list admins *really* want to (effectively) discard all bounces, they can e.g. set bounce_info_stale_after to 1 and then set bounce_score_threshold to something impossibly high (e.g. 500,000).
Thoughts?
James