It appears to me that we find ourselves at a trade off between parachain state transition function (STF) generality vs trustless XCM interoperability. At the current point in time parachains can define how XCM messages will be interpreted and executed. This introduces a requirement of trust between parachains, parachain A must trust that parachain B will execute a message sensibly. To achieve trustless interoperability parachains need some guarantees about how messages will be executed.
I have seen mentions of Shared Protected Runtime Execution Enclaves (SPREE) which appears to be a promising approach that will provide a sandbox with standardised logic for execution of messages. I have seen mention that SPREE would be "opt-in" which leads to a bit of fuzzyness regarding interoperability. Those parachains which do not opt-in could still execute malicious / faulty code meaning that users / parachain devs have to be savvy about which destination parachains they support for XCM.
I'm entertaining the idea of an interoperability-centric relay chain which constrains the generality of the parachain STF such that core pallets such as asset pallets, maybe VM choice, etc are standardised via SPREE. This way parachains require less trust for interop. Could this be achieved and if so how?
I'm guessing there would be a SPREE WASM blob on the relay chain which stores the shared logic and then maybe some validation of parachain STF would be required when registering and upgrading?