Skip to content

fix: credential list now reflects changes immediately#149

Merged
pando85 merged 1 commit intomasterfrom
fix/148-credential-list-refresh
Feb 14, 2026
Merged

fix: credential list now reflects changes immediately#149
pando85 merged 1 commit intomasterfrom
fix/148-credential-list-refresh

Conversation

@forkline-bot
Copy link

@forkline-bot forkline-bot bot commented Feb 14, 2026

Summary

  • Enable soft-fido2's built-in credential management by setting cred_mgmt to Some(true) in the authenticator config
  • Remove the custom 0x0a command handler that returned hardcoded responses
  • The built-in implementation properly calls AuthenticatorCallbacks methods (enumerate_rps, list_credentials, etc.) which read from the actual storage backend

Problem

When credentials (passkeys) were added, updated, or removed while the passless service was running, the changes were not reflected in passless client list. The updated state only became visible after restarting the passless process.

Root Cause

The custom credential management command handler (0x0a) was returning hardcoded responses instead of querying the actual storage backend. This was because:

  1. cred_mgmt was set to None in the authenticator config, disabling soft-fido2's built-in credential management
  2. A custom handler was registered for command 0x0a that returned hardcoded test data

Solution

  • Enable soft-fido2's built-in credential management by setting cred_mgmt: Some(true)
  • Remove the custom 0x0a handler so the built-in implementation handles credential management commands
  • The built-in implementation calls PasslessCallbacks::enumerate_rps() and PasslessCallbacks::list_credentials(), which properly read from the storage backend

Testing

The changes ensure that passless client list now reflects credential changes immediately without requiring a restart.

Resolves: #148

Enable soft-fido2's built-in credential management by:
- Setting cred_mgmt option to Some(true) in authenticator config
- Removing custom 0x0a command handler that returned hardcoded responses

The built-in implementation properly calls AuthenticatorCallbacks methods
(enumerate_rps, list_credentials, etc.) which read from the actual storage
backend, ensuring credential changes are reflected immediately.

Resolves: #148
@pando85 pando85 merged commit 508541a into master Feb 14, 2026
5 checks passed
@pando85 pando85 deleted the fix/148-credential-list-refresh branch February 14, 2026 23:31
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.

passless client list does not reflect credential changes until restart

1 participant