musl has a better track record of standards compliance than glibc. Common method for porting to musl is putting non-standard compliant code into an ifdef glibc.
This is, of course, the same musl that refused to implement TCP DNS requests until very recently. And they only did so because the DNS standards people got fed up with people not implementing it, and made it a requirement.
That doesn't necessarily contradict "the DNS standards people got fed up with people not implementing it, and made it a requirement."?
It took musl about 6 years to implement the requirement.
And glibc is the one not implementing strlcpy and strlcat until June 2023.
strscpy is the better API anyway
I do not know about standards, but I know the only deployment images I have problems all the time with random weird DNS failures are the musl-based ones. No idea what causes it, but makes me wish to get rid of all musl usage just to have stable deployments.
Counterexample: musl's crypt() does silly things, like treat all unrecognized inputs as DES, even if the salt characters are invalid.