Commit Graph
5 Commits
Author SHA1 Message Date
ldm0 c18562d71c fix(fetch): bind service worker requests before synthetic redirects
Capture the loader's browser cookie scope on the retained Service Worker
request before a synthetic redirect advances its SameSite restrictions.
Reuse the transport binding to preserve frame partition keys and Storage
Access settings without applying the network-only policy early.

Add a lightweight initial-blank popup regression with a direct network
control, a synthetic SW redirect, and server-side Cookie/Referer assertions.
2026-11-12 03:10:33 +08:00
ldm0 ef0a33ae73 fix(fetch): preserve browser scope and referrer across manual redirects
Bind the request retained by the CORS redirect loop to the loader's cookie
scope before dispatching single-hop transport copies. Reuse the transport
binding so frame partition keys and Storage Access settings stay intact.

Preserve the selected referrer before Cookie origin adaptation, including
an absent referrer. Keep this in Request::follow_redirect and remove the
navigation-only duplicate.

Add live-server regressions for inherited-origin iframe fetch and sync/async
XHR, plus a multi-hop referrer test with a permissive response policy.
2026-11-12 03:10:33 +08:00
ldm0 c0a87c6960 fix(fetch): preserve committed origins for document subresources 2026-09-14 06:48:28 +08:00
ldm0 53f790c13a fix(fetch): require browser origins and unify SW request state
Keep request origin independent of URL resolution and referrer context,
including local blob fetches and inherited or sandboxed srcdoc documents.
Reject missing browser origins at the resource client boundary and retain
one Request across Service Worker redirects and network fallback.

Cover dispatch rejection, wire Origin/Cookie headers, memory-cache
partitioning and preserved Service Worker request metadata.

Validation: workspace fmt and Clippy passed; Nextest passed 17,517 tests
with 13 existing skips. Renderer test debug symbols were disabled to fit
available build memory; tests and debug assertions were unchanged.
2026-09-13 16:14:50 +08:00
ldm0 77783ece9d fix(fetch): enforce request modes and CORS before redirects 2026-09-13 16:14:50 +08:00