Thanks Caleb!

On 12/6/23 12:07 PM, Caleb Raitto wrote:
To follow-up, WPT for the LIFO changes have landed: https://github.com/web-platform-tests/wpt/pull/43510

-Caleb

On Monday, November 13, 2023 at 10:53:06 AM UTC-5 Caleb Raitto wrote:

    Understood, will do.

    -Caleb

    On Mon, Nov 13, 2023 at 10:37 AM Mike Taylor
    <miketa...@chromium.org> wrote:

        Thanks for the heads up. It would be nice to write WPTs for
        these changes (to the extent that it's possible), rather than
        just Chromium unit tests.

        On 11/10/23 4:17 PM, Caleb Raitto wrote:
        FYI: I merged crrev.com/c/4930438
        <http://crrev.com/c/4930438> today, which makes the
        implementation adopt the "LIFO" semantics requested in [0].
        The spec already was written to have these semantics. As part
        of this, I made a small spec change
        (https://github.com/WICG/turtledove/pull/903
        <https://github.com/WICG/turtledove/pull/903>) to detect and
        handle duplicate adSlots in responses.

        (Also, the PRs mentioned by miketaylr@ above,
        https://github.com/WICG/turtledove/pull/771
        <https://github.com/WICG/turtledove/pull/771> and
        https://github.com/WICG/turtledove/pull/774
        <https://github.com/WICG/turtledove/pull/774>, merged last
        month).

        [0]
        https://github.com/WICG/turtledove/pull/695#discussion_r1255065849
        <https://github.com/WICG/turtledove/pull/695#discussion_r1255065849>

        -Caleb

        On Wed, Sep 20, 2023 at 5:00 PM Caleb Raitto
        <carai...@chromium.org> wrote:

            Will do (once spec reviewers have approved) -- I
            understand your LGTM is contingent on those landing.

            Thanks,
            -Caleb

            On Wednesday, September 20, 2023 at 3:07:11 PM UTC-4 Mike
            Taylor wrote:

                And gentle reminder to please land the spec PRs :)

                On 9/20/23 12:54 PM, Chris Harrelson wrote:
                LGTM3

                On Wed, Sep 20, 2023 at 9:53 AM Yoav Weiss
                <yoavwe...@chromium.org> wrote:

                    LGTM2

                    Talking to the team, the 10K limit is Finchable,
                    so we'd be able to lower it if this runs into
                    issues in the field. Also presumably, having
                    that as a limit doesn't mean most responses
                    would actually use that.

                    On Sat, Sep 16, 2023 at 6:52 AM Yoav Weiss
                    <yoavwe...@chromium.org> wrote:




                        On Fri, Sep 15, 2023 at 10:00 PM Mike Taylor
                        <miketa...@chromium.org> wrote:

                            Thanks, LGTM1 pending the PRs landing.

                            On 9/12/23 12:29 AM, Caleb Raitto wrote:

                            Hi Mike,


                            Pull request 695
                            <https://github.com/WICG/turtledove/pull/695>is
                            the change to update the explainer to
                            describe the new header-based
                            directFromSellerSignals, whereas 771
                            <https://github.com/WICG/turtledove/pull/771>and
                            774
                            <https://github.com/WICG/turtledove/pull/774>are
                            for the spec changes.


                            The explainer change describes usage of
                            the new API and provides context for
                            the differences between header-based
                            and the prior bundles based versions of
                            directFromSellerSignals, whereas the
                            spec change describes how to implement
                            the header-based version.


                            We intend to land all 3 pull requests.


                            Thanks,

                            -Caleb

                            On Monday, September 11, 2023 at
                            11:18:26 AM UTC-4 Mike Taylor wrote:


                                On 9/11/23 12:55 PM, Mike Taylor wrote:

                                On 9/7/23 6:00 PM, Caleb Raitto wrote:

                                Hi Yoav, some responses inline:

                                On Wednesday, September 6, 2023
                                at 12:15:45 PM UTC-4 Yoav Weiss
                                wrote:

                                    On Tue, Sep 5, 2023 at
                                    9:55 PM Paul Jensen
                                    <pauljen...@chromium.org> wrote:

                                        Contact emails*

                                        pauljen...@chromium.org


                                        *Explainer*

                                        
https://github.com/WICG/turtledove/pull/69
                                        
<https://github.com/WICG/turtledove/pull/695>5

                                        *


                                    Can you clarify what this
                                    does, as the explainer is not
                                    very explain-y?

                                    IIUC, the current flow to
                                    get directFromSellerSignals
                                    is to download a response A
                                    which contains a link to a
                                    WBN, then download the WBN
                                    and that contains the signal
                                    info.
                                    Your proposal is to change
                                    that so that
                                    the directFromSellerSignals
                                    information would be embedded
                                    in a response header on
                                    response A?


                                The original
                                directFromSellerSignals worked by
                                downloading a response A, from
                                the seller’s origin, that is a
                                WBN containing several
                                subresources that represent
                                signals from the seller to
                                various auction participants --
                                no linking was involved.


                        Can you outline that flow more explicitly?
                        Apologies, but I'd like to better understand
                        its performance characteristics.
                        IIUC, in both cases we have an initial page
                        that triggers a request, where in one that
                        request is to a WBN (using a <link> ?) and
                        the other it's to a random resource using
                        fetch({adAuctionHeaders: true}) ?

                        I guess it's unclear to me why the former
                        would be slower than the latter, especially
                        given the large payloads and the fact that
                        headers can't really be compressed.


                                You’re correct about this
                                header-based version of
                                directFromSellerSignals -- when
                                Chrome downloads a response, from
                                the seller’s origin, with
                                fetch(..., {adAuctionHeaders:
                                true}), the Ad-Auction-Signals
                                header gets parsed as JSON to
                                provide the signals.


                                    If so, any more details on
                                    that header? What would be
                                    the header name? What payload
                                    sizes should we expect for
                                    the header's value? In what
                                    conditions will it actually
                                    be processed?


                                The name of the header is
                                Ad-Auction-Signals, as mentioned
                                here in the explainer: [0].
                                Currently, the payload size is
                                limited to 1kb [1], but we’re
                                considering increasing that to
                                10kb based on feedback. When
                                Chrome conducts a Protected
                                Audience auction, it processes
                                any received Ad-Auction-Signals
                                headers whose adSlot matches that
                                of the auction.  The header
                                contains JSON that dictates which
                                signals are sent to which auction
                                participants.


                        1K header is a lot. 10KB header is... really
                        a lot.
                        Have you tested that with a variety of CDNs
                        and other intermediaries? I wouldn't be
                        surprised if those values would break some
                        assumptions in existing HTTP proxying software.

                        Also, the JSON y'all are sending doesn't
                        seem extremely nested. Have you considered
                        structured fields
                        <https://www.rfc-editor.org/rfc/rfc8941.html>?


                                [0]
                                
https://github.com/WICG/turtledove/pull/695/files#diff-d65ba9778fe3af46de3edfce2266b5b035192f8869280ec07179963b81f4e624R465
                                
<https://github.com/WICG/turtledove/pull/695/files#diff-d65ba9778fe3af46de3edfce2266b5b035192f8869280ec07179963b81f4e624R465>


                                [1]
                                
https://source.chromium.org/chromium/chromium/src/+/main:content/browser/interest_group/ad_auction_url_loader_interceptor.cc;l=195;drc=dcd52bb9a48216858a950b919383c44a290273f7
                                
<https://source.chromium.org/chromium/chromium/src/+/main:content/browser/interest_group/ad_auction_url_loader_interceptor.cc;l=195;drc=dcd52bb9a48216858a950b919383c44a290273f7>

                                Thanks for the explanation -
                                what's preventing
                                https://github.com/WICG/turtledove/pull/695
                                <https://github.com/WICG/turtledove/pull/695>
                                from landing? It seems rather old
                                (and references stuff that no
                                longer exists, like
                                `X-FLEDGE-Auction-Only`. (It also
                                doesn't seem to define any
                                error-handling for parsing the
                                JSON that a server returns, which
                                would be good to do.)
                                I maybe have just been confused.
                                I'm not sure if 695 is intended to
                                land, beyond 771 and 774, both of
                                which have much more recent activity.


                                Thanks,

                                -Caleb

                                        *
                                        *Specification*

                                        
https://github.com/WICG/turtledove/pull/771
                                        
<https://github.com/WICG/turtledove/pull/771>

                                        
https://github.com/WICG/turtledove/pull/774
                                        
<https://github.com/WICG/turtledove/pull/774>


                                        *Summary*

                                        Protected Audience
                                        already supports a
                                        mechanism to ensure the
                                        authenticity and
                                        integrity of information
                                        passed into the auction
                                        from the seller called
                                        directFromSellerSignals.
                                        Currently this is
                                        implemented by the seller
                                        providing subresources in
                                        a WebBundle to the
                                        browser, which after a
                                        year of testing has
                                        proved to not be as
                                        efficient as originally
                                        planned. It either
                                        requires an entirely new
                                        additional fetch of a
                                        WebBundle, or for the
                                        seller to rewrite and
                                        rework an existing fetch
                                        to respond instead with
                                        only a WebBundle. This
                                        feature is a rewrite of
                                        directFromSellerSignals
                                        to use an HTTP response
                                        header, transferred via
                                        HTTPS same-origin with
                                        the seller, instead of a
                                        WebBundle to optimize
                                        performance.


                                        *Blink component*

                                        Blink>InterestGroups
                                        
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EInterestGroups>


                                        *TAG review*

                                        The parent proposal,
                                        Protected Audience, is
                                        still pending:
                                        
https://github.com/w3ctag/design-reviews/issues/723
                                        
<https://github.com/w3ctag/design-reviews/issues/723>


                                        *TAG review status*

                                        Pending


                                        *Risks*
                                        *

                                                Interoperability
                                                and Compatibility

                                                *

                                                None as this is
                                                an optional new
                                                way of providing
                                                directFromSellerSignals. 
                                                It cannot be used
                                                jointly with the
                                                old mechanism,
                                                but there
                                                shouldn’t be a
                                                need to use the
                                                old mechanism.

                                                *

                                                *
                                                *

                                                *

                                                Gecko &WebKit: No
                                                signal on parent
                                                proposal,
                                                Protected
                                                Audience.  Asked
                                                in the Mozilla
                                                forum here
                                                
<https://github.com/mozilla/standards-positions/issues/770>,
                                                and in the Webkit
                                                forum here
                                                
<https://github.com/WebKit/standards-positions/issues/158>.

                                                *

                                            *
                                            **

                                            Web developers:
                                            Adtech asked for this
                                            via this Protected
                                            Audience Github issue
                                            
<https://github.com/WICG/turtledove/issues/119#issuecomment-1274013176>.

                                            *

                                        *

                                        *Debuggability*

                                        This feature affects
                                        values provided to
                                        Protected Audience
                                        scripts (generateBid(),
                                        reportResult(),
                                        reportWin()) which are
                                        debuggable via Chrome
                                        DevTools.  This feature
                                        also includes console log
                                        warnings on parse failures.


                                        *Will this feature be
                                        supported on all six
                                        Blink platforms (Windows,
                                        Mac, Linux, Chrome OS,
                                        Android, and Android
                                        WebView)?*

                                        It will be supported on
                                        all platforms that
                                        support Protected
                                        Audience, so all but WebView.


                                        *Is this feature fully
                                        tested by
                                        web-platform-tests
                                        
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?*

                                        We plan to add WPTs to
                                        cover this API in the
                                        next month.


                                        *Flag name on chrome://flags*

                                        None


                                        *Finch feature name*

                                        
FledgeDirectFromSellerSignalsHeaderAdSlot


                                        *Requires code in //chrome?*

                                        False


                                        *Estimated milestones*

                                        Shipping on desktop and
                                        Android in M117.


                                        *Anticipated spec changes*

                                        None related to this feature.


                                        *Link to entry on the
                                        Chrome Platform Status

                                        
https://chromestatus.com/feature/5165311598264320
                                        
<https://chromestatus.com/feature/5165311598264320>


                                        This intent message was
                                        generated by Chrome
                                        Platform Status
                                        <https://chromestatus.com/>.


-- You received this message
                                        because you are
                                        subscribed to the Google
                                        Groups "blink-dev" group.
                                        To unsubscribe from this
                                        group and stop receiving
                                        emails from it, send an
                                        email to
                                        blink-dev+unsubscr...@chromium.org
                                        
<mailto:blink-dev+unsubscr...@chromium.org>.
                                        To view this discussion
                                        on the web visit
                                        
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CABQTWrkbaAuRoxPUtrQnxyS-W%3DfZjba1JN%2BHCHyLmKCKveHXOg%40mail.gmail.com
                                        
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CABQTWrkbaAuRoxPUtrQnxyS-W%3DfZjba1JN%2BHCHyLmKCKveHXOg%40mail.gmail.com?utm_medium=email&utm_source=footer>.

-- You received this message because
                                you are subscribed to the Google
                                Groups "blink-dev" group.
                                To unsubscribe from this group
                                and stop receiving emails from
                                it, send an email to
                                blink-dev+unsubscr...@chromium.org
                                <mailto:blink-dev+unsubscr...@chromium.org>.
                                To view this discussion on the
                                web visit
                                
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/5c238b79-7120-4089-a8d7-dc1e67f956fcn%40chromium.org
                                
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/5c238b79-7120-4089-a8d7-dc1e67f956fcn%40chromium.org?utm_medium=email&utm_source=footer>.

-- You received this message because you are
                    subscribed to the Google Groups "blink-dev" group.
                    To unsubscribe from this group and stop
                    receiving emails from it, send an email to
                    blink-dev+unsubscr...@chromium.org
                    <mailto:blink-dev+unsubscr...@chromium.org>.
                    To view this discussion on the web visit
                    
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfWyKR0oFkjZqos1SmW1-q5DQajfnjsZDeOPJBRB2j45QA%40mail.gmail.com
                    
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfWyKR0oFkjZqos1SmW1-q5DQajfnjsZDeOPJBRB2j45QA%40mail.gmail.com?utm_medium=email&utm_source=footer>.


--
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/e666ce7b-4e8b-4055-84f8-836c9a1a5838%40chromium.org.

Reply via email to