Skip to content
This repository was archived by the owner on Mar 24, 2026. It is now read-only.

Commit 06bf6ed

Browse files
Release 2.8.0 (2023-12-07)
### Features * [reporting] Add noiser and bucketer for noising reporting inputs * [reporting] Pass modeling signals through noiser before being input to reportWin * Add ps verbosity tf var * Add scoring support for PAS * Add support for new OHTTP request format. * build PyTorch from source for B&A inference server. * Collector script for performance testing * **component auction:** Auction server passes top-level seller to scoreAd * **component auction:** Auction service parses output and skips allowComponentAuctions = false ads * **component auction:** Bidding server passes top-level seller to generateBid * **component auction:** Bidding service parses output and skips allowComponentAuctions = false bids * **component auction:** BuyerFrontEnd Service accepts and forwards top level seller * **component auction:** Return error for Android device orchestrated component auctions * **component auction:** SellerFrontEnd service accepts and forwards top level seller * **component auction:** SFE service parses output cbor encodes for chrome * includes git info tag for gcp docker images * monitor key fetch metrics for B&A servers * Partition request fail metric by the status message * Upgrade functionaltest-system to v0.11.0 ### Bug Fixes * Add check for correct key ID in select_ad_reactor tests. * consented logger memory leak * Fixes test failures in select ad app reactor * log missing key id in grpc status * match copybara strip style for PyTorch build from source * refactor gcp artifact build scripts to be more modular * Remove local platform for common repo and update CloudPlatform * Remove unnecessary reporting flags in gcp config * update GCP build to write image_digest, not image id ### Dependencies * **deps:** Upgrade data-plane-shared to commit 115edb3 2023-11-16 Bug: N/A GitOrigin-RevId: 39dfbccd5ffb707d6ce6ddde5e5623f49f5a3827 Change-Id: I22fd9ec27ae480c0b7f7dec7cee9438777067b21
1 parent b27547a commit 06bf6ed

150 files changed

Lines changed: 5738 additions & 2447 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.bazelrc

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,16 +32,12 @@ build:instance_aws --//:instance=aws
3232
build:instance_aws --@google_privacysandbox_servers_common//:instance=aws
3333

3434
build:platform_local --//:platform=local
35-
build:platform_local --@google_privacysandbox_servers_common//:platform=local
36-
build:platform_local --@google_privacysandbox_servers_common//scp/cc/public/cpio/interface:platform=local
3735

3836
build:platform_aws --//:platform=aws
3937
build:platform_aws --@google_privacysandbox_servers_common//:platform=aws
40-
build:platform_aws --@google_privacysandbox_servers_common//scp/cc/public/cpio/interface:platform=aws
4138

4239
build:platform_gcp --//:platform=gcp
4340
build:platform_gcp --@google_privacysandbox_servers_common//:platform=gcp
44-
build:platform_gcp --@google_privacysandbox_servers_common//scp/cc/public/cpio/interface:platform=gcp
4541

4642
build:local_aws --config=instance_local
4743
build:local_aws --config=platform_aws
@@ -58,6 +54,15 @@ build:local_local --config=platform_local
5854
build:aws_aws --config=instance_aws
5955
build:aws_aws --config=platform_aws
6056

57+
build:non_prod --//:build_flavor=non_prod
58+
build:non_prod --@google_privacysandbox_servers_common//:build_flavor=non_prod
59+
build:prod --//:build_flavor=prod
60+
build:prod --@google_privacysandbox_servers_common//:build_flavor=prod
61+
62+
build:inference_non_prod --//:build_flavor=non_prod
63+
build:inference_non_prod --//:inference_build=yes
64+
build:inference_non_prod --@google_privacysandbox_servers_common//:build_flavor=non_prod
65+
6166
# Address sanitizer, set action_env to segregate cache entries
6267
build:asan --action_env=PRIVACY_SANDBOX_SERVERS_ASAN=1
6368
build:asan --strip=never
@@ -121,4 +126,4 @@ test:all-tests --build_tests_only
121126
test:all-tests --test_summary=detailed
122127

