fw-08 step 03 — Back, scroll restoration, and blocking

Tasks

  1. Back/forward, including during an in-flight navigation. Decide and document who wins.
  2. Scroll restoration with history.scrollRestoration = 'manual'. Restore too early, before async content sizes the page, and watch it clamp. Then fix it.
  3. Navigation blocking on unsaved changes. Discover that you cannot cancel a browser back navigation, and explain why the platform refuses.
  4. Double submit: two rapid clicks on a link with a side-effecting loader.
  5. Error routes with per-level boundaries.

Done when

  • Back-during-load behaviour defined and tested
  • Early-restoration bug reproduced, then fixed
  • The limits of in-app navigation blocking documented, with the platform rationale