Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Define Critical-CH Restart logic more rigorously. #154

Open
arichiv opened this issue Jun 6, 2023 · 5 comments
Open

Define Critical-CH Restart logic more rigorously. #154

arichiv opened this issue Jun 6, 2023 · 5 comments
Assignees

Comments

@arichiv
Copy link
Collaborator

arichiv commented Jun 6, 2023

We need a formal way to indicate the entire navigation needs to be restarted from the top of the redirect chain.

@eportis-cloudinary
Copy link

eportis-cloudinary commented Jun 23, 2023

Should Critical-CH restarts be limited to idempotent requests (or even just GET)?

@miketaylr
Copy link
Collaborator

Should Critical-CH restarts be limited to idempotent requests (or even just GET)?

Per https://github.com/WICG/client-hints-infrastructure/blob/main/reliability.md#retry-limits, it should be limited to just GET. I'm not sure what the Chromium implementation does tho.

@yoavweiss
Copy link
Collaborator

Per https://github.com/WICG/client-hints-infrastructure/blob/main/reliability.md#retry-limits, it should be limited to just GET. I'm not sure what the Chromium implementation does tho.

I guess we should verify there are tests to that effect..

@arichiv
Copy link
Collaborator Author

arichiv commented Jun 26, 2023

Chrome is actually limiting retries to once per origin per request. So if you have a chain like a.com -> b.com -> c.com your maximum retry chain length can look like a.com -(retry)> a.com -> b.com -(retry)> a.com -> b.com -> c.com -(retry)> a.com -> b.com -> c.com.

@hiroshige-g
Copy link

Also the current spec checks the Critical-CH on the result of creating navigation params by fetching, which is after all redirects.
So if we also want to restart the request in the middle of redirects (e.g. for a 302 redirect response with Critical-CH), perhaps we should check Critical-CH during the while loop for redirects in creating navigation params by fetching and restart the loop.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants