LGTM1

On Wed, Apr 16, 2025 at 12:47 AM Stephen Mcgruer <smcgr...@chromium.org>
wrote:

> Contact emailssmcgr...@chromium.org
>
> Explainerhttps://github.com/w3c/secure-payment-confirmation/issues/267
>
> Specificationhttps://github.com/w3c/secure-payment-confirmation/pull/281
>
> Summary
>
> Correct the error type thrown during WebAuthn credential creation for
> 'payment' credentials. Due to a historic specification mismatch, creating a
> 'payment' credential in a cross-origin iframe without a user activation
> would throw a SecurityError instead of a NotAllowedError, which is what is
> thrown for non-payment credentials. This is a breaking change, albeit a
> niche one. Code that previously detected the type of error thrown (e.g., `e
> instanceof SecurityError`) would be affected. Code that just generally
> handles errors during credential creation (e.g. `catch (e)`) will continue
> to function correctly.
>
> Blink componentBlink>Payments
> <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EPayments%22>
>
> TAG reviewN/A - this is a compat bugfix to the SPC spec and does not
> require its own review.
>
> TAG review statusN/A
>
> Risks
>
> Interoperability and Compatibility
>
> There is a *very* minor risk of web compat breakage here. If code is very
> specifically handling the error type thrown for the very specific outcome
> of no user activation on creating a creation in a cross-origin iframe with
> the payment extension, they may stop handling that correctly. That is, if
> one was doing a specific `e instanceof SecurityError`, it will no longer
> catch the above case. Given that code should still be handling the overall
> fact that *some* error was thrown, and that creating credentials in
> cross-origin iframes is incredibly rare today - nevermind specifically with
> the 'payment' extension and not having a user activation - the risk seems
> low enough for this to be safe.
> https://chromestatus.com/metrics/feature/timeline/popularity/4758
> measures creating credentials in a cross-origin iframe. Currently at
> 0.000005% of page loads.
>
> *Gecko*: N/A Firefox does not ship SPC (
> https://github.com/mozilla/standards-positions/issues/570) and thus does
> not support the "payment" extension, so never had this compat issue.
>
> *WebKit*: N/A Safari does not ship SPC (
> https://github.com/WebKit/standards-positions/issues/30) and thus does
> not support the "payment" extension, so never had this compat issue.
>
> *Web developers*: Payment industry partners that are experimenting with
> SPC have been informed, and none have raised any concerns.
>
> *Other signals*:
>
> 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?
>
> None
>
> Debuggability
>
> N/A - standard devtools tools suffice.
>
> Will this feature be supported on all six Blink platforms (Windows, Mac,
> Linux, ChromeOS, Android, and Android WebView)?No - SPC/the payment
> extension is not shipped on Android WebView.
>
> Is this feature fully tested by web-platform-tests
> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
> ?Yes
>
>
> https://wpt.fyi/results/secure-payment-confirmation/enrollment-in-iframe.sub.https.html?label=experimental&label=master&aligned
> Test: "SPC enrollment in cross-origin iframe fails without user activation"
>
> Flag name on about://flagsNone
>
> Finch feature name
> WebAuthenticationAlignErrorTypeForPaymentCredentialCreate
>
> Non-finch justification
>
> Note: Not planning a Finch rollout, but have a base::Feature flag for
> emergency kill-switch via Finch if needed.
>
> Rollout planWill ship enabled for all users
>
> Requires code in //chrome?False
>
> Tracking bughttps://issues.chromium.org/u/1/issues/41484826
>
> Estimated milestones
> Shipping on desktop 137
> DevTrial on desktop 135
> Shipping on Android 137
> DevTrial on Android 135
> Anticipated spec changes
>
> Open questions about a feature may be a source of future web compat or
> interop issues. Please list open issues (e.g. links to known github issues
> in the project for the feature specification) whose resolution may
> introduce web compat/interop risk (e.g., changing to naming or structure of
> the API in a non-backward-compatible way).
> None
>
> Link to entry on the Chrome Platform Status
> https://chromestatus.com/feature/5160752715137024?gate=5120826699153408
>
> Links to previous Intent discussionsIntent to Prototype:
> https://groups.google.com/u/1/a/chromium.org/g/blink-dev/c/X0c08UCiUGc
>
>
> 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 visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CADY3MaeGOOp6eZ9Dm%3DiUm-_XCiTh0URDfRStOh9TgeuX_Yy4SA%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CADY3MaeGOOp6eZ9Dm%3DiUm-_XCiTh0URDfRStOh9TgeuX_Yy4SA%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 visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM0wra_c8b15BeShfiw0_N-gTPSPb38m_SUz9Ad_0Bou_HDtWA%40mail.gmail.com.

Reply via email to