Skip to content

Commit

Permalink
Describe per-calling-API contribution count limits in explainer
Browse files Browse the repository at this point in the history
  • Loading branch information
dmcardle committed Jul 25, 2024
1 parent 11c6711 commit 9c32995
Showing 1 changed file with 13 additions and 9 deletions.
22 changes: 13 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ Author: Alex Turner ([email protected])
- [Duplicate debug report](#duplicate-debug-report)
- [Reducing volume by batching](#reducing-volume-by-batching)
- [Batching scope](#batching-scope)
- [Contributions limit](#contributions-limit)
- [Limiting the number of contributions per report](#limiting-the-number-of-contributions-per-report)
- [Padding](#padding)
- [Aggregation coordinator choice](#aggregation-coordinator-choice)
- [Privacy and security](#privacy-and-security)
Expand Down Expand Up @@ -380,21 +380,25 @@ One consideration in the short term is that these calls may have different
associated [debug modes or keys](#temporary-debugging-mechanism). In this case,
only calls sharing those details should be batched together.

#### Contributions limit
#### Limiting the number of contributions per report

We will also need a limit on the number of contributions within a single report.
In the case that too many contributions are specified with a ‘batching scope’,
we should truncate them to the limit.

However, to reduce the impact of this limit, we will pre-aggregate (i.e. merge)
any contributions that have the same bucket and [filtering
we should truncate them to the limit. To reduce the impact of this limit, we
will merge any contributions that have the same bucket and [filtering
ID](https://github.com/patcg-individual-drafts/private-aggregation-api/blob/main/flexible_filtering.md#proposal-filtering-id-in-the-encrypted-payload)
before truncation.

If necessary, we could instead split the contributions back into multiple
reports, each respecting the limit.
This limit may vary by caller. In particular, Protected Audience reports may
benefit from a higher limit more than Shared Storage reports.

More complex designs that enable callers to configure custom limits are also
possible, but require further analysis (see [issue #81]).

[issue #81]: https://github.com/patcg-individual-drafts/private-aggregation-api/issues/81

Strawman limit: 20 contributions per report.
Our implementation plan is to set the limit at 20 contributions per report for
Shared Storage and 100 contributions per report for Protected Audience.

#### Padding

Expand Down

0 comments on commit 9c32995

Please sign in to comment.