Contact emails

miketa...@chromium.org, victor...@chromium.org

Explainer

https://github.com/WICG/ua-client-hints#explainer-reducing-user-agent-granularity

Specification

https://www.chromium.org/updates/ua-reduction is the closest thing that
specifies Chrome’s UA Reduction plans today. As these changes land in
Chromium and ship to 100% of stable, the Compat Standard
<https://compat.spec.whatwg.org/> will be updated in the UA String section
<https://compat.spec.whatwg.org/#ua-string-pattern-chrome>, like we did for
the Phase 4 changes.

Summary

As previously detailed on the Chromium Blog
<https://blog.chromium.org/2021/09/user-agent-reduction-origin-trial-and-dates.html>,
we intend to proceed with Phase 5 of the User-Agent Reduction plan
<https://www.chromium.org/updates/ua-reduction/#sample-ua-strings-phase-5>.
In Phase 5, the User-Agent string changes the platform and oscpu tokens
from their platform-defined values to the relevant unifiedPlatform
<https://www.chromium.org/updates/ua-reduction/#token-reference> token
value. The `navigator.platform`, `navigator.platform`, and
`navigator.appVersion` JS APIs will be similarly reduced.

Blink component

Blink>Network>ClientHints

TAG review

https://github.com/w3ctag/design-reviews/issues/640

TAG review status

Closed with concerns.

Risks
Interoperability and Compatibility

Any time you modify the User-Agent string there is a risk of some content
somewhere depending on the previous format.

We do not expect interop risks, as each browser sends its own User-Agent
string format. But there is a risk, especially on legacy Windows platforms,
that content somewhere is relying on User-Agents to parse platform and
oscpu information. We believe the risk is somewhat low. But in order to
mitigate the risk of this change, we intend to slowly roll it out via Finch
creating two sub groups: one group enabling the feature for all platforms
except legacy Windows platforms, another group enabling the feature on
legacy Windows platforms and observing health metrics and bug reports. This
gives us the option to roll this back specifically for legacy Windows
clients if needed, but proceed for other platforms.

Displaying a modern OS version for legacy clients will not create a problem
syntactically on legacy Windows platforms. But the web can get pretty weird
in ways we don't anticipate, hence the slow roll-out and incremental path
towards User-Agent Reduction.

Here is our proposed rollout plan, with the understanding that if we
discover concerning breakage or regressions via health metrics or bug
reports we will pause the rollout or roll back the feature entirely (and
update this thread if so):

Stage

Time

Date

Stable 1% (M107+)

Canary/Dev/Beta 100%

M107 stable release is shipping to 100% (a best guess)

Nov 1, 2022

Stable 10% (M107/M108/M109)

~10 weeks after previous stage

Jan 9, 2022

Stable 50%

(M107/M108/M109)

~2 weeks

Jan 23, 2022

TOT Default (M111)

~2 weeks after previous stage

Feb 7, 2022

Stable 100% (M107=>M111)

~ Same business day as previous stage

Feb 7, 2022


Gecko: Shipped/Shipping. Firefox has frozen (or capped) much of their UA
string already.

WebKit: Shipped/Shipping. Safari has already frozen everything in their
desktop UA string except for Safari and WebKit versions.

Web developers: Mixed signals. Reactions have ranged from positive to
indifferent to negative, from various channels.

Debuggability

No special DevTools support needed.

Will this feature be supported on all six Blink platforms (Windows, Mac,
Linux, Chrome OS, Android, and Android WebView)?

No (Only for desktop platforms: Windows, Mac, Linux, Chrome OS)

Is this feature fully tested by web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md>
?

No

Flag name

#reduce-user-agent-platform-oscpu

Tracking bug

https://bugs.chromium.org/p/chromium/issues/detail?id=1339834

Launch bug

https://bugs.chromium.org/p/chromium/issues/detail?id=1346071

Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5098783126323200

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAJh4P7FysJS2D2i4G3YNkf6X8N4_eyUcP%2BpoFrUB_ikdiATwuA%40mail.gmail.com.

Reply via email to