Confirm by changing [ ] to [x] below to ensure that it's a bug:
Describe the bug
ListObjectVersionsResult stores delete markers in a separate array. Because last-modified timestamp has limited resolution (1 second) -- it is impossible to figure out original order of versions and delete markers. If you select all versions and markers with the same key and (stable-)sort them by that timestamp -- if some entries have same timestamp, you will end up with uncertainty.
Expected behavior
ListObjectVersionsResult should store markers and versions in the same array (e.g. std::vector<std::variant<ObjectVersion, DeleteMarkerEntry>>) in correct order (as returned by server).