WorldTransform doesn't update?

worldTransform_problem.blend (437 KB)

I’ve been trying to work with matrices because it makes calculating difficult transformations easier, but I’ve noticed a problem. When I use worldTransform to set the position, orientation scale etc… of an object, the value is not updated until the following turn.

If the object (or other objects parented to it) tries to get their worldTransform data, they get the same values returned as before the worldTransform was changed.

I worked around it by decomposing the matrix to location, rotation and scale then setting each individually by using worldPosition, worldOrientation, localScale, but this kind of defeats the purpose of using matrices in the first place.

Is this a bug or a feature?

I notice this as well, with applyRotation vs worldOrientation=

I wonder if its for thread saftey when the thought they were threading logic?