Parent: #267. Webview epic: #264.
Problem
Nested documents need bounded per-frame history and explicit reload/traversal lifecycle. history.back()/forward()/go(), same-document entries and location.reload() must preserve stable WindowProxy identity, order popstate/hashchange, retire outgoing work for cross-document reload, and reject reentrant lifecycle corruption.
Implemented boundary
- Add bounded per-frame same-document history state/index.
- Queue
back, forward and go traversal.
- Dispatch
popstate then hashchange where applicable.
- Implement nested
location.reload() through the established beforeunload/pagehide/visibility/unload path.
- Preserve stable WindowProxy/history identity across same-document traversal and reload replacement.
- Guard lifecycle reentrancy and retire outgoing tasks, fetches, listeners and ServiceWorker ownership.
- Add WPT-shaped/native source contracts and a validation/deferred-work note.
Cross-document traversal, joint session history, POST reload, bfcache, restricted cross-origin WindowProxy behavior, and cumulative unchanged webview acceptance.
Validation boundary
git diff --check passed. Authored contracts were not executed under the current implementation-throughput direction.
Parent: #267. Webview epic: #264.
Problem
Nested documents need bounded per-frame history and explicit reload/traversal lifecycle.
history.back()/forward()/go(), same-document entries andlocation.reload()must preserve stable WindowProxy identity, orderpopstate/hashchange, retire outgoing work for cross-document reload, and reject reentrant lifecycle corruption.Implemented boundary
back,forwardandgotraversal.popstatethenhashchangewhere applicable.location.reload()through the established beforeunload/pagehide/visibility/unload path.Deferred to #267/#268
Cross-document traversal, joint session history, POST reload, bfcache, restricted cross-origin WindowProxy behavior, and cumulative unchanged webview acceptance.
Validation boundary
git diff --checkpassed. Authored contracts were not executed under the current implementation-throughput direction.