feat: support relayer whitelisting and refactor helper queries into RelayerHelper#422
feat: support relayer whitelisting and refactor helper queries into RelayerHelper#422gjermundgaraba merged 46 commits intomainfrom
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #422 +/- ##
=======================================
Coverage 99.86% 99.86%
=======================================
Files 14 15 +1
Lines 744 744
=======================================
Hits 743 743
Misses 1 1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
gjermundgaraba
left a comment
There was a problem hiding this comment.
It looks good to me, but I think we need some updates in the docs (security one, perhaps?), outlining this and how it works.
| _grantRole(CLIENT_ID_CUSTOMIZER_ROLE, customizer); | ||
| } | ||
| } | ||
| function __ICS02Client_init_unchained() internal onlyInitializing { } |
There was a problem hiding this comment.
It's not entirely obvious what unchained means here?
There was a problem hiding this comment.
Unchained is commonly used in other init functions. Openzeppelin contracts have two init functions, the normal one and the unchained one. The unchained one doesn't call init on any of its dependent libraries, in this case, access control.
An integrator needs to manually review code to make sure they initialize every library exactly once (not zero times or multiple times). In solidity, constructors solve this in compile time but initializers don't so we need to have two versions.
Luckily, in this case, this technicality doesn't matter since access control's init function is actually a noop. You can learn more about unchained in:
Description
closes: #376
closes: #425
Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.
godoccomments.Files changedin the GitHub PR explorer.SonarCloud Reportin the comment section below once CI passes.