v151 · navigation · performance
Duplicate Navigation Dedup
Chrome 151 makes an in-flight navigation survive a rapid duplicate to the same URL. Before, the duplicate cancelled the navigation already in progress and restarted it — wasting a response that was already on the way. Now the duplicate is ignored and the first navigation runs to completion.
How this demo proves it — for real, in this page
Every navigation below is intercepted with the Navigation API (navigation.intercept()) and made to take ~1.2 s, so it is genuinely in flight. We then fire a second navigation.navigate() immediately afterwards and watch the first navigation's finished promise:
- Same URL (duplicate): Chrome 151+ ignores the second call, so navigation #1 finishes. Older Chrome aborts #1 with an
AbortError. - Different URL (control): a genuinely different navigation still supersedes #1 (aborts it) in every browser — proving the dedup is specific to same-URL duplicates, not a blanket change.
Run it
Verdict
Run a test to see whether this browser ignores the duplicate.
Navigation events log
What changed in the spec
// Before Chrome 151 — a duplicate cancels the in-flight navigation:
navigation.navigate("/page?x=1"); // starts loading (in flight)
navigation.navigate("/page?x=1"); // ABORTS the first, restarts (wasted response)
// Chrome 151+ — the duplicate is ignored:
navigation.navigate("/page?x=1"); // starts loading (in flight)
navigation.navigate("/page?x=1"); // ignored — the first keeps going and finishes