When putting something inside the normal input inside a material that is not a Normal Texture it requires a World To Tangent transform which makes no sense! Either it is required for normal textures AND everything else or for neither!
Here I made a procedural spherical tangent normal, yet it is still required to transform from world space to tangent to be correct. As you can see in the bottom left the material is set to Tangent Space Normal! I don’t even understand how there should be any logic behind it, it is tangent procedural and is then converted from world to tangent while the material is set to tangent space and that is what works correct!
Here is that sphere tangent normal function I made:
][2]
You can easily test this by rotating the model that has the material applied along the face normal axis, the lighting should not change since it is Tangent space normal.