Some form of "moderation" is absolutely necessary if you want any open space to remain usable by good people.
And shared blocklists are a completely inefficient solution, it belongs more to the domain of "p2p-like ideas that are very cool but do not work at scale".
The only solution I can see is to do it with smart relays that the users choose to act on their behalf, relays with clear policies, reputation and name-recognition, community relays etc -- all interchangeable, of course, and easily swappable on the client side.
Muting people or hiding posts from people outside of your WoT can good solutions to catch anything that slipped through relays, but they cannot work in an actually adversarial environment without destroying the experience in multiple different ways.
nostr:nevent1qvzqqqqqqypzqwlsccluhy6xxsr6l9a9uhhxf75g85g8a709tprjcn4e42h053vaqyd8wumn8ghj7urewfsk66ty9enxjct5dfskvtnrdakj7qgmwaehxw309aex2mrp0yh8wetnw3jhymnzw33jucm0d5hsqgzj0wmlflrx3x05xdmft5pg0nsshyneuefe24dek2j5udsales6z555pkus