Of course it is not a strict benevolent dictator type of management, but still those changes are seldom communicated well with miners before they are implemented
Soft fork can cause unprepared hard fork, the July 04 fork is an example. It indicated that miners don't fully understand the consequence of BIP66, that is because they did not took part in the decision making process of BIP 66, thus they blindly follow the recommendation from core devs, and as a result, lost lots of coins
What do you mean they did not take part in the decision making? Of course they did, that was how the fork happened, when most of the miners supported BIP66 by producing the properly versioned blocks. It is just that they were SPV mining so they didn't check the validity of the invalid block they mined on which is what caused the fork. What does that have to do with then not participating the decision making?
Besides, Wang Chun, the operator of F2pool, actively participates in development. He posts on the mailing list, sometimes on IRC, and sometimes on Github. He is definitely a part of the decision making process. I'm sure that several other large pool operators do the same, I just don't know their names.
If they really actively participated in the decision making process of BIP66, they would have known that BIP66 might create a hard fork, thus they will reject BIP66 from the beginning. Or do much more preparation to prevent such a hard fork from happening. Just like we are now discussing the hard fork that Segwit soft fork could generate
The problem is technical and language barrier, so that miners might never reach same level of understanding like core devs, thus there must be enough good communication to be sure they are totally clear of all the consequences of a change. In fact even core devs themselves can not see all the possible attack vector if the solution is too complex
But this is too technical, basically the communication between core devs and rest of the community is broken because of the technical and complexity barrier, but as long as this barrier is there, there is no way to reach consensus, thus the way to reach consensus becomes politics/culture/religion. I guess that if some day Arabic countries control majority of hash power, only Muslim devs code will get their support
Technical barrier is usually used in centralized organizations to enforce their decision. But in bitcoin community, it has exactly opposite effect, e.g. it makes sure that no consensus thus no decision can be made