123128
try-import %workspace%/builders/.coverage.bazelrc
124-
coverage --test_tag_filters=-nocoverage,small
129+
coverage --test_tag_filters=-flaky

.gitignore

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,6 @@
1414
# Tar files
1515
*.tar
1616

17-
# Specifically excluding presubmit.sh, though including its two versions
18-
ci/local/presubmit.sh
19-
2017
# Terraform gitignore entries are taken from
2118
# https://github.com/github/gitignore/blob/main/Terraform.gitignore
2219

.pre-commit-config.yaml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,7 @@ repos:
5151
hooks:
5252
- id: git-check
5353
- id: script-must-not-have-extension
54-
exclude: '(?x)^(
55-
ci/local/presubmit_for_(local|docker)_bazel/presubmit.sh
56-
)$'
54+
exclude: production/packaging/gcp/build_and_test.sh
5755
- id: script-must-have-extension
5856
- id: require-ascii
5957
exclude: ^(CHANGELOG|.*RELEASE)\.md$

BUILD

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,3 +133,20 @@ config_setting(
133133
},
134134
visibility = ["//visibility:public"],
135135
)
136+
137+
string_flag(
138+
name = "build_for_test",
139+
build_setting_default = "non_test",
140+
values = [
141+
"non_test",
142+
"e2e",
143+
],
144+
)
145+
146+
config_setting(
147+
name = "e2e_build",
148+
flag_values = {
149+
":build_for_test": "e2e",
150+
},
151+
visibility = ["//visibility:public"],
152+
)

CHANGELOG.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,49 @@
22

33
All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
44

5+
## 2.8.0 (2023-12-07)
6+
7+
8+
### Features
9+
10+
* [reporting] Add noiser and bucketer for noising reporting inputs
11+
* [reporting] Pass modeling signals through noiser before being input to reportWin
12+
* Add ps verbosity tf var
13+
* Add scoring support for PAS
14+
* Add support for new OHTTP request format.
15+
* build PyTorch from source for B&A inference server.
16+
* Collector script for performance testing
17+
* **component auction:** Auction server passes top-level seller to scoreAd
18+
* **component auction:** Auction service parses output and skips allowComponentAuctions = false ads
19+
* **component auction:** Bidding server passes top-level seller to generateBid
20+
* **component auction:** Bidding service parses output and skips allowComponentAuctions = false bids
21+
* **component auction:** BuyerFrontEnd Service accepts and forwards top level seller
22+
* **component auction:** Return error for Android device orchestrated component auctions
23+
* **component auction:** SellerFrontEnd service accepts and forwards top level seller
24+
* **component auction:** SFE service parses output cbor encodes for chrome
25+
* includes git info tag for gcp docker images
26+
* monitor key fetch metrics for B&A servers
27+
* Partition request fail metric by the status message
28+
* Upgrade functionaltest-system to v0.11.0
29+
30+
31+
### Bug Fixes
32+
33+
* Add check for correct key ID in select_ad_reactor tests.
34+
* consented logger memory leak
35+
* Fixes test failures in select ad app reactor
36+
* log missing key id in grpc status
37+
* match copybara strip style for PyTorch build from source
38+
* refactor gcp artifact build scripts to be more modular
39+
* Remove local platform for common repo and update CloudPlatform
40+
* Remove unnecessary reporting flags in gcp config
41+
* update GCP build to write image_digest, not image id
42+
43+
44+
### Dependencies
45+
46+
* **deps:** Upgrade data-plane-shared to commit 115edb3 2023-11-16
47+
548
## 2.7.0 (2023-11-08)
649

750

WORKSPACE

Lines changed: 10 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,17 @@
11
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
22

3-
### Git Submodules
4-
local_repository(
5-
name = "google_privacysandbox_functionaltest_system",
6-
path = "testing/functionaltest-system",
7-
)
8-
93
### register Python toolchain -- note this toolchain defines the path to a specific version of python
104
load("//builders/bazel:deps.bzl", "python_deps")
115

