You nailed it. Ideally, both employees and employers should have the freedom to choose whether to work onsite or remotely, based on their preferences (again, this is subjective and not scientific). I believe the market could self-regulate in such a way. For instance, if the demand for remote work exceeds the supply, a savvy employer with a fit for remote work could take advantage of it by attracting better/more/cheaper talent through offering remote positions.
However, what needs to be debated and critizised is when employers change the rules midway through a game. It's unfair to hire people for a "remote role" and then force them to work in the office. This creates real-world hardships for individuals, such as the need to relocate.
Using your analogy, it would be like initially giving your future employees the choice between Emacs and Vim, but later giving Vim users extra points in performance reviews.