torch.randint's high bound is exclusive, so randint(low=0, high=len(ns) - 1)
sampled indices 0..len(ns)-2 and never selected the final candidate. With
swap_size=2 this always returned the first tile count, silently disabling
the node's randomization. Use high=len(ns) so every option is reachable.