I'd like to remove my condition around my LGTM - I was able to reach out to Ben offline to confirm that he's roughly in favor of the proposed additions. Given that, I don't think we should block on reviews (acknowledging a private chat is not an official position or statement of support).

So, LGTM1 to ship.

On 10/27/23 5:27 PM, Chris Harrelson wrote:
However, even for WHATWG specs we have in the past blocked approval until spec PRs landed in cases where the only blocker was editorial review. This appears to be a similar situation.

On Fri, Oct 27, 2023 at 2:17 PM Rick Byers <rby...@chromium.org> wrote:

    FedCM has decided to follow a WHATWG-like working mode
    <https://github.com/fedidcg/FedCM/issues/431> where normative PRs
    land only with 2+ implementer support. Given that reviews were
    requested almost 2 months ago, and the blink launch process is
    designed not to stall indefinitely on consensus, I don't think API
    owners should be blocking this intent further on the PRs landing.
    Mike, WDYT?

    Rick

    On Fri, Oct 27, 2023 at 4:45 PM Mike Taylor
    <miketa...@chromium.org> wrote:

        Thanks Nicolás and Yi.

        LGTM1 % the PRs landing before this ships, and assuming
        Mozilla does not have feedback that materially changes the API
        shape. If that's the case, can you report back?

        thanks,
        Mike

        On 10/26/23 10:27 AM, Nicolás Peña wrote:
        For the record, we did request reviews: here
        <https://github.com/fedidcg/FedCM/pull/498#issuecomment-1703004458>
        and here
        <https://github.com/fedidcg/FedCM/pull/500#issuecomment-1706732499>.
        I'll ask to see if they can be added to the set of users from
        whom we can 'request review' in GitHub UI.
        On Wednesday, October 25, 2023 at 7:17:53 PM UTC-4 Yi Gu wrote:

            We sync’d with @bvandersloot-mozilla
            <https://github.com/bvandersloot-mozilla> in FedIdCG [1]
            and they have confirmed that it’s on their list.

            [1]
            
https://github.com/fedidcg/meetings/blob/main/2023/2023-10-02-notes.md#notes

            On Wed, Oct 25, 2023 at 6:51 PM Mike Taylor
            <miketa...@chromium.org> wrote:

                On 10/25/23 4:14 PM, Yi Gu wrote:

                Thanks Yoav for the review!

                > It'd be useful to write a short (inline?)
                explainer here outlining what this does and how it'd
                look like. Specifically, would we start throwing on
                errors in scenarios that silently failed before?

                For the Error API, it allows IdP to signal to the
                browser about the sign-in failure details such that
                the browser can make sure the user is kept informed
                with possibly next steps. Without this API, when a
                user clicks the "Continue as Name" button to
                sign-in, if it fails for whatever reasons, the
                browser rejects the promise silently so the user
                could be confused about the status. The fact that we
                are delaying rejecting the promise (for privacy
                reasons) would make it worse because the website
                wouldn't learn about the failure immediately either.
                With this API, the browser will first show a native
                UI with proper strings to explain the error to users
                and possibly allow users to learn more about next
                steps. It will also reject the promise with the
                errors (if provided by IdP) via
                IdentityCredentialError instead of a generic
                DOMException (which we currently use). You could
                find more details here
                
<https://github.com/fedidcg/FedCM/issues/488#issuecomment-1679742999>.

                For the AutoSelected Flag API, it shares whether
                auto re-authentication has been triggered during the
                flow with both IdP and RP. By default the
                CredentialManagement API supports credential auto
                selection when possible. However, the browser may
                decide not to trigger auto selection for
                legitimate reasons. While the exact reason should be
                opaque to IdP or RP, we could share with them the
                outcome such that they can better understand the
                flow and handle things differently. e.g. for metrics
                purposes they could know how many transactions were
                done with auto re-authentication to better
                understand the performance; in addition, an IdP can
                use the signal (boolean) to support some security
                related features. e.g. a user may prefer explicitly
                selecting an account with an IdP, if the IdP gets a
                token request that shows the account was
                automatically selected, they could reject the
                request and trigger a new sign-in flow to ask for
                explicit user mediation. You could find more details
                here.
                
<https://github.com/fedidcg/FedCM/issues/497#issuecomment-1698174046>

                > What's preventing these PRs from landing?

                We aligned with Mozilla, who is prototyping FedCM in
                Firefox right now, that such spec changes should be
                reviewed by at least two implementers before
                merging. While we have discussed the two APIs
                
