I apologize for bringing perhaps trivial/well-known matter, but I am interested in your opinion.
RFC 5322 clearly states that mail messages SHOULD contain a Message ID identifier, but if the do contain it, it MUST be globally unique.
Despite this requirement, I have encountered senders (namely Spamcop) that sends obviously different (albeit related) messages called "Alert" and "Summary" (they are always related to the same incident and have the same Message ID). This creates all sorts of problems when processing these mails, namely with users that have local forwards from one domain to another (our mailserver hosts multiple domains), because for example Dovecot refuses to forward the second message, flagging it as a duplicate.
My question to you is - did you also encounter similar incorrect (according to RFC standards) problem, and if so, is there a way to persuade dovecot to perhaps determine the uniqueness of a message by other means than just checking the message ID (i.e. look at other identifiers, Subject, perhaps)? Because according to the log records, Spamcop does not seem to be the only offender.
I would think this is more related to MTA's then dovecot. It is dovecot's core job to put messages in mailboxes. However interesting this globally unique. At first sight, I would say a bit unnecessarily broad. I would recommend using a mail filter in any mta, grab whatever you want and analyze that, with that solution you can add any header you like. I do not get what spamcop has to do with this, afaik this is a dnsbl.