Classificação estranha da matriz ao usar Array.prototype.sort no Chrome

Eu encontrei uma singularidade ao usarArray.prototype.sort() em uma matriz de números e não tenho certeza do que está causando isso.

Meu objetivo é reverter uma matriz usandosort (não usereverse) para que eu possa encadear da seguinte maneira:

const shouldReverse = Math.random() > 0.5,
      result = foo().bar().map(...).reverseIf(shouldReverse);

Eu acredito que eu deveria conseguir isso usandosort, que parece funcionar em alguns casos, mas não em outros.

Aqui está um exemplo de trabalho:

const myArray = ['a', 'b', 'c', 'd'],
      mySortedArray = myArray.sort(() => 1); 

console.log(mySortedArray);
["d", "c", "b", "a"]

E um exemplo não útil:

const myArray = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k'],
      mySortedArray = myArray.sort(() => 1); 

console.log(mySortedArray);
["f", "k", "a", "j", "i", "h", "g", "b", "e", "d", "c"]

Isso só acontece no Chrome e somente quando há mais de 10 elementos na matriz - poderia haver alguma forma de otimização no mecanismo V8 do Chrome?