-
Notifications
You must be signed in to change notification settings - Fork 9
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
Add generic validator recovery module and update zk email contracts to use it #2
Merged
Merged
Changes from all commits
Commits
Show all changes
20 commits
Select commit
Hold shift + click to select a range
6b6e31d
Add validator recovery module and update zk email contracts
JohnGuilding 531a49a
subject calldata builder
JohnGuilding 6aac792
Use recovery subject handlers
JohnGuilding 71fe6c7
feat: use calldata slicing in module
zeroknots 9c7bade
feat: readability
zeroknots 8cc744b
fix: make email_recovery internal since there is an external getter f…
zeroknots 72057f1
feat: minor coding best practice improvement
zeroknots 4dd50b4
Merge pull request #4 from zeroknots/feature/zeroknots-suggestions
JohnGuilding 03581ca
Move guardian logic to library
JohnGuilding 87fbb7e
Restructure manager & cancelRecovery bytes param
JohnGuilding fa1f0e8
recovery module can support many validators per account POC
JohnGuilding b039f8a
Remove hex strings library and dynamically generate test subject
JohnGuilding a6eb46d
Update factory
JohnGuilding 192cc7a
Move TemplateIndex check
JohnGuilding 4668516
Add module installation check
JohnGuilding 360a2a1
Separation of concerns between lower and higher level guardian libraries
JohnGuilding 3626aef
Support new email auth & store module at initialization
JohnGuilding f0df1d8
Reorder mapping
JohnGuilding c035b84
Comment out tests to come back to in a later PR
JohnGuilding f13e93c
Update workflows
JohnGuilding File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
// SPDX-License-Identifier: MIT | ||
pragma solidity ^0.8.25; | ||
|
||
import { EmailRecoveryManager } from "./EmailRecoveryManager.sol"; | ||
import { EmailRecoveryModule } from "./modules/EmailRecoveryModule.sol"; | ||
import { EmailRecoverySubjectHandler } from "./handlers/EmailRecoverySubjectHandler.sol"; | ||
|
||
contract EmailRecoveryFactory { | ||
function deployModuleAndManager( | ||
address verifier, | ||
address dkimRegistry, | ||
address emailAuthImpl, | ||
address emailRecoveryHandler | ||
) | ||
external | ||
returns (address, address) | ||
{ | ||
EmailRecoveryManager emailRecoveryManager = | ||
new EmailRecoveryManager(verifier, dkimRegistry, emailAuthImpl, emailRecoveryHandler); | ||
address manager = address(emailRecoveryManager); | ||
|
||
EmailRecoveryModule emailRecoveryModule = new EmailRecoveryModule(manager); | ||
address module = address(emailRecoveryModule); | ||
|
||
emailRecoveryManager.initialize(module); | ||
|
||
return (manager, module); | ||
} | ||
} |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For production/mainnet deploys, you may want to switch this to the user overrideable registry by default https://github.com/zkemail/zk-email-verify/blob/main/packages/contracts/UserOverrideableDKIMRegistry.sol