Stable sort — сортировка, которая сохраняет относительный порядок равных элементов. Если два элемента равны по ключу сортировки, они останутся в том же порядке, что и до сортировки. MergeSort — стабильный, QuickSort — нет. В Go sort.Stable гарантирует стабильность (использует mergesort), а sort.Slice — нет. Стабильность важна при многоуровневой сортировке: сначала сортируешь по дате, потом stable sort по имени — элементы с одинаковым именем останутся отсортированы по дате.