Proposal: When excluding past mailing recipients, exclude past recipient email addresses, not just contacts
Sometimes, you want to send a few different versions of a mailing, so you segment your list and send different versions to different groups or to search results. Of course, you want to make sure no one receives two different versions of the same email, so you make sure to exclude the earlier mailings from the later ones. But if two contacts share an email address, one can receive the first mailing and the other the second mailing. Excluding recipients of the first mailing only excludes contacts who received the first mailing, not email addresses that received the first mailing.
Similarly, you might send a mailing, only to have someone realize a mistake was made when half the emails have been delivered. You cancel the mailing, make a copy and fix the error and then send the mailing to the same group minus the recipients of the first mailing. This doesn't work at all, because the intended recipients of the excluded mailing are excluded, not the actual recipients. But if we get past that problem, we'd also run into the same problem as above.
I propose that to fix this, when the dedupe emails setting is enabled in CiviMail, we do an additional check to see if any of the excluded contacts' primary/bulk email address is also used by a contact in the included list, then exclude those recipients as well. I'll need to look at the details of this to make sure performance isn't an issue. If someone wants multiple emails sent to the same address for multiple contacts, they would have the dedupe setting in Civimail turned off, so this change wouldn't affect them. Otherwise, I think this is line with what users would expect.
Also, when recipients of a mailing are excluded, we should check if the excluded mailing status is cancelled. If it is cancelled, then we should only exclude the actual recipients rather than the intended recipients. I think users would also expect excluding recipients of a mailing would exclude the actual recipients, rather than the intended recipients.