When creating controls for animators you do NOT want to freeze transforms on a control to “zero” it out. (See Image 01 - Below). This can cause issues for rigging and MEL scripts because you are simply just changing some pivot info, yet the true position is truly not zero. It introduces “bad” history to the node. The control in the image shows that it is zero in all transforms, yet we know it isn’t really at 0,0,0 world space.
The correct way to zero a node (Image 02 above) is to have a parent node to absorb any translate, rotate, or even scale for your node. You can do this by duplicating the control you have made and positioned and make it a parent. Name it something like zero_xxx. Be sure that you can’t visibly select it. Remove any shapes parented to this node, it sole purpose is to zero out the control your animator will use.
I'm busy working on my blog posts. Watch this space!