Your question
Hi,
Google redelivers the same DMARC aggregate report several times (same Report-ID, same Message-ID, separate SMTP sessions ~10 minutes apart). Stalwart handles the mailbox side correctly — only the first attempt gets ingested, the rest are skipped as already delivered.
But the report parser runs every time, so I end up with one message in the mailbox and up to 6 identical entries under Reports → Inbound DMARC Reports.
Today, for two domains, spread over 50 minutes:
12:08:53 domain-a 10061014495829950899
12:17:46 domain-a 10061014495829950899
12:30:49 domain-a 10061014495829950899
12:35:57 domain-a 10061014495829950899
12:41:06 domain-a 10061014495829950899
12:58:29 domain-a 10061014495829950899
The reports are identical.
Meanwhile the delivery side does the right thing:
Message ingested ← first attempt only
Delivery completed ← later attempts, PREVIOUSLY_DELIVERED
Only Google does this here, GMX and SES never redeliver. I checked my own side first: acceptance takes 3–5 seconds, my nginx stream proxy logs TCP 200 with full bytes returned, and TLS shutdown looks the same as gmail-smtp-in when I test both with openssl. So the redelivery seems to be Google-side and not something I can fix.
No data is lost, it’s just noisy in the report list. Running 0.16.19.
I understand that topics in this category are triaged by a bot first but a human reply will follow up. If I’d prefer a human-only reply, I’ll add the no-ai tag to my topic.
on