-
Notifications
You must be signed in to change notification settings - Fork 167
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Flexible event backwards incompatibility: modulus operator on trigger data #765
Comments
It would be if an implementation could measure how often this modulus operation is exercised, and use that to evaluate the amount of breakage if we forced trigger data to be within [0, triggerDataCardinality]. I don't think it's unreasonable to expect this is low, as the intention of this was to support registration between UAs with different cardinalities which is not the case today. In either case, we could consider:
|
I can look into this for Chromium. A related consideration is that in today's trigger registrations, the |
@yanzhangnyc Could you comment on how this interacts with your flexible-event implementation work? |
In non-flex version, there is no pre-define eligible list of trigger_data, so I think it makes sense to use the modulus to enforce the cardinality. In flexible event API, the eligible list of trigger_data is pre-defined in the source and we can enforce the cardinality at source. All trigger_data at trigger that not on the eligible list will not be matched. |
Proposal: Add a top-level field When a trigger whose effective event-level configuration containing
This avoids breakage of existing reliance on the modulus operation, allows it to be used in Full Flex, and provides an opt out for reporting origins that wish to guarantee that the trigger data exactly matches their source configurations. |
Re #765 (comment) the field and value naming could also be reversed, so it's something like {
"trigger_data_matching": "exact" | "modulus"
} |
If we add a new field |
@yanzhangnyc can you elaborate, maybe with an example? I don't understand your suggestion. |
@csharrison, 1) we need explicitly define
|
In that example, the implicit cardinality is |
@apasel422 how about this example
How about the reporting window for trigger data 0, 3, 4, 5, 6, 7 |
Per my original comment, since If a trigger has
|
I could also imagine there being |
@apasel422 I think this way of definition is a little bit trick. The trigger_data serves both index and value. I suggestion if |
Technically the definition above only uses the trigger data as index when That said, I would be fine allowing |
@apasel422 Yes. I understand. My concern is that it is confusing for 'trigger data as index'. For example, if trigger data |
https://wicg.github.io/attribution-reporting-api/#obtain-an-event-level-report specifies currently how we deal with the
trigger_data
associated with an event-level trigger configuration:This is not really compatible with the flexible configuration because that positions
trigger_data
as another filtering criteria. I don't see a good way to support something like this unless we force sources to specify data in the range [0, max], but this breaks the use case illustrated in this example.cc @avvarad @apasel422
The text was updated successfully, but these errors were encountered: