Operating system: Linux-5.4.0-48-generic-x86_64-with-debian-bullseye-sid 64 Bits
Graphics card: GeForce GTX 1080/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 450.80.02
Broken: version: 2.91.0 Alpha, branch: master, commit date: 2020-10-14 13:24, hash: rBfecb276ef7b3
Short description of error
Spline IK using Bone Original Y-Scale method still causes scaling, even if the bones are perfectly aligned to the curve in edit mode. Even if the spline IK chain appears to be the same in pose mode as in edit mode, repeatedly CTRL-A and "Apply Pose as Rest Pose" will reveal the problem --- watch as the bones shrink, shrink, shrink!
I think this is caused by T77330, as scaling the bone in the beginning of the chain by reciprocal of its scale seems to right the scaling in the whole chain (although this isn't precise enough to be reliable in a rig).
Exact steps for others to reproduce the error
The attached .blend file has two spline IK chains, one that has the error in a visual way, and another that shows how pernicious the error is -- it looks perfect to the naked eye, but running the provided Python script will reveal that there is, in fact, a tiny bit of posing happening due to the constraint:
BoneChain.000 <Matrix 4x4 (0.9910, 0.0010, 0.0030, -0.0150) (0.0090, 0.9970, -0.0050, 0.0200) (0.0110, -0.0030, 0.9940, 0.0250) (0.0000, 0.0000, 0.0000, 1.0000)> location <Vector (-0.0155, 0.0200, 0.0251)> 0.33102211487637834 Scale <Vector (0.9914, 0.9971, 0.9940)>
These sorts of tiny pose-changes are especially dangerous, since riggers are unaware of them unless they have a tool for checking, or have had enough (bad) experience with Spline IK to suspect it!