Move HCA to ens-modules repo#257
Draft
zeroknots wants to merge 4 commits intoensdomains:feat/hca-cleanfrom
Draft
Move HCA to ens-modules repo#257zeroknots wants to merge 4 commits intoensdomains:feat/hca-cleanfrom
zeroknots wants to merge 4 commits intoensdomains:feat/hca-cleanfrom
Conversation
gas improvements
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Move HCA to ens-modules repo
Moves the HCA (Hardware-Controlled Accounts) implementation and module contracts out of
ens-contracts-v2and into the ens-modules repo. The factory and context contracts remain here.What stays in this repo
HCAFactory— Deploys deterministic NexusProxy instances via CREATE3, keyed by primary owner. Supports idempotentcreateAccountand owner-controlled implementation upgrades viasetImplementation.HCAContext/HCAContextUpgradeable— Base contracts that wire up factory references and UUPS upgrade guards for HCA account implementations.HCAEquivalence— On-chain equivalence checking for HCA deployments.ProxyLib— Library for proxy deployment operations.IHCAFactory,IHCAFactoryBasic,IHCAInitDataParser.What moved to ens-modules
HCA— The account implementation (extends Nexus with locked-down module config, NFT rejection, upgrade guards).HCAModule— The validator module (extends OwnableValidator with HCA-specific constraints).OwnableValidator— Base ERC-7579 validator with multi-sig, owner expiration, and dual validation modes.Other changes
Improvements
the deployment gas cost was reduced by approx 140.000 gas units
@TateB unfortunately the diff is quite large due to linting. could you run linting on feat/hca-clean so the diff gets smaller?