Salaried positions are explicitly not selling time. Whether I work 2 or 12 hours the compensation is the same. The only reason these contracts make sense is the unstated agreement that my employer won’t abuse the contractual power they theoretically have. And what’s the alternative? Signing bad contracts and leaving when things go to shit is probably 10x better for my career than pretending that I have agency in contract negotiations
All the jobs I had in was contractually required to work from X to Y at a place Z. So my experience is that is indeed a selling skilled time.
The ones you describe where there is a contract for output, usually with external contractors not full-time employees.
And you indeed have agency, especially if you provide something hard to find or you're the sole provider for this company of that service and the switching cost is high. Basic microeconomics...