The core functions of the Factory contract, such as setFeeRecipient(), setFeeMantissa(), setPendingOperator(), and acceptOperator(), do not emit any events.
Vulnerability Detail
The lack of event emission in the core functions of the Factory contract, such as setFeeRecipient(), setFeeMantissa(), setPendingOperator(), and acceptOperator(), means that there are no events emitted to indicate that a change has been made to the state of the contract. This makes it difficult for third-party applications to track these core changes and detect any potential issues.
Impact
As a result of the lack of event emission in the core functions of the Factory contract, it is not possible to track these core changes in third-party applications. Additionally, if the operator is malicious or compromised, these changes may go unnoticed as there are no events emitted to indicate that a change has been made. As a result, the only way to detect such changes is by manually checking the smart contract.
slvDev
medium
Lack event emission in core functions
Summary
The core functions of the Factory contract, such as setFeeRecipient(), setFeeMantissa(), setPendingOperator(), and acceptOperator(), do not emit any events.
Vulnerability Detail
The lack of event emission in the core functions of the Factory contract, such as setFeeRecipient(), setFeeMantissa(), setPendingOperator(), and acceptOperator(), means that there are no events emitted to indicate that a change has been made to the state of the contract. This makes it difficult for third-party applications to track these core changes and detect any potential issues.
Impact
As a result of the lack of event emission in the core functions of the Factory contract, it is not possible to track these core changes in third-party applications. Additionally, if the operator is malicious or compromised, these changes may go unnoticed as there are no events emitted to indicate that a change has been made. As a result, the only way to detect such changes is by manually checking the smart contract.
Code Snippet
https://github.com/sherlock-audit/2023-02-surge/blob/main/surge-protocol-v1/src/Factory.sol#L49-L81
Tool used
Manual Review
Recommendation
Add event emission to core functions of Factory contract.