After you multiply the vertex position with the modelView matrix, you get the coordinates in view space, not in world space. But we need the world coordinates, because that’s what we use in the fragment shader. It would be a very big change to update all the fragment shaders to account for this, and also a breaking change because we allow the users to update the world coordinates in the vertex shader before transforming them to view/projection.
If precision is a problem for you, you can use a node material (or a shader material). See my answer here for additional comments:
Also, this blog post from @sebavan explains in more detail the problem with big coordinates: