A simpler test case just for the issue would be much appreciated next time.
Noted.
In your test the Floor is A when its a mesh shape and B when its a Box shape so naturally the normal inverts if you don’t check for the actual objects.
This was the problem! I wasn't aware that "object B" and "object A" was being swapped, so I was getting the collision normal of the other object (which is why the Y was inverted). I now check the object and fix the collision normal (by just multiplying the Y by -1) and all is working :)
I'm also using createBoxShape now, and it seems to work now that you fixed it -- thank you.
Do blocks still fall through the top of the floor and hit the bottom in the test case I provided? I don't have that issue with Gentrieve, but it was still some weird behavior in that test case.