<https://github.com/fedidcg/meetings/blob/main/2023/2023-10-02-notes.md>
                at FedIdCG and it "generally looks reasonable", it's
                not yet formally reviewed by Mozilla (hence the
                "Under consideration" signal).
                I don't see anyone from Mozilla as a reviewer for
                either PR - is there a plan to request review from them?

                Thanks.
                Yi

                On Wed, Oct 25, 2023 at 11:19 AM Yoav Weiss
                <yoavwe...@chromium.org> wrote:



                    On Monday, October 23, 2023 at 3:03:59 PM UTC+2
                    blink-dev wrote:

                        Contact emails

                        y...@chromium.org


                        Explainer

                        https://github.com/fedidcg/FedCM/issues/488
                        <https://github.com/fedidcg/FedCM/issues/488>


                    It'd be useful to write a short (inline?)
                    explainer here outlining what this does and how
                    it'd look like.
                    Specifically, would we start throwing on errors
                    in scenarios that silently failed before?

                        https://github.com/fedidcg/FedCM/issues/497
                        <https://github.com/fedidcg/FedCM/issues/497>


                    Similarly a short explainer outlining what this
                    does and how would help reviewing this intent.


                        Specification

                        https://github.com/fedidcg/FedCM/pull/498
                        <https://github.com/fedidcg/FedCM/pull/498>

                        https://github.com/fedidcg/FedCM/pull/500
                        <https://github.com/fedidcg/FedCM/pull/500>


                    What's preventing these PRs from landing?


                        Design docs

                        
https://docs.google.com/document/d/1DEjbFSAMmmT47_n8JBLmcleCNPz_WS5a24WDrglSQMo/edit?usp=sharing
                        
<https://docs.google.com/document/d/1DEjbFSAMmmT47_n8JBLmcleCNPz_WS5a24WDrglSQMo/edit?usp=sharing>


                        Summary

                        Dedicated APIs to help developers and users
                        to better understand the authentication
                        flow. Both APIs are triggered post user
                        permission to sign in to an RP with an IdP.
                        i.e. after the user clicks the "Continue as"
                        button.


                        - With Error API, if a user's sign-in
                        attempt fails, the IdP can share the reasons
                        with the browser to keep both users and RP
                        developers updated.

                        - With AutoSelectedFlag API, both IdP and RP
                        developers could have a better understanding
                        about the sign-in UX, evaluate performance
                        and segment metrics accordingly.



                        Blink component

                        Blink>Identity>FedCM
                        
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EIdentity%3EFedCM>


                        Search tags

                        fedcm
                        <https://chromestatus.com/features#tags:fedcm>


                        TAG review

                        https://github.com/w3ctag/design-reviews/issues/893
                        <https://github.com/w3ctag/design-reviews/issues/893>


                        TAG review status

                        Issues addressed


                        Risks

                        Interoperability and Compatibility

                        These are extensions to the FedCM API. Apple
                        and Mozilla have both expressed a positive
                        opinion on the initial FedCM API
                        
<https://groups.google.com/a/chromium.org/g/blink-dev/c/URpYPPH-YQ4/m/bzghj9N3AQAJ>[1]
                        and Mozilla is currently prototyping
                        
<https://groups.google.com/a/mozilla.org/g/dev-platform/c/ncmUwK1uO98/m/COhPA4ZrAAAJ>the
                        FedCM API. If a user agent chooses to not
                        implement these extensions, it may hurt the
                        quality of the UI that they can provide to
                        users, but should not break the FedCM flow.


                        Gecko: Under consideration
                        (https://github.com/fedidcg/FedCM/pull/498
                        <https://github.com/fedidcg/FedCM/pull/498>

                        https://github.com/fedidcg/FedCM/pull/500
                        <https://github.com/fedidcg/FedCM/pull/500>)
                        Firefox has asked us not to file standard
                        position, and they provided feedback in the
                        GitHub PR.


                        WebKit: No signal
                        
(https://github.com/WebKit/standards-positions/issues/249
                        
<https://github.com/WebKit/standards-positions/issues/249>)


                        Web developers: Positive These features are
                        being developed to address existing
                        use-cases which will not be possible once
                        third-party cookies are phased out.


                        Other signals:


                        Security

                        For the Error API, the browser may open a
                        pop-up window with a URL provided by the IdP
                        when an error happens. It has the same web
                        platform properties as what one would get
                        with
                        window.open(url,””,”popup,noopener,noreferrer”))
                        that loads the error.url. There's no
                        communication between the website and this
                        pop-up is allowed (e.g. no postMessage, no
                        window.opener). We have also considered the
                        potential phishing risk and had the
                        mitigations in place (see the explainer for
                        more details).



                        WebView application risks

                        Does this intent deprecate or change
                        behavior of existing APIs, such that it has
                        potentially high risk for Android
                        WebView-based applications?

                        FedCM is not supported in WebView



                        Debuggability

                        The two new APIs are extensions of the FedCM
                        API which has proper devtools support.


                        For the Error API, the browser takes an
                        error returned by the IdP (if any) and
                        rejects the promise with an error exception.
                        For RP developers, the only thing that they
                        need to take care of is handling the
                        exception which may not need DevTools
                        support. For IdP developers, the only
                        potentially useful information that we could
                        add to the console is when the error URL is
                        cross-site to the IdP in which case we won't
                        use the error URL in the flow.

                        For AutoSelectedFlag API, it just introduces
                        a new boolean for both IdP and RP developers
                        to parse. We believe that in this case we
                        don't need to provide extra information in
                        DevTools.



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

                        FedCM is available in all Blink platforms
                        except for WebView.



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


                        Yes.

                        Testing on wpt.fyi is blocked on
                        https://github.com/web-platform-tests/wpt/pull/40709
                        <https://github.com/web-platform-tests/wpt/pull/40709>
                        getting reviewed and merged. Otherwise, we
                        are adding tests that will be in the
                        credential-management directory as shown on
                        the WPT dashboard here:
                        
https://wpt.fyi/results/credential-management?label=experimental&label=master&aligned
                        
<https://wpt.fyi/results/credential-management?label=experimental&label=master&aligned>



                        DevTrial instructions

                        
https://github.com/fedidcg/FedCM/blob/main/explorations/HOWTO-chrome.md
                        
<https://github.com/fedidcg/FedCM/blob/main/explorations/HOWTO-chrome.md>


                        Flag name on chrome://flags

                        chrome://flags/#fedcm-error

                        chrome://flags/#fedcm-auto-selected-flag


                        Finch feature name

                        FedCmError

                        FedCmAutoSelectedFlag


                        Requires code in //chrome?

                        True


                        Tracking bug

                        https://crbug.com/1477253
                        <https://crbug.com/1477253>


                        Launch bug

                        https://launch.corp.google.com/launch/4273845
                        <https://launch.corp.google.com/launch/4273845>


                        Sample links

                        
https://drive.google.com/file/d/1Z8r4OkQMmKulGv-vf-XTfwqh6VUyGZF9/view?usp=sharing
                        
<https://drive.google.com/file/d/1Z8r4OkQMmKulGv-vf-XTfwqh6VUyGZF9/view?usp=sharing>


                        Estimated milestones

                        Shipping on desktop

                        120


                        Shipping on Android

                        120





                        Anticipated spec changes

                        None


                        Link to entry on the Chrome Platform Status

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


                        Links to previous Intent discussions

                        Intent to prototype:
                        
https://groups.google.com/a/chromium.org/g/blink-dev/c/YfaGM8v-Ocs/m/4E0RHMhJAwAJ
                        
<https://groups.google.com/a/chromium.org/g/blink-dev/c/YfaGM8v-Ocs/m/4E0RHMhJAwAJ>


                        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.
                To view this discussion on the web visit
                
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACh2XCM8FnGsYjCQhzskrzU4RK9fMvpSBv23VV4Cdtr%2BMj0O2w%40mail.gmail.com
                
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACh2XCM8FnGsYjCQhzskrzU4RK9fMvpSBv23VV4Cdtr%2BMj0O2w%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/f3bf599d-4ce2-482d-8153-87bba1dd1836%40chromium.org
                
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/f3bf599d-4ce2-482d-8153-87bba1dd1836%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.
        To view this discussion on the web visit
        
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/0efea540-3115-4435-8837-fd4983ffd68d%40chromium.org
        
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/0efea540-3115-4435-8837-fd4983ffd68d%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.
    To view this discussion on the web visit
    
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY9xmqXCW%3DHowGt_2FCjaoEp0SPzOuqhSD%3Dcg6wrjH2fhw%40mail.gmail.com
    
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY9xmqXCW%3DHowGt_2FCjaoEp0SPzOuqhSD%3Dcg6wrjH2fhw%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/7e830aa5-d892-4972-9bf6-910442aeb93e%40chromium.org.

Reply via email to