distutils3.bbclass uses MACHINE and patches to Python to manipulate the sysroot usage. This means that anything using distutils3 needs to rebuild as MACHINE changes. Interestingly distutils.bbclass doesn't have this behaviour and simply removing it all appears to work fine.
Seems like this is already solved? 1) MACHINE is not used anywhere in python3 recipe or patches 2) MACHINE is not used in distutils3.bbclass, and is excepted from checksum calculation by d8ab563a2dcfbc726407f3b690988eb51bd88784 Let me know if I missed something