I set up my animation system under 4.1 to freeze the world matrices of all meshes & mesh instances to reduce the performance penalty of checking every single frame, especially for those with a parent(s).
Nothing moves outside of the systems control, so it is known when world matrix needs to be recalculated. When rotation or position change occur, freezeWorldMatrix() is explicitly called on the mesh or meshInstance as well as any children. This gets computeWorldMatrix() called one time, but it is still frozen.
I also “bundled” a _freeze() call in the initial matrix freeze. This occurs in a scene after render, because I found freezing a mesh before it is rendered at least once is problematic.
Fast forward to 4.2. The upshot is that nothing moves in the unusual case where a mesh has instances. I also noticed that calling _freeze() as well is required to get the behavior change to happen.
Here is the most simplified PG of the issue. If either the instance or the call to _freeze() is eliminated, then it works as before. I can probably override _freeze() since I am sub-classing both Mesh & MeshInstance, if required.