milan hauth [off-list ref] writes:
fact: the sort-order of filenames in a tree is not strictly regulated
Untrue, sorry.
The rule is "a tree entry that describes a tree object sorts as if
its pathname component has a trailing slash '/'". All your sample
trees should satisify that rule (or the implementation of Git that
created such a tree is broken).
In hindsight, if we used the collation order that puts '/' before
all other bytes when sorting the index entries and the tree entries,
it would have made a lot of implemenentation details clean and easier
to work with, but that would have been feasible in early 2005, and
not now.