i actually bothered to read the bitcoin cash codebase.. and actually. if you read the code. the 32mb is known as a consensus limit.. but they also have a "regulated" limit of 2mb called the policy limit
https://github.com/Bitcoin-ABC/bitcoin-abc/blob/master/src/policy/policy.h#L19this is the same as what bitcoin core had before 2013.. 1mb consensus limit but 0.5mb "regulated limit" (in policy.h)which then went up to 0.75mb
and then in around 2015 went up to 1mb..
all without needing to fork or have big discussions because the policy was a flexcap limitcheck it out consensus.h vs policy..h
I want to get back to this, and I am embrassed to say that I am not sure how that works. Who decides when to increase the "flex cap" limit? Is it the miners only, or does it have to be in consensus with the non-mining full nodes?
at current coding. core and cash accepts anything below consensus.h limit.. and then core freely allows the mining pool to make the blocks bigger than policy which will still be acceptable to core as long as the new blocksize stays under consensus (meaning to non-mining nodes) policy is meaningless to core users as its something pools decide solely by themselves
however take bitcoin unlimiteds proposal a few years back (core rejected it) where by the policy.h becomes somthing non-mining nodes vote on by having s a value in their node identity and then mining pools only move forward making bigger blocks if a high percentage of nodes wave a flag to say its ok to do so.. they said it was a bad voting mechanism
kind of funny that devs that said no to it.. becasue it was them same devs that actually then went on to beg users to put "nosegwitx2" or "yesUASF" in their identifier to see how many people wanted the core roadmap. they even promoted people put it into thier twitter usernames and other non-code social stuff such as 'buy a UASF hat and take a picture on social media and get people to share it'.. (facepalm)
devs love their social drama campaigns but try to avoid code voting (avoided consensus upgrade and done the 3shell trick of a MANDATORY bilateral split) which they thought was OK because all the social media and social identifiers said it was ok (facepalm)