Filename "use" (as a technical mean to achieve something, for instance, gather release version) is generally tied to two aspects: convinience or performances.
For instance, why reading a meta file, when you can grab the release version from a string you already got since basic string manipulation (like a split) has pretty much zero overhead. Especially when you know that you're gonna have hundreds if not thousands of files in the folder.
You're gonna say that the meta file exists anyway, but it's probably like most design choice in that situation: "well I did it like that at the time and refactoring it was not my priority". Also, since the system relies on the version to "show/hide" var files in the UI, but also select the proper var to load, this is something that can be done without loading the meta file. Only knowing it's filename is enough to filter out what is needed or not.
Finally, the reason why there is no problem and nobody complained, it for what I told you earlier:
- 95% users are not power users and just "players" (besides moving/deleting a var, they don't even think about the tech part of it)
- The 5% remaining are creators and kind know (for the most part) what they're doing
Even tho, you will find in that 5%... persons doing bad things and botching a .var file, most of them won't as they have a logic that goes with a standard OS use. ie: don't rename a file for a random reason, don't manually modify meta files just for the fun etc...
And when you think about it. Windows is the same, you could go and modify library files or rename critical dlls in the OS without limitation. You'd have a weird surprise at the next boot, but nothing prevents you to do it.
Just like you could rename the .dat files in a Unity game or .pak files of a UE game... no one does that
One thing I agree with what you said earlier is, naming should cleanup user inputs. It drives me nuts to see files with
"UberLook[v3.3](Thing){CreatorWeirdness}.var"