I often see BIP-110 criticized for violating Bitcoin’s transaction neutrality because it would restrict certain transaction patterns.
However, Bitcoin has adopted previous consensus changes that restricted script functionality or transaction construction.
What objective technical criterion distinguishes a consensus change that preserves transaction neutrality from one that violates it? In other words, how can transaction neutrality be defined in a way that consistently explains both previous consensus changes and the objections to BIP-110?
I am looking for an answer based on Bitcoin’s protocol design principles rather than opinions about BIP-110 or Ordinals.










