Skip to content

Commit

Permalink
Remove aggregatable report limit when trigger context ID is non-null (#…
Browse files Browse the repository at this point in the history
…1475)

* Remove aggregatable report limit when trigger context ID is non-null

* Remove change to attribution rate limit handling

* Increment report count if trigger context ID present

* Amend AGGREGATE.md

* Remove aggregatable report limit when trigger context ID is non-null

* Remove change to attribution rate limit handling

* Remove aggregatable report limit when trigger context ID is non-null
  • Loading branch information
giladbarkan-github authored Jan 10, 2025
1 parent b066f8b commit 51fa4ec
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 3 deletions.
3 changes: 3 additions & 0 deletions AGGREGATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -505,6 +505,9 @@ As the trigger context ID in the aggregatable report explicitly reveals the
association between the report and the trigger, these reports can be sent
immediately without delay.

When a trigger context ID is provided, the aggregatable report will not count
towards the limit of aggregatable reports per source, nor be limited by it.

Note: This is an [alternative](https://github.com/WICG/attribution-reporting-api/blob/main/report_verification.md#could-we-just-tag-reports-with-a-trigger_id-instead-of-using-anonymous-tokens)
considered for [report verification](https://github.com/WICG/attribution-reporting-api/blob/main/report_verification.md),
and achieves all of the higher priority [security goals](https://github.com/WICG/attribution-reporting-api/blob/main/report_verification.md#security-goals).
Expand Down
6 changes: 3 additions & 3 deletions index.bs
Original file line number Diff line number Diff line change
Expand Up @@ -4274,7 +4274,7 @@ To <dfn>trigger aggregatable attribution</dfn> given an [=attribution trigger=]
1. If the result of running [=check if attribution should be blocked by rate limits=]
with |trigger|, |sourceToAttribute|, and |rateLimitRecord| is not null,
return it.
1. If |sourceToAttribute|'s [=attribution source/number of aggregatable attribution reports=] value is equal to [=max aggregatable reports per source=][0], then:
1. If |sourceToAttribute|'s [=attribution source/number of aggregatable attribution reports=] value is equal to [=max aggregatable reports per source=][0] and |trigger|'s [=attribution trigger/trigger context ID=] is null, then:
1. Return the [=triggering result=] ("<code>[=triggering status/dropped=]</code>",
("<code>[=trigger debug data type/trigger-aggregate-excessive-reports=]</code>", null)).
1. If the result of running [=check if an attribution source can create aggregatable contributions=]
Expand All @@ -4287,14 +4287,14 @@ To <dfn>trigger aggregatable attribution</dfn> given an [=attribution trigger=]
1. Return the [=triggering result=] ("<code>[=triggering status/dropped=]</code>",
("<code>[=trigger debug data type/trigger-aggregate-insufficient-named-budget=]</code>", null)).
1. [=set/Append=] |report| to the [=aggregatable attribution report cache=].
1. Increment |sourceToAttribute|'s [=attribution source/number of aggregatable attribution reports=] value by 1.
1. If |trigger|'s [=attribution trigger/trigger context ID=] is null, increment |sourceToAttribute|'s [=attribution source/number of aggregatable attribution reports=] value by 1.
1. Decrement |sourceToAttribute|'s [=attribution source/remaining aggregatable attribution budget=] value by
|report|'s [=aggregatable attribution report/required aggregatable budget=].
1. If |matchedBudgetName| is not null and |sourceToAttribute|'s [=attribution source/remaining named budgets=][|matchedBudgetName|] [=map/exists=]:
1. Decrement |sourceToAttribute|'s [=attribution source/remaining named budgets=][|matchedBudgetName|] value by
|report|'s [=aggregatable attribution report/required aggregatable budget=].
1. If |matchedDedupKey| is not null, [=list/append=] it to |sourceToAttribute|'s [=attribution source/aggregatable dedup keys=].
1. [=set/Append=] |rateLimitRecord| to the [=attribution rate-limit cache=].
1. If |trigger|'s [=attribution trigger/trigger context ID=] is null, [=set/append=] |rateLimitRecord| to the [=attribution rate-limit cache=].
1. Run [=generate null attribution reports=] with |trigger| and |report|.
1. If the result of [=checking if attribution debugging can be enabled=]
with |report|'s [=aggregatable attribution report/attribution debug info=] is true,
Expand Down

0 comments on commit 51fa4ec

Please sign in to comment.