Troubleshooting
Module not initialized
Make sure @quik/passport is registered in your bootstrap module and appears after its dependencies
(@quik/http-express, @quik/authorization, @quik/entity). Passport middleware, strategies, and OAuth
providers are only wired up in onAfterInit when the IQHTTPEngine feature is present.
Passkey routes return 404
QPasskeyRoute is registered unconditionally, but its endpoints are gated by
@Decorators.Route.Utils.Conditional(() => getConfig().boolean("auth.passkey.http.enabled")). Set
auth.passkey.http.enabled to true to expose the built-in /register/options, /register/verify,
/authenticate/options, and /authenticate/verify endpoints under auth.passkey.http.basePath.
Passkey provider not registered
Calling Passport.Passkey.createRegistrationOptions/verifyAuthentication/etc. without first calling
Passport.Passkey.setProvider(...) for the relevant provider name throws PasskeyProviderNotRegisteredError.
Invalid passkey request or assertion
InvalidPasskeyRequestError is thrown when a passkey authentication/registration request payload is malformed.
InvalidPasskeyAssertionError is thrown when a WebAuthn assertion fails verification.
Common Errors
quik.errors.passkey.provider-not-registered:Passport.Passkey.setProvider(...)was not called for the requested provider name before use.quik.errors.passkey.invalid-request: a passkey authentication request payload is invalid.quik.errors.passkey.invalid-assertion: a WebAuthn assertion failed verification.