It's a decision of IANA that nowadays no one character TLDs are existing. But the tech specs still allow them.
nevertheless, from a practical point of view, I think the limitation of min 2 characters is logical and allows to identify garbage records
disagree. the logic is not in creating a generic expression for checking a string for compliance with RFCs, but in trying to find erroneous or non-working records.