I was going to say: Gnunet pet names aren't globally unique, therefore Gnunet gives up on having the human-meaningful addresses be globally unique. However, from your link it appears that there is no requirement in Zooko's Triangle for those human-meaningful addresses to be globally unique. So it doesn't actually give up anything:
1. Pet names are human meaningful (though not globally unique). Check.
2. Public keys are secure (and in the typical cases globally unique, btw). Check.
3. Gnunet zones are decentralized. Check.
There you go. Triangle drawn.
AFAICT Gnunet punts the names down to the user in a similar way to how Convergence punted CA choice down to the user. In both cases the user chooses which entity or entities to trust, being more or less strict in what to do if those entities disagree based on some predetermined criteria.
In reality, however, I remember that Google balked at adopting Convergence because it seemed likely that most would have eventually just standardized on delegating their own choice of "decentralized" CA to Google. Then you'd end up with an ostensible decentralized set of authorities where that set is simply { Google } for the vast majority of users.
I don't see any mechanism in Gnunet that would avoid a similar fate. Especially given that the examples given in the current docs are so goddamned confusing and convoluted that a tempting workaround would be "Step 1. Just set Google as your thingy." I offer into evidence exhibit one: Gmail.
If they aren't globally unique they aren't really names anymore.
If I send you a link involving news.ycombinator.com, and you think that news.ycombinator.com is really furrypr0n.com, I would say that we are not using the same naming system.
That isn't distributed; it's merely incoherent.
Is the namespace decentralized? That depends on how you use it. If you use GNS with an ICANN provided root zone configuration (this is an example, there is no such thing atm), then your names will have the same meaning as for other people using this configuratin. If you build your root zone from scratch, you will have modified the namespace in such a way that names are no longer unique. If you go full petname system (ie. names are basically treated as your personal address book), the names are no longer unique.
Think about DNS: If you are sufficiently technically literate, you can run your own root servers and use them. Is DNS at odds with Zookos triange? I would argue: Yes, depending on how you use it. It is just very common to use it with unique global names.
The issue is going to be how to communicate a domain name that resolves identically between sender and receiver. Some sort of relative domain naming will have to be implemented. Perhaps sub domains may have to be resolved against the zone used to access the original information. Or, the address may also specifies the zone pkey against which names have to be resolved. If this could be resolved, the Zooko's triangle may finally be completed, without the need for globally unique names.
After that initial non-human friendly+secure part, the ideal result is that it is secure+human friendly. The reality is that this is just as vulnerable to eventual implicit centralization like DNS has been. That just means things need to be hijacked by regulatory capture instead of hacking.
I agree that it's probably the least-bad compromise available at the moment.
That might be part of the answer
https://en.m.wikipedia.org/wiki/Zooko%27s_triangle
I searched around the GNS site quite a bit and couldn't find an answer. It is pretty well understood today that the main obstacle to decentralized naming is Zooko's Trilemma, much as it was well understood pre-2009 that the main obstacle to decentralized cryptocurrencies was the double-spend problem.
I'm a bit surprised that "here's how we solve Zooko's Trilemma" isn't front-and center on the GNS website.