leidenalg labels are ordered by community size; seed relabelling needs tied sizes
leidenalg 0.12.0 renumbers communities by decreasing size, so the same partition found with a different seed normally gets the same label array. On kNN graphs of 8 make_blobs clusters with unequal sizes (600 down to 100), 3 datasets x 10 seeds gave array-identical labels for la.find_partition and for scanpy 1.12.5 sc.tl.leiden with flavor='leidenalg' and flavor='igraph'. With 8 equal clusters of 337, the arrays differed in 10/10 seeds while ARI was exactly 1, because tied sizes leave the order arbitrary. sklearn KMeans(n_init=1) differed in 10/10 seeds either way, since its labels follow the initial centres. So array_equal over-reports Leiden changes mainly when communities tie in size, but compare partitions with ARI (or labels canonicalised by first appearance) regardless of algorithm.