diff --git a/spec.bs b/spec.bs index b71a8f9a8..b01c05006 100644 --- a/spec.bs +++ b/spec.bs @@ -2948,6 +2948,21 @@ The getInterestGroupAdAuctionData(|configIDL|) m 1. Let |p| be [=a new promise=]. 1. Let |queue| be the result of [=starting a new parallel queue=]. 1. [=parallel queue/enqueue steps|Enqueue the following steps=] to |queue|: + 1. If |config|'s [=auction data config/coordinator=] is not one of the [=implementation-defined=] + coordinators supported by this [=user agent=]: + 1. [=Queue a global task=] on the [=DOM manipulation task source=], given |global|, to + reject |p| with a {{TypeError}}. + 1. Abort these steps. + 1. Let |key| be a [=byte sequence=] containing one of the [[RFC9180|HPKE]] public + encryption keys that the coordinator corresponding to |config|'s [=auction data config/coordinator=] + associates with |config|'s [=auction data config/seller], or failure if no + key is available. The actual method for this lookup is + [=implementation-defined=], and may consist of fetching the keys from a known [=URL=]. + 1. If |key| is failure then: + 1. [=Queue a global task=] on the [=DOM manipulation task source=], given |global|, to + reject |p| with a {{TypeError}}. + 1. Abort these steps. + 1. Set |config|'s [=auction data config/encryption key=] to |key|. 1. Let |igMap| be a new [=map=] whose [=map/keys=] are [=origins=] and [=map/values=] are [=lists=]. 1. Let |startTime| be a [=moment=] equal to the [=current wall time=]. 1. [=list/For each=] |ig| of the [=user agent=]'s [=interest group set=]: @@ -3031,14 +3046,6 @@ The getInterestGroupAdAuctionData(|configIDL|) m |configIDL|["{{AdAuctionDataConfig/perBuyerConfig}}"] 1. If |config|'s [=auction data config/seller=] or [=auction data config/coordinator=] fields are failure, then [=exception/throw=] a {{TypeError}}. - 1. If |config|'s [=auction data config/coordinator=] is not one of the [=implementation-defined=] - coordinators supported by this [=user agent=], then [=exception/throw=] a {{TypeError}}. - 1. Set |config|'s [=auction data config/encryption key=] to one of the [[RFC9180|HPKE]] public - encryption keys that the coordinator corresponding to |config|'s [=auction data config/coordinator=] - associates with |config|'s [=auction data config/seller]. The actual method - for this lookup is [=implementation-defined=], and may consist of fetching - the keys from a known [=URL=]. If the public key is not available, then - [=exception/throw=] a {{TypeError}}. 1. If |config|'s [=auction data config/per buyer config=] [=map/is not empty=] and |config|'s [=auction data config/request size=] is null: 1. Let |request_size| equal 0.