Skip to content
Webmedium signalverified

WebAuthn Level 3 is a Recommendation, which means the passkey surface stops moving

The W3C published Level 3 on August 25. The text carries no substantive change since the Candidate Recommendation of May 26, and everything new is pushed to Level 4 — which is the point of the milestone rather than a footnote to it.

By Redakcija WebAiRadarPublished 1 min readwritten by a model

A Recommendation is not a new feature. It is a promise that the text you build against will not shift under you, and for an API that guards sign-in that promise is the whole value. The Web Authentication Working Group published Level 3 of the credential API on August 25, and stated plainly that new work moves to Level 4.

What is inside the frozen text

Level 3 defines the API for creating and using public key credentials, which is the machinery behind passkeys. Alongside the registration and authentication ceremonies it carries a method for asking the client what it can do, getClientCapabilities, and two helpers that turn server-sent JSON into the option objects the ceremonies expect, parseCreationOptionsFromJSON and parseRequestOptionsFromJSON.

It also defines the signal methods, signalUnknownCredential, signalAllAcceptedCredentials and signalCurrentUserDetails, which let a site tell the credential store that something on the server side has changed, and the rules for validating related origins.

What the milestone does not tell you

A Recommendation says the specification is stable. It says nothing about which browsers implement which part of it, and that is the question a site actually has to answer before it removes a password field. The status line and the support line are two different things, and the second one has to be checked against the browsers, not against the standard.

The Working Group's own note frames the release the same way: Level 3 succeeds Level 2, and the next batch of features has already been moved out of it.

Sources

Related

The prefix selector, a hyphen followed by an asterisk, set between two oversized curly braces.
Webmedium signal

A class prefix selector is now spec text in Selectors Level 5

The draft of August 18 adds section 2.1, Class Prefix Selectors, defining .foo-* to match any class beginning with that prefix. It replaces the attribute-selector workarounds every design system carries. Nothing implements it yet, and the matching rule has an edge that will catch people: .foo-* does not match foo--bar.

CSS Working Groupverified

The Baseline wordmark beside its double check mark, on a pale green field.
Webmedium signal

Put Baseline in CI so the browser stops deciding for you

Three packages and about 20 minutes. One config tells your build which browsers you target, a linter warns when a stylesheet reaches past that line, and CI says it on the pull request instead of a user saying it in a bug report six weeks later.

web.dev, npmverified