Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update module install and remove interfaces #238

Open
wants to merge 11 commits into
base: main
Choose a base branch
from
Open

Conversation

cpb8010
Copy link
Contributor

@cpb8010 cpb8010 commented Jan 1, 2025

Description

Replace IInitable with IModule that provides a way to specify the uninstall data. Retain the ability to directly disconnect a module without removing it.

Additional context

The disable function on the session key no longer work (and were never possible on passkeys), so this cleans up the initial intention to remove from the account by adding better interfaces for trusted modules.

Modules no longer have any permission to act on the account, so any
disabling will need to come from the account, removing the last use case
for disable.

Init was functionality duplicated with the add key functionality, so it
was removed in favor of the existing interface.
Publishes the domain since that's useful vs the raw bytes which is hard
@cpb8010 cpb8010 self-assigned this Jan 1, 2025
@cpb8010 cpb8010 changed the title Module-interface Update module install and remove interfaces Jan 1, 2025
@cpb8010 cpb8010 requested a review from ly0va January 2, 2025 15:22
MexicanAce and others added 3 commits January 6, 2025 13:24
conflict with removing init after removing events
The revert if exists functionality moves to the account
Also the disable functions are removed again
@cpb8010
Copy link
Contributor Author

cpb8010 commented Jan 8, 2025

Lyova and I chatted about adding back the empty onInstall/onUninstall interfaces just in case there's some unique set up / tear down that modules want to perform outside of validation key setup

Adds a new entry point so we can remove modules
A little scary that the webauthn module didn't throw errors, so shows
the need for some more tests for that module install
This covers the initial flow that got broken when the module didn't
support the expected interface
This no longer needs to be custom because there's no hooks yet
Have different options to remove trusted vs untrusted modules
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants