I'll read the article soon fwiw, but those questions come to mind. I'm definitely open to it.
For now I have:
1. Minimum "typo distance" between package names, unless within the same author.
2. Trusted Publishing + 2FA to promote from "published" to "released" required, no API keys.
3. 1 day dependency cooldown by default.
4. The language (and the build system, built in the language) has explicit capabilities model so you can statically verify what build scripts are allowed to do.
I feel like the benefit of namespacing must be quite low at this point but perhaps I need to reevaluate.