Community generated tags seems like the obvious solution to all of this. You could easily give a setting to turn them off, breaks no existing systems, and allows for a broad emergent taxonomy. Only surface tags above X community upvotes except to superusers who are allowed to propose tags.
But then again, there’s always reddit :)
It breaks a central goal of HN, which is a non-siloed experience where the entire community is exposed to the same feed.