126
python_deps("//builders/bazel")
137

148
http_archive(
159
name = "google_privacysandbox_servers_common",
16-
sha256 = "2a00867b1d58f007f6aa26a8af3cda0b07f13976686775e468d997e8a5f9d2d3",
17-
strip_prefix = "data-plane-shared-libraries-092c2f39d29144b6bd69e8ececb238e63fc7a82b",
10+
# commit 5adea70 2023-11-27
11+
sha256 = "307527d32534b2b77a70eff78ce405bcc749a31b90e4fbe4ca867634bcd6b2ca",
12+
strip_prefix = "data-plane-shared-libraries-5adea7007167fc0bbff27f58217530e9f84ba333",
1813
urls = [
19-
"https://github.com/privacysandbox/data-plane-shared-libraries/archive/092c2f39d29144b6bd69e8ececb238e63fc7a82b.zip",
14+
"https://github.com/privacysandbox/data-plane-shared-libraries/archive/5adea7007167fc0bbff27f58217530e9f84ba333.zip",
2015
],
2116
)
2217

@@ -47,35 +42,10 @@ load("//third_party:container_deps.bzl", "container_deps")
4742

4843
container_deps()
4944

50-
load("@google_privacysandbox_servers_common//scp/build_defs/shared:rpm.bzl", rpmpack_repositories = "rpm")
51-
52-
rpmpack_repositories()
53-
5445
load("@com_github_google_rpmpack//:deps.bzl", "rpmpack_dependencies")
5546

5647
rpmpack_dependencies()
5748

