<domain>set by the Hub
The message body has been sent, smtp-data-termination-timeout has expired, and there is no confirmation. From here the node has exactly two paths, and this line chooses between them.
The default false — retry. The node considers the attempt failed and returns the message to the queue. If the receiver actually accepted it, the recipient will see a second copy.
true — record a delivery. There will be no duplicate, but no certainty either: the accounting record will appear regardless of whether the message got through. The manual says so directly — “may result in duplicate messages if used when not needed” — that is, enabling it does not cure anything by itself but shifts the side of the risk.
The cost of this decision is worth knowing. The Hub calculates deliverability from accounting records, and a record made on an assumption counts in that tally on a par with a confirmed one. A duplicate is noticeable to the recipient and causes a complaint; a false delivery is not noticeable at all and quietly inflates the metric.
The trade-off is deliberate: at major mailbox providers a disconnect after the dot is common, and it produces more duplicates than there is inaccuracy in the count. The general block gets the same value, although on your own and small receivers, where disconnects are rare, the false default would be more honest.
Raise the timeout itself first. If confirmations do not arrive, the right answer is to let the receiver finish, not to assign the result for it.
Enable it only for a specific receiver. For a mailbox provider that systematically does not respond after the dot but does accept messages, enabling it is justified. In the wildcard block — never.
Keep in mind that the deliverability metric will become incomparable. It cannot be compared before and after enabling: the numerator is counted differently.
# a known receiver is silent after the dot but does accept messages <domain legacy.example.com> smtp-data-termination-timeout 10m assume-delivery-upon-data-termination-timeout true</domain>
what people get wrong and how it ends2 mistakes▶
§ 3.3.10.102
our experience
2 relations
pmta show settings legacy.example.com/vmta1 | grep -i assume-delivery pmta show queues | grep -i legacy.example.com
3 articles
◇Four value types the whole config is written inBoolean, domain pattern, regular expression and time interval — defined once in § 3.2 and then used by all directives.◇Two inbound report processors and what to do with themBounces by message and complaints are parsed by two identically structured blocks; each has its own address list and its own pair of decisions about the message’s fate.◇How the policy for a receiver is assembledSettings are assembled from the most general pattern to the most precise; the order of blocks in the file means nothing.