I'm changing spriteId with sprite.spriteId = int newSpriteIdVar.
The timeline I'm talking about is one I've made, but the thing is if I don't change the spriteId, it works well, if I put my sprite inside the gameObject that will be controlled by the timeline instead, it works well, but when I try to control the sprite and change the spriteId, it becomes offset, I see it when I change the spriteId, the sprite don't have the good rotation as if it was resetting, but the rotation value on the transform is good. As I said earlier, it happens on only one of both wings, the other is good... maybe I could send you the project so you can further investigate on this? On my side I consider it fixed (patched would be a more accurate term) but maybe it could help you?