As your message outlined the number of caveats a user has to understand when instantiating workflows through Spring is pretty large. My experience is that most users don’t try to understand them and just use Spring with Temporal as it is a normal application. This leads to numerous hard-to-catch bugs. So we need to find a way to preclude invalid usage before making this a supported way to work with Temporal Java SDK.