All I know is he tried pushState. Perhaps replaceState is not throttled, because it doesn't create new history entries, just replaces the last one.
Try this in chrome console. And yes, it doesn't throttle at all.
i=0; setInterval(() => history.replaceState('', '', '/' + (i++)), 50);
It's interesting how people will just believe everything, even if the test is 30 seconds away.