Intent to Ship: Protected Audience features: recency, rounding bids & scores

368 views
Skip to first unread message

Paul Jensen

unread,
Jul 25, 2023, 8:31:18 PM7/25/23
to blink-dev

Contact emails

paulj...@chromium.org


Explainer

https://github.com/WICG/turtledove/pull/639/files?short_path=d65ba97#diff-d65ba9778fe3af46de3edfce2266b5b035192f8869280ec07179963b81f4e624

https://github.com/WICG/turtledove/pull/486/files?short_path=d65ba97#diff-d65ba9778fe3af46de3edfce2266b5b035192f8869280ec07179963b81f4e624


Specification

https://github.com/WICG/turtledove/pull/711

https://github.com/WICG/turtledove/pull/636


Summary

This I2S covers two features extending Protected Audience:


Recency:

The “recency” signal for Protected Audience interest groups indicates how long ago the user was joined to an interest group, which can be a useful signal when calculating an ad auction bid (e.g. recently expressed interest likely indicates more interest).  Previously we provided this signal in a strictly bucketed and noised form to buyers’ win reporting function, reportWin().  This change additionally exposes this signal to the buyers’ bidding function, generateBid().  It can be provided without bucketing or noising to generateBid() like other signals available in that function. In fact, Protected Audience already allows developers to calculate this signal (e.g. by storing join time in the interest group), but developers have asked (see “Web Developers” section below) to have the browser supply it to generateBid() to ensure it’s calculated identically to the value supplied to the reporting function, so that models training on the reported data are compatible with bidding.


Rounding bids and scores:

In Protected Audience, the bid price and desirability score pass from functions that have access to cross-site data (generateBid() and scoreAd()) to the reporting worklets that have access to first party data (reportWin() and reportResult()), so to prevent event-level win reports from facilitating cross-site identity joins, we need to limit this data as much as possible.  This change limits the information in the bid price and desirability score by rounding them from 64-bit floating-point numbers to 16-bit floating point numbers. Previously these numbers were not rounded.


Blink component

Blink>InterestGroups


TAG review

The parent proposal, Protected Audience, is still pending: https://github.com/w3ctag/design-reviews/issues/723


TAG review status

Pending


Risks


Interoperability and Compatibility

Recency: This is unlikely to break existing sites as it’s only adding a new field to an object the browser provides to Protected Audience bidding and scoring scripts.

Rounding: This is unlikely to break existing sites as it’s only clearing some of the less significant bits of the bid and score values, while not changing the most significant bits or where the values flow from and to.


Gecko & WebKit: No signal on parent proposal, Protected Audience.  Asked here and here.


Web developers:

Recency: Adtechs asked for the recency feature here as part of the larger ask.

Rounding: This has been part of Protected Audience’s plan to accomplish our privacy goals for some time.  We haven’t heard significant resistance.


Debuggability

These features affect values provided to Protected Audience scripts (generateBid(), reportResult(), reportWin()) which are debuggable via Chrome DevTools.


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

It will be supported on all platforms that support Protected Audience, so all but WebView.


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

These are in progress and hope to land before M116 stable release.


Finch feature name

FledgeRounding


Requires code in //chrome?

False


Estimated milestones

Shipping on desktop and Android in M116.


Anticipated spec changes

None related to these two features.


Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5084137479733248


This intent message was generated by Chrome Platform Status.


Chris Harrelson

unread,
Jul 26, 2023, 12:11:03 PM7/26/23
to Paul Jensen, blink-dev
LGTM1

--
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/CABQTWr%3DfU5ucEnyYgx6Xg5wpmX4q9MOqBryOjLQN17E7ANafrA%40mail.gmail.com.

Mike Taylor

unread,
Jul 26, 2023, 1:21:53 PM7/26/23
to Chris Harrelson, Paul Jensen, blink-dev

Alex Russell

unread,
Aug 2, 2023, 11:53:36 AM8/2/23
to blink-dev, Mike Taylor, blink-dev, Chris Harrelson, Paul Jensen
LGTM3

LGTM1

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.
Reply all
Reply to author
Forward
0 new messages