Skip to content
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

spec: Move over the config/IG code changes from Private Aggregation spec. #1297

Merged
merged 5 commits into from
Oct 22, 2024

Conversation

morlovich
Copy link
Collaborator

@morlovich morlovich commented Oct 9, 2024

Right now Private Aggregation monkey patches us a lot to implement our integration. This moves over the most mundane of the changes --- parsing of new IG and AuctionConfig fields --- to reduce the size of the monkeypatch and to practive how the process works.

It's moved basically unchanged (except different indent/wrapping); I think the only substantative change is using our origin parser.

https://github.com/morlovich/private-aggregation-api/tree/move-stuff-to-pa has the other half, it likely needs something with imports (I hope adding export to auction config/interest group on our end will help).


Preview | Diff

Maks Orlovich added 2 commits October 9, 2024 10:51
Right now Private Aggregation monkey patches us a lot to implement
our integration. This moves over the most mundane of the changes ---
parsing of new IG and AuctionConfig fields --- to reduce the size of
the monkeypatch and to practive how the process works.

It's moved basically unchanged (except different indent/wrapping);
I think the only substantative change is using our origin parser.

https://github.com/morlovich/private-aggregation-api/tree/move-stuff-to-pa
has the other half, it likely needs something with imports (I hope
adding export to auction config/interest group on our end will help).
@morlovich morlovich added the spec Relates to the spec label Oct 9, 2024
@morlovich morlovich requested a review from qingxinwu October 9, 2024 15:01
@morlovich
Copy link
Collaborator Author

@alexmturner this will likely need your involvement as well.

Copy link
Contributor

@alexmturner alexmturner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for putting this together! LGTM w two nits.

spec.bs Outdated
@@ -82,6 +82,11 @@ spec: Fenced Frame; urlPrefix: https://wicg.github.io/fenced-frame/
spec: Private Aggregation API; urlPrefix: https://patcg-individual-drafts.github.io/private-aggregation-api
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: I wonder if this should have spec: private-aggregation-api so that it isn't duplicated at the bottom in Terms defined by reference

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That helps a bit, though there is still kinda silly debug-details-enabled

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not really too important, but I think you can avoid this by doing [=debug details/enabled=] instead of [=debug-details-enabled|enabled=] inline and then

text: debug details
for: debug details
    text: enabled
    text: key

in the header. We do something similar in the Shared Storage spec here.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm. So this is kinda a sideways move. It needs ;url still --- that's actually broken in shared storage, too, e.g. it tries to take you to: https://patcg-individual-drafts.github.io/private-aggregation-api/#get-batching-scope-steps
rather than to #scoping-details-get-batching-scope-steps
... and the index ends up with entries for 'enabled' and 'key' inside the private aggregation section, which is probably worse than debug-details-enabled. Like the right thing would be to import the entire type (but I guess it may not know it because it's not exported, and it's kinda a generic name so maybe shouldn't be exported?)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah oof, yeah that's not ideal. Maybe the answer here is to rename it then export it? What you have seems like a pretty reasonable option at least for now, though.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

probalby not related, but better to put the definition of "debug details" to the struct, instead of the section header. I.e., "A <dfn>debug details</dfn> is a [=struct=] ..." and rename the header's id to something different like "debug details header". (it actually applies to many of the type definitions in PAgg spec).

Also, bikeshed has the concept of namespace, like there's [=origin=] and [=url/origin=]. If we want, we can probably do data-dfn-for="pagg" when exporting a generic name.

Copy link
Collaborator

@qingxinwu qingxinwu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

some initial comments.

Copy link
Collaborator

@qingxinwu qingxinwu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

last few comments.

spec.bs Outdated
@@ -82,6 +82,11 @@ spec: Fenced Frame; urlPrefix: https://wicg.github.io/fenced-frame/
spec: Private Aggregation API; urlPrefix: https://patcg-individual-drafts.github.io/private-aggregation-api
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

probalby not related, but better to put the definition of "debug details" to the struct, instead of the section header. I.e., "A <dfn>debug details</dfn> is a [=struct=] ..." and rename the header's id to something different like "debug details header". (it actually applies to many of the type definitions in PAgg spec).

Also, bikeshed has the concept of namespace, like there's [=origin=] and [=url/origin=]. If we want, we can probably do data-dfn-for="pagg" when exporting a generic name.

@qingxinwu
Copy link
Collaborator

This LGTM if the open comments get answered.

@morlovich
Copy link
Collaborator Author

Err, what is still open?

@qingxinwu
Copy link
Collaborator

Didn't notice you already addressed them. Feel free to resolve or reply "done" to those comments that are addressed.

@JensenPaul JensenPaul merged commit 7b5fcf6 into WICG:main Oct 22, 2024
2 checks passed
github-actions bot added a commit that referenced this pull request Oct 22, 2024
…pec. (#1297)

SHA: 7b5fcf6
Reason: push, by JensenPaul

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
github-actions bot added a commit to morlovich/turtledove that referenced this pull request Oct 22, 2024
…pec. (WICG#1297)

SHA: 7b5fcf6
Reason: push, by morlovich

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
:: A [=map=] from [=strings=] to {{AuctionReportBuyersConfig}}s. For buyer metrics delegated to be
reported to the seller via the [Private Aggregation API](https://github.com/patcg-individual-drafts/private-aggregation-api),
this determines how each metric bucket is chosen inside the buyer's space, and how to scale it.
<!-- TODO: this should probably use enums instead -->
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

drive by: should this be an issue instead?

HabibiYou pushed a commit to HabibiYou/turtledove that referenced this pull request Oct 29, 2024
…pec. (WICG#1297)

* Move over the config/IG code changes from Private Aggregation spec.

Right now Private Aggregation monkey patches us a lot to implement
our integration. This moves over the most mundane of the changes ---
parsing of new IG and AuctionConfig fields --- to reduce the size of
the monkeypatch and to practive how the process works.

It's moved basically unchanged (except different indent/wrapping);
I think the only substantative change is using our origin parser.

https://github.com/morlovich/private-aggregation-api/tree/move-stuff-to-pa
has the other half, it likely needs something with imports (I hope
adding export to auction config/interest group on our end will help).

* Fix field names.

* Alex feedback.

* Apply Qingxin's feedback.

* Merge with Alex's parsing helper refactor.

---------

Co-authored-by: Maks Orlovich <[email protected]>
alexmturner pushed a commit to patcg-individual-drafts/private-aggregation-api that referenced this pull request Nov 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
spec Relates to the spec
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants