Closed arichiv closed 1 year ago
@SebastianZimmeck (or other person with permission) can you add the agenda+ tag so this is discussed thursday?
It is a good point, @arichiv! It looks like we won't be able to get to it this week. But we will surely do it in one of the next meetings ... (at which point I will put the agenda+ label on).
Preference changes in the middle of loading a page don't seem common or need well-defined behavior (although I'm curious if any other specs do define that), but changing preferences after a page is loaded will certainly happen (because people keep pages open for long periods of time, and preferences do get changed, not just at startup time).
Perhaps there could be simpler text to say: if the user changes their preference after a page is loaded, UAs could reload the page or reflect the preference (in sub-http requests and the javascript property) only on subsequent page loads.
It's true this isn't reflected in other specs, including the DNT spec itself: "Ideally, the value of Navigator.doNotTrack ought to reflect the current set of user-granted exceptions in effect when the attribute is read." https://www.w3.org/TR/tracking-dnt/#expressing
I think it's worth requiring locked consistency within a given navigation for all subresources and subframes as that seems the most correct/consistent approach and this spec is still being incubated, but I'd also be fine with unifying HTTP/JavaScript approaches the other direction and always using the 'live' value of the preference if that's what you're saying.
It's true this isn't reflected in other specs, including the DNT spec itself: "Ideally, the value of Navigator.doNotTrack ought to reflect the current set of user-granted exceptions in effect when the attribute is read." https://www.w3.org/TR/tracking-dnt/#expressing
I think it's worth requiring locked consistency within a given navigation for all subresources and subframes as that seems the most correct/consistent approach and this spec is still being incubated, but I'd also be fine with unifying HTTP/JavaScript approaches the other direction and always using the 'live' value of the preference if that's what you're saying.
I think this is worthwhile discussing in the CG. @martinthomson let's add this to the agenda.
As written, the current spec implies that:
This is inconsistent, and seems like it will lead to weird edge cases if the preference is changed mid-load. I propose that we adopt the approach of JavaScript for HTTP so both return the preference cached at the time of the last top-level navigation.
I'm have a draft of this in #38