I couldn't find an issue about this, so here goes, my first try at reporting anything :)
How it works currently
The folder name in a tag/branch tarball is $user-$repo-$node, for example.
I understand that the node ID is unique and specifies very well what the tarball contains, but as SHA hashes are by definition unpredictable, it's impossible to automate with them. For example, in the distro I use and package for, there's a simple script that fetches the source, and of course it's a lot easier to specify a version string than something random. Even other than automation, you extract something and get eg. xi-pyyaml-607628291e74/, how do you know later on, which of your xi-pyyaml-* directories is the one you want?
What would be nicer
To solve this, I guess it would be better if tag downloads would contain instead the tag name (eg. xi-pyyaml-3.10), and it might also be useful if the branch downloads contained the branch name somehow too, though I'm not exactly sure about its usefulness.
Maybe for Hg repos where the local revision ID is defined (I know Git can't do this), if you approach the download from the revid, get a revid into the download's folder instead of the node. Yes, it's not unique and precise, but public repos shouldn't be history edited anyway. Still much more human-friendly than the random hash.