diff --git a/src/factory/MultiOwnerMSCAFactory.sol b/src/factory/MultiOwnerMSCAFactory.sol index 36c70c66..35a451bb 100644 --- a/src/factory/MultiOwnerMSCAFactory.sol +++ b/src/factory/MultiOwnerMSCAFactory.sol @@ -39,6 +39,7 @@ contract MultiOwnerMSCAFactory is Ownable2Step { bytes32 internal immutable _MULTI_OWNER_PLUGIN_MANIFEST_HASH; uint256 internal constant _MAX_OWNERS_ON_CREATION = 100; + error InvalidAction(); error InvalidOwner(); error OwnersArrayEmpty(); error OwnersLimitExceeded(); @@ -158,4 +159,9 @@ contract MultiOwnerMSCAFactory is Ownable2Step { keccak256(abi.encodePacked(type(ERC1967Proxy).creationCode, abi.encode(IMPL, ""))) ); } + + /// @notice Overriding to disable renounce ownership in Ownable + function renounceOwnership() public view override onlyOwner { + revert InvalidAction(); + } } diff --git a/src/factory/MultiOwnerTokenReceiverMSCAFactory.sol b/src/factory/MultiOwnerTokenReceiverMSCAFactory.sol index 8507c6c3..7fb6acb8 100644 --- a/src/factory/MultiOwnerTokenReceiverMSCAFactory.sol +++ b/src/factory/MultiOwnerTokenReceiverMSCAFactory.sol @@ -41,6 +41,7 @@ contract MultiOwnerTokenReceiverMSCAFactory is Ownable2Step { bytes32 internal immutable _TOKEN_RECEIVER_PLUGIN_MANIFEST_HASH; uint256 internal constant _MAX_OWNERS_ON_CREATION = 100; + error InvalidAction(); error InvalidOwner(); error OwnersArrayEmpty(); error OwnersLimitExceeded(); @@ -166,4 +167,9 @@ contract MultiOwnerTokenReceiverMSCAFactory is Ownable2Step { keccak256(abi.encodePacked(type(ERC1967Proxy).creationCode, abi.encode(IMPL, ""))) ); } + + /// @notice Overriding to disable renounce ownership in Ownable + function renounceOwnership() public override onlyOwner { + revert InvalidAction(); + } } diff --git a/src/plugins/session/permissions/SessionKeyPermissions.sol b/src/plugins/session/permissions/SessionKeyPermissions.sol index cf7eb3bd..f8a42ed0 100644 --- a/src/plugins/session/permissions/SessionKeyPermissions.sol +++ b/src/plugins/session/permissions/SessionKeyPermissions.sol @@ -469,7 +469,7 @@ abstract contract SessionKeyPermissions is ISessionKeyPlugin, SessionKeyPermissi revert InvalidPermissionsUpdate(updateSelector); } - // If/else chain to find the right interal update function to perform. + // If/else chain to find the right internal update function to perform. if (updateSelector == ISessionKeyPermissionsUpdates.setAccessListType.selector) { ContractAccessControlType contractAccessControlType = abi.decode(update[4:], (ContractAccessControlType));