Right now sorting for items is defined on Node but really only used in pycollect between Modules and their children. Indeed comparisons between things using the _getsortvalue in pycollect.py and the default implementation in collect.py would not produce meaningful results.
My idea would be to remove general sorting support from collect.py/Node and move it to pycollect based maybe just on reportinfo(). People defining their collectors completely independently from the pycollect hierarchy would define their own approach.
I can cook a patch if this sounds reasonable.