From 347674f890513c7bd1feb533f5faa6987a3a0c14 Mon Sep 17 00:00:00 2001 From: adnanhq Date: Tue, 24 Feb 2026 19:44:02 +0600 Subject: [PATCH] Add event for CampaignInfoFactory implementation update --- src/CampaignInfoFactory.sol | 1 + src/interfaces/ICampaignInfoFactory.sol | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/src/CampaignInfoFactory.sol b/src/CampaignInfoFactory.sol index c29acd1..28a28b4 100644 --- a/src/CampaignInfoFactory.sol +++ b/src/CampaignInfoFactory.sol @@ -195,6 +195,7 @@ contract CampaignInfoFactory is Initializable, ICampaignInfoFactory, OwnableUpgr } CampaignInfoFactoryStorage.Storage storage $ = CampaignInfoFactoryStorage._getCampaignInfoFactoryStorage(); $.implementation = newImplementation; + emit CampaignInfoFactoryImplementationUpdated(newImplementation); } /** diff --git a/src/interfaces/ICampaignInfoFactory.sol b/src/interfaces/ICampaignInfoFactory.sol index 6e366b9..70c610b 100644 --- a/src/interfaces/ICampaignInfoFactory.sol +++ b/src/interfaces/ICampaignInfoFactory.sol @@ -20,6 +20,12 @@ interface ICampaignInfoFactory is ICampaignData { */ event CampaignInfoFactoryCampaignInitialized(); + /** + * @notice Emitted when the campaign implementation address is updated. + * @param newImplementation The new implementation address. + */ + event CampaignInfoFactoryImplementationUpdated(address indexed newImplementation); + /** * @notice Creates a new campaign information contract with NFT. * @dev IMPORTANT: Protocol and platform fees are retrieved at execution time and locked