Earlier quoted context omitted.
I just wish they added (and enforced!) a distinction between transactional notifications and everything else.
Android forces app developers to categorize notifications (the API is called notification channels). Each channel can be muted individually in the system settings. Though it's up to the app makers to correctly categorize their notifications, in my experience most apps do this. Whenever I see a spam notification, I immediatelly go mute the channel and the problem never repeats itself.
There's nothing to force you to be honest. It only forces you to specify a channel when you post a notification. You can as well just create a single one for everything, which is exactly what some apps do.