-
Notifications
You must be signed in to change notification settings - Fork 34
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
fix: [CL-008] remove duplicate wrapping #281
base: develop
Are you sure you want to change the base?
Conversation
Summary by OctaneNew ContractsNo new contracts were added in this PR. Updated Contracts
🔗 Commit Hash: 3ec2481 |
Contract sizes: | Contract | Runtime Size (B) | Initcode Size (B) | Runtime Margin (B) | Initcode Margin (B) |
|-------------------------------|------------------|-------------------|--------------------|---------------------|
| AccountFactory | 4,814 | 5,239 | 19,762 | 43,913 |
| AllowlistModule | 9,903 | 9,930 | 14,673 | 39,222 |
| ExecutionInstallDelegate | 5,694 | 5,740 | 18,882 | 43,412 |
| ModularAccount | 21,971 | 28,654 | 2,605 | 20,498 |
| NativeFunctionDelegate | 434 | 461 | 24,142 | 48,691 |
| NativeTokenLimitModule | 4,258 | 4,285 | 20,318 | 44,867 |
| PaymasterGuardModule | 1,797 | 1,824 | 22,779 | 47,328 |
-| SemiModularAccountBytecode | 23,273 | 29,956 | 1,303 | 19,196 |
-| SemiModularAccountStorageOnly | 23,767 | 30,450 | 809 | 18,702 |
+| SemiModularAccountBytecode | 23,354 | 30,037 | 1,222 | 19,115 |
+| SemiModularAccountStorageOnly | 23,848 | 30,531 | 728 | 18,621 |
| SingleSignerValidationModule | 3,646 | 3,673 | 20,930 | 45,479 |
| TimeRangeModule | 2,000 | 2,027 | 22,576 | 47,125 |
| WebAuthnValidationModule | 7,854 | 7,881 | 16,722 | 41,271 | Code coverage:
|
OverviewOctane AI analysis has finished. No vulnerabilities were found. Cheers! 🎉🎉🎉 🔗 Commit Hash: 3ec2481 |
if (_checkSignature(fallbackSigner, _replaySafeHash(hash), signature)) { | ||
// If called during validateUserOp, this implies that we're doing a deferred validation installation. | ||
// In this case, as the hash is already replay-safe, we don't need to wrap it. | ||
if (msg.sig != this.validateUserOp.selector) { |
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.
I'm not sure this is the right way to do this switching logic, it seems ok on first glance but feels a bit fragile. Could we make the caller of _exec1271Validation
perform the wrapping in the cases where it is needed, and skip it in the deferred action case?
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.
Could you elaborate on this point?
Would you instead not wrap it in validateUserOp()
's deferred validation section, but wrap in isValidSignature()
?
to reviewers: best to review other deferred action changes first since that can impact this