What makes me angry here is, I am 90% sure the browsers could code against this.
If the user clicks a control on a webpage one time, the stack can declare “One user click! You have earned yourself One (1) navigation.” Then, the click activates some JavaScript that moves you to a new webpage. That new webpage has an auto-loader redirect that instead runs a 300ms timeout, and then takes you to some other page. The browser, meanwhile, has seen this, and establishes “We are still only operating off of that One (1) click. So, instead of adding a new page to the user history, we’ll replace that first navigation.”
I have yet to hear a satisfactory reason as to why that’s not possible.