58-
# Load the googleapis dependency.
59-
http_archive(
60-
name = "com_google_googleapis",
61-
build_file = "//third_party:googleapis.BUILD",
62-
patch_args = ["-p1"],
63-
# Scaffolding for patching googleapis after download. For example:
64-
# patches = ["googleapis.patch"]
65-
# NOTE: This should only be used while developing with a new
66-
# protobuf message. No changes to `patches` should ever be
67-
# committed to the main branch.
68-
patch_tool = "patch",
69-
patches = [],
70-
sha256 = "3e48e5833fcd2e1fcb8b6a5b7a88e18503b670e8636b868cdb5ac32e00fbdafb",
71-
strip_prefix = "googleapis-2da477b6a72168c65fdb4245530cfa702cc4b029",
72-
urls = [
73-
"https://storage.googleapis.com/cloud-cpp-community-archive/com_google_googleapis/2da477b6a72168c65fdb4245530cfa702cc4b029.tar.gz",
74-
"https://github.com/googleapis/googleapis/archive/2da477b6a72168c65fdb4245530cfa702cc4b029.tar.gz",
75-
],
76-
)
77-
78-
# libcbor
7949
http_archive(
8050
name = "libcbor",
8151
build_file = "//third_party:libcbor.BUILD",
@@ -87,17 +57,10 @@ http_archive(
8757
)
8858

8959
http_archive(
90-
name = "com_google_differential_privacy",
91-
sha256 = "b2e9afb2ea9337bb7c6302545b72e938707e8cdb3558ef38ce5cdd12fe2f182c",
92-
strip_prefix = "differential-privacy-2.1.0",
93-
url = "https://github.com/google/differential-privacy/archive/refs/tags/v2.1.0.tar.gz",
94-
)
95-
96-
http_archive(
97-
name = "com_google_cc_differential_privacy",
98-
patch_args = ["-p1"],
99-
patches = ["//third_party:differential_privacy.patch"],
100-
sha256 = "b2e9afb2ea9337bb7c6302545b72e938707e8cdb3558ef38ce5cdd12fe2f182c",
101-
strip_prefix = "differential-privacy-2.1.0/cc",
102-
urls = ["https://github.com/google/differential-privacy/archive/refs/tags/v2.1.0.tar.gz"],
60+
name = "service_value_key_fledge_privacysandbox",
61+
# commit 1eee8e79e44f3ca735cfab0b716e57f81d95bd46 2023-10-26
62+
strip_prefix = "fledge-key-value-service-1eee8e79e44f3ca735cfab0b716e57f81d95bd46",
63+
urls = [
64+
"https://github.com/privacysandbox/fledge-key-value-service/archive/1eee8e79e44f3ca735cfab0b716e57f81d95bd46.zip",
65+
],
10366
)

api/bidding_auction_servers.proto

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -277,8 +277,12 @@ message AuctionResult {
277277
// Type of the winning ad.
278278
AdType ad_type = 14;
279279

280-
// Top level seller name/domain returned for component auctions.
280+
// Optional name/domain for top-level seller in case this
281+
// is a component auction.
281282
string top_level_seller = 15;
283+
284+
// Arbitrary metadata to pass to the top-level seller.
285+
string ad_metadata = 16;
282286
}
283287

284288
// SellerFrontEnd service (also known as SFE) operated by SSP / Seller.

production/deploy/aws/terraform/environment/demo/seller/seller.tf

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -92,10 +92,10 @@ module "seller" {
9292
# "protectedAppSignalsBuyerReportWinJsUrls": {"https://buyerA_origin.com":"https://buyerA.com/generateBid.js"}
9393

9494
# }"
95-
JS_NUM_WORKERS = "" # Example: "48" Must be <=vCPUs in auction_enclave_cpu_count.
96-
JS_WORKER_QUEUE_LEN = "" # Example: "100".
97-
ROMA_TIMEOUT_MS = "" # Example: "10000"
98-
95+
JS_NUM_WORKERS = "" # Example: "48" Must be <=vCPUs in auction_enclave_cpu_count.
96+
JS_WORKER_QUEUE_LEN = "" # Example: "100".
97+
ROMA_TIMEOUT_MS = "" # Example: "10000"
98+
ENABLE_REPORT_WIN_INPUT_NOISING = "" # Example: "false"
9999
# Reach out to the Privacy Sandbox B&A team to enroll with Coordinators and update the following flag values.
100100
# More information on enrollment can be found here: https://github.com/privacysandbox/fledge-docs/blob/main/bidding_auction_services_api.md#enroll-with-coordinators
101101
# Coordinator-based attestation flags:

production/deploy/aws/terraform/services/iam_role_policies/main.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ data "aws_iam_policy_document" "instance_policy_doc" {
4141
}
4242
statement {
4343
sid = "AllowInstancesToReadParameters"
44-
actions = ["ssm:GetParameters"]
44+
actions = ["ssm:GetParameter"]
4545
effect = "Allow"
4646
resources = ["*"]
4747
}

production/deploy/gcp/terraform/environment/demo/buyer/buyer.tf

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,9 +88,10 @@ module "buyer" {
8888
ENABLE_OTEL_BASED_LOGGING = "" # Example: "false"
8989
CONSENTED_DEBUG_TOKEN = "" # Example: "<unique_id>"
9090

91-
# Reach out to the Privacy Sandbox B&A team to enroll with Coordinators and update the following flag values.
91+
# Coordinator-based attestation flags.
92+
# These flags are production-ready and you do not need to change them.
93+
# Reach out to the Privacy Sandbox B&A team to enroll with Coordinators.
9294
# More information on enrollment can be found here: https://github.com/privacysandbox/fledge-docs/blob/main/bidding_auction_services_api.md#enroll-with-coordinators
93-
# Coordinator-based attestation flags:
9495
PUBLIC_KEY_ENDPOINT = "https://publickeyservice.pa.gcp.privacysandboxservices.com/.well-known/protected-auction/v1/public-keys"
9596
PRIMARY_COORDINATOR_PRIVATE_KEY_ENDPOINT = "https://privatekeyservice-a.pa-1.gcp.privacysandboxservices.com/v1alpha/encryptionKeys"
9697
SECONDARY_COORDINATOR_PRIVATE_KEY_ENDPOINT = "https://privatekeyservice-b.pa-2.gcp.privacysandboxservices.com/v1alpha/encryptionKeys"

0 commit comments

Comments
 (0)