upvote
> Why didn’t the DMARC spec say that a domain is “not present” if it lacks MX records?

That doesn't match the SMTP spec, RFC 5321 says

> If an empty list of MXs is returned, the address is treated as if it was associated with an implicit MX RR, with a preference of 0, pointing to that host.

https://www.rfc-editor.org/rfc/rfc5321.html#section-5

reply
> Why didn’t the DMARC spec say that a domain is “not present” if it lacks MX records?

MX implies a domain can receive email, you don't need it to send email. A setup where company.example sends email from companymailings.example but sets a reply-to for support@company.example is perfectly valid (even if it's stupid and confusing). Plus there's that weird legacy behaviour of mail servers delivering to port 25 to the IP in the A record if MX records are missing.

reply
> A setup where company.example sends email from companymailings.example but sets a reply-to for support@company.example is perfectly valid

So shouldn’t this be done explicitly by setting a policy at _dmarc.companymailings.example instead of implicitly by setting at otherwise entirely useless record (of type A? some unused TXT variant?) at companymailings.example?

reply