Intent to Ship: Sec-CH-UA-Form-Factor client hint

900 views
Skip to first unread message

Dustin Mitchell

unread,
Feb 20, 2024, 10:06:55 AMFeb 20
to blin...@chromium.org

Contact emails

djmi...@chromium.org

Explainer

https://github.com/djmitche/web-explainers/blob/main/sec-ch-ua-form-factor.md

Specification

https://wicg.github.io/ua-client-hints/#sec-ch-ua-form-factor

Design docs


https://github.com/djmitche/web-explainers/blob/main/sec-ch-ua-form-factor.md

Summary

This hint indicates the "form-factor" of the user-agent / device, so that the site can tailor its response.



Blink component

Blink>Network

Search tags

ua-chuachform-factor

TAG review

This feature simply adds a new hint to the existing set of hints, containing data that was previously represented in the user-agent string.

TAG review status

Not applicable

Risks



Interoperability and Compatibility

If other browsers do not implement this hint, then the information will only be available in Chrome, and other browsers will implicitly return an empty value.



Gecko: No signal

WebKit: No signal

Web developers: No signals

Other signals:

Ergonomics

None - this fits with existing, similar client hints.



Activation

No activation risks - developers will always need to handle the situation where this hint is unavailable.



Security

None



WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?

No change to existing behavior; this adds a new hint which sites must opt in to. Killswitch is available: ClientHintsFormFactor



Debuggability

No changes in the checklist apply.



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

Yes

Is this feature fully tested by web-platform-tests?

Yes

Included in existing tests for other client hints: https://wpt.fyi/results/html/webappapis/system-state-and-capabilities/the-navigator-object/navigator_user_agent.https.html?label=experimental&label=master&aligned https://wpt.fyi/results/workers/WorkerNavigator_userAgentData.https.html?label=experimental&label=master&aligned



DevTrial instructions

https://github.com/djmitche/web-explainers/blob/main/sec-ch-ua-form-factor-howto.md

Flag name on chrome://flags

None

Finch feature name

ClientHintsFormFactor

Requires code in //chrome?

True

Tracking bug

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

Launch bug

https://launch.corp.google.com/launch/4258684

Measurement

None

Availability expectation

Feature is available only in Chromium browsers for the foreseeable future.

Adoption expectation

Feature is used by specific partner(s) to provide functionality within 12 months of launch in Chrome.

Adoption plan

New form-factors will add additional strings to this hint, within the values given in the draft spec. The ClientHintsXRFormFactor gates one such addition.

Estimated milestones

Shipping on desktop123
DevTrial on desktop122
Shipping on Android123
DevTrial on Android122
Shipping on WebView123


Anticipated spec changes

Open questions about a feature may be a source of future web compat or interop issues. Please list open issues (e.g. links to known github issues in the project for the feature specification) whose resolution may introduce web compat/interop risk (e.g., changing to naming or structure of the API in a non-backward-compatible way).

No open issues

Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5162545698045952

Links to previous Intent discussions

Intent to prototype: https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CALMtyTTPUMfjo2v9s%3DKMALpS5MUcicvpM2ycNtz6GbRZ9JOaXQ%40mail.gmail.com

This intent message was generated by Chrome Platform Status.

Vladimir Levin

unread,
Feb 20, 2024, 11:10:32 AMFeb 20
to Dustin Mitchell, blin...@chromium.org
On Tue, Feb 20, 2024 at 7:06 AM 'Dustin Mitchell' via blink-dev <blin...@chromium.org> wrote:

Contact emails

djmi...@chromium.org

Explainer

https://github.com/djmitche/web-explainers/blob/main/sec-ch-ua-form-factor.md

Specification

https://wicg.github.io/ua-client-hints/#sec-ch-ua-form-factor

Design docs


https://github.com/djmitche/web-explainers/blob/main/sec-ch-ua-form-factor.md

Summary

This hint indicates the "form-factor" of the user-agent / device, so that the site can tailor its response.



Blink component

Blink>Network

Search tags

ua-chuachform-factor

TAG review

This feature simply adds a new hint to the existing set of hints, containing data that was previously represented in the user-agent string.

Although this info may be available, I suspect this can be a new channel of information for clients that override the user-agent string or where this information isn't provided in the user-agent string. I don't believe this to be a problem, but just something to consider
 


TAG review status

Not applicable

Risks



Interoperability and Compatibility

If other browsers do not implement this hint, then the information will only be available in Chrome, and other browsers will implicitly return an empty value.



Gecko: No signal

WebKit: No signal

Can you please file requests for positions for both Gecko and WebKit?

--
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+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CALMtyTRPFmmHkrk24dSby%2B1bqTft%3DtUG-btxP_bg4Ckx4DNarw%40mail.gmail.com.

Dustin Mitchell

unread,
Feb 21, 2024, 11:25:27 AMFeb 21
to Vladimir Levin, blin...@chromium.org
Thanks for the comments!

On Tue, Feb 20, 2024 at 11:10 AM Vladimir Levin <vmp...@chromium.org> wrote:


On Tue, Feb 20, 2024 at 7:06 AM 'Dustin Mitchell' via blink-dev <blin...@chromium.org> wrote:

Contact emails

djmi...@chromium.org

Explainer

https://github.com/djmitche/web-explainers/blob/main/sec-ch-ua-form-factor.md

Specification

https://wicg.github.io/ua-client-hints/#sec-ch-ua-form-factor

Design docs


https://github.com/djmitche/web-explainers/blob/main/sec-ch-ua-form-factor.md

Summary

This hint indicates the "form-factor" of the user-agent / device, so that the site can tailor its response.



Blink component

Blink>Network

Search tags

ua-chuachform-factor

TAG review

This feature simply adds a new hint to the existing set of hints, containing data that was previously represented in the user-agent string.

Although this info may be available, I suspect this can be a new channel of information for clients that override the user-agent string or where this information isn't provided in the user-agent string. I don't believe this to be a problem, but just something to consider

That's a good point, and likely needs to be considered for all client hints. Do you think it's worth adding an issue in https://github.com/WICG/ua-client-hints to track this?

 


TAG review status

Not applicable

Risks



Interoperability and Compatibility

If other browsers do not implement this hint, then the information will only be available in Chrome, and other browsers will implicitly return an empty value.



Gecko: No signal

WebKit: No signal

Can you please file requests for positions for both Gecko and WebKit?

Chris Harrelson

unread,
Feb 21, 2024, 12:01:51 PMFeb 21
to Dustin Mitchell, Vladimir Levin, blin...@chromium.org

Vladimir Levin

unread,
Feb 21, 2024, 12:04:38 PMFeb 21
to Dustin Mitchell, blin...@chromium.org
On Wed, Feb 21, 2024 at 11:25 AM Dustin Mitchell <djmi...@google.com> wrote:
Thanks for the comments!

On Tue, Feb 20, 2024 at 11:10 AM Vladimir Levin <vmp...@chromium.org> wrote:


On Tue, Feb 20, 2024 at 7:06 AM 'Dustin Mitchell' via blink-dev <blin...@chromium.org> wrote:

Contact emails

djmi...@chromium.org

Explainer

https://github.com/djmitche/web-explainers/blob/main/sec-ch-ua-form-factor.md

Specification

https://wicg.github.io/ua-client-hints/#sec-ch-ua-form-factor

Design docs


https://github.com/djmitche/web-explainers/blob/main/sec-ch-ua-form-factor.md

Summary

This hint indicates the "form-factor" of the user-agent / device, so that the site can tailor its response.



Blink component

Blink>Network

Search tags

ua-chuachform-factor

TAG review

This feature simply adds a new hint to the existing set of hints, containing data that was previously represented in the user-agent string.

Although this info may be available, I suspect this can be a new channel of information for clients that override the user-agent string or where this information isn't provided in the user-agent string. I don't believe this to be a problem, but just something to consider

That's a good point, and likely needs to be considered for all client hints. Do you think it's worth adding an issue in https://github.com/WICG/ua-client-hints to track this?

I don't feel particularly strongly about this, but raising the issue to invite more opinions seems worthwhile. 


 


TAG review status

Not applicable

Risks



Interoperability and Compatibility

If other browsers do not implement this hint, then the information will only be available in Chrome, and other browsers will implicitly return an empty value.



Gecko: No signal

WebKit: No signal

Can you please file requests for positions for both Gecko and WebKit?


Thank you for doing this. For posterity in the future, for WebKit, it might be better to file an issue here: https://github.com/WebKit/standards-positions/issues

Yoav Weiss (@Shopify)

unread,
Feb 28, 2024, 12:03:07 PMFeb 28
to Vladimir Levin, Dustin Mitchell, blin...@chromium.org

Domenic Denicola

unread,
Feb 28, 2024, 9:43:39 PMFeb 28
to blink-dev, Yoav Weiss, djmi...@google.com, blin...@chromium.org, Vladimir Levin
I've raised a potentially-breaking spec issue which I'd like to get a conclusion on before LGTMing this: https://github.com/WICG/ua-client-hints/issues/355

To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.

--
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+unsubscribe@chromium.org.

Mike Taylor

unread,
Feb 28, 2024, 9:48:14 PMFeb 28
to Domenic Denicola, blink-dev, Yoav Weiss, djmi...@google.com, Vladimir Levin

(non-owner hat on) - Thanks for flagging, Domenic. We'll re-ping the thread once we decide if we should rename it, and to what.

To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/20c75133-f743-498b-be50-b24c27c7c999n%40chromium.org.

Alex Russell

unread,
Mar 6, 2024, 11:37:23 AMMar 6
to blink-dev, Mike Taylor, Yoav Weiss, djmi...@google.com, Vladimir Levin, Domenic Denicola
LGTM3, contingent on the rename Domenic is requesting.

Dustin Mitchell

unread,
Mar 13, 2024, 5:09:20 PMMar 13
to Alex Russell, blink-dev, Mike Taylor, Yoav Weiss, Vladimir Levin, Domenic Denicola
Thanks all -- the pluralization has now landed both in the draft-spec repo and in the Chromium source, and will be in place for M124.

Especially thanks to Domenic - that was a good observation, and consistency in the web platform is definitely worth a little trouble to rename things.

Dustin

To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
--
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+...@chromium.org.
--
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+...@chromium.org.
Reply all
Reply to author
Forward
0 new messages