WICG/turtledove

Aggregate logging via SignalValue object should include winning value across all component auctions

Opened this issue · 1 comments

Currently, when you try to log the average bid difference from a component auction which didn't go on to win a top level auction, the value is always logged as 0, rather than the difference between the bid value of component auction & winning component auction.

Not sure if this is a bug or by design. If the aim of this behaviour is to restrict the information from component auctions leaking into each other, then reserved.loss shouldn't be triggered at all, the 0 value log simply makes the logs useless.

Proposal: The winning-bid baseValue of other component auctions should be included for logging via signalValue object.
Here's the concerned documentation about signalValue: https://github.com/WICG/turtledove/blob/main/FLEDGE_extended_PA_reporting.md#example-2-getting-the-average-bid-gap-for-an-ad

Here's a step by step flow of what's happening:

Current flow:

  1. CA1's bid is $2
  2. CA2's bid is $5
  3. CA1's aggregate log is fired, but value sent is $0 (checked via chrome://private-aggregation-internals/)

Expected flow:

  1. CA1's bid is $2
  2. CA2's bid is $5
  3. CA1's aggregate log is fired, value sent is $3

The winning-bid field from Extended Private Aggregation Reporting, similar to the ${winningBid} Post Auction Signal, in component auctions, comes from the component auction and not the top-level auction. The ${topLevelWinningBid} Post Auction Signal is the value of the bid that won the top-level auction. This value is only reported to component sellers.

Sounds like adding a top-level-winning-bid field from Extended Private Aggregation Reporting would help address your use case?

@yusuf-kh, could you please add your name and affiliation to your GitHub profile?