The documentation for the certname setting should say that the value of the setting must match the regular expression given in https://github.com/puppetlabs/puppet/blob/8bf64bb72eb48cca24d7e6e4c99e6b21e497fa86/lib/puppet/x509/cert_provider.rb#L15.
And then follow that with "For best compatibility, you should limit the value of `certname` to only use lowercase letters..."
This should be updated in both puppet6 and puppet7 reference docs.