Heap sort best case time - $\mathcal O(n)$? It is given $\mathcal O(n\log n)$ everywhere but in best case it should be $\mathcal O(n)$, isnt it ?
The argument here is, If my input has all the same keys, then every time I delete the root, I do not need to heapify, I just need to swap with the rightmost leaf.

Why is the above argument not valid ?
Big O is for measuring the worst case time complexity, and in this case it is $O(n)$. The best case is written as $\Omega$.  Here is a paper describing the reasoning for the best case. We generally do not consider the case of having only identical elements in the list.