Skip to content

Commit 46d9eb5

Browse files
Move lifetimeMs from GenerateBidInterestGroup to AuctionAdInterestGroup (#843)
Move lifetimeMs from GenerateBidInterestGroup to AuctionAdInterestGroup because of concerns about ambiguity and providing a high accuracy timer when executionMode allows multiple same-origin interest groups to share state. Note that lifetimeMs was never provided to generateBid() in Chrome, anyways, so no consumers should be broken by this change. Co-authored-by: Paul Jensen <[email protected]>
1 parent f7fc5b6 commit 46d9eb5

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

spec.bs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,6 @@ dictionary AuctionAd {
196196
dictionary GenerateBidInterestGroup {
197197
required USVString owner;
198198
required USVString name;
199-
required double lifetimeMs;
200199

201200
boolean enableBiddingSignalsPrioritization = false;
202201
record<DOMString, double> priorityVector;
@@ -218,6 +217,7 @@ dictionary GenerateBidInterestGroup {
218217
dictionary AuctionAdInterestGroup : GenerateBidInterestGroup {
219218
double priority = 0.0;
220219
record<DOMString, double> prioritySignalsOverrides;
220+
required double lifetimeMs;
221221
DOMString additionalBidKey;
222222
};
223223
</xmp>
@@ -226,7 +226,11 @@ dictionary AuctionAdInterestGroup : GenerateBidInterestGroup {
226226
when an interest group is stored to [=interest group set=].
227227
`priority` and `prioritySignalsOverrides` are not passed to `generateBid()` because they can be
228228
modified by `generatedBid()` calls, so could theoretically be used to create a cross-site profile of
229-
a user accessible to `generateBid()` methods, otherwise.
229+
a user accessible to `generateBid()` methods, otherwise. `lifetimeMs` is not passed to `generateBid()`
230+
because it's ambiguous what should be passed: the lifetime when the group was joined, or the
231+
remaining lifetime. Providing the remaining lifetime would also potentially give access to more
232+
granular timing information than the API would otherwise allow, when state is shared across interest
233+
groups.
230234

231235
<div algorithm="joinAdInterestGroup()">
232236

0 commit comments

Comments
 (0)