nostr is just a messaging API the definition of it is partially centralized and some of the participants have been extremely unilateral in many decisions on that repository the actual implementations are extremely variable, in part because the specification is vague in many places what makes it decentralized is that ultimately there is no such thing as an "official" compliant API implementation and clients don't get restricted to one set of "official" relays to request events from and publish to
you're right, it's interesting when you look at nostr this way. nips are supposed to be standards but it's basically just chaos. the only thing that's universally implemented is nip-01 and maybe nip-02 and yet, it's working somehow. kinda like the internet itself. incredible that any of it works at all.