w3c / webappsec-credential-management

WebAppSec Credential Management
https://w3c.github.io/webappsec-credential-management/
Other
50 stars 38 forks source link

Unclear `relevant credential interface objects` in section 2.3.1 #259

Open tete17 opened 2 months ago

tete17 commented 2 months ago

While reading the spec to implement it in Ladybird I came across a small section that is a bit confusing to me.

Specifically the small algorithm on how to optain the relevant credential interface objects for either a given CredentialCreationOptions or CredentialRequestOptions.

Step number 3 seems to suggest to iterate over any of the options and try to match it against the Options Member Identifier. To me this means your would have to iterate over keys on those objects like mediation or signal which aren't even strings.

This algorithm also doesn't have any heading which makes it hard to bookmark it to so it leads me to suspect it may be no longer correct after some refactors. The ladybird team managed to find that Chromium simplly iterates over they keys of the Credential Type Registry instead. I will try to find it in firefox but I am farilly new to this

PS: There is also a typo in section 2.5.1 in step 7

If interfaces is empty, then returna promise rejected with a "NotSupportedError" DOMException.
vs
If interfaces is empty, then return a promise rejected with a "NotSupportedError" DOMException.

but I didn't think it was worth its own ticket