Skip to content

fix(preflight): treat only no-credentials as credential absence#287

Merged
AlfioEmanueleFresta merged 1 commit into
masterfrom
fix/preflight-no-credentials-only
Jun 21, 2026
Merged

fix(preflight): treat only no-credentials as credential absence#287
AlfioEmanueleFresta merged 1 commit into
masterfrom
fix/preflight-no-credentials-only

Conversation

@AlfioEmanueleFresta

Copy link
Copy Markdown
Member

Credential preflight treated every error as credential not present, so a transient transport error looked like a missing credential. It now treats only the explicit no-credentials response as absence and propagates other errors. This stops the client from silently skipping a credential that is actually present.

@AlfioEmanueleFresta AlfioEmanueleFresta marked this pull request as ready for review June 20, 2026 14:08
Preflight mapped every getAssertion error to absence, so a transport
timeout or any non-NoCredentials CTAP status silently dropped a
credential from the filtered list. Only CTAP2_ERR_NO_CREDENTIALS proves
a credential is absent, per the CTAP pre-flight procedure. Propagate all
other errors to the caller so transient failures are not mistaken for
absence.
@AlfioEmanueleFresta AlfioEmanueleFresta force-pushed the fix/preflight-no-credentials-only branch from 54fd71c to 983a601 Compare June 21, 2026 15:08
@AlfioEmanueleFresta AlfioEmanueleFresta merged commit e050904 into master Jun 21, 2026
7 checks passed
@AlfioEmanueleFresta AlfioEmanueleFresta deleted the fix/preflight-no-credentials-only branch June 21, 2026 15:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant