Omniscia Kyo Finance Audit
UniswapV2Bribe Manual Review Findings
UniswapV2Bribe Manual Review Findings
UVB-01M: Inexistent Naming Distinction of Uniswap Version
Type | Severity | Location |
---|---|---|
Standard Conformity | ![]() | UniswapV2Bribe.sol:L20 |
Description:
The Uniswap V2 and Uniswap V3 bribe systems in the Kyo Finance team's codebase do not distinguish themselves in their naming convention as both adhere to the BALLOT voted for TOKENA/TOKENB
naming convention.
Impact:
As this finding relates to off-chain observers, its severity level is considered informational as any user applying proper due diligence in their interactions would be able to circumvent this issue.
Example:
contracts/voting/uniswap-v2/UniswapV2Bribe.sol
20constructor(address pair_, IVoter voter, address gauge) SmoothTokenStreamConsumer(0.999983955055097432e18, _tokens, _surplus, _surplusWithUpdate, _takeBribe) Elector(voter, gauge) ERC20(string(abi.encodePacked(IERC20Metadata(voter.ballot()).symbol(), " voted for ", IERC20Metadata(pair_).symbol())), string(abi.encodePacked(IERC20Metadata(voter.ballot()).symbol(), "-voted-", IERC20Metadata(pair_).symbol()))) {
Recommendation:
We advise a version signifier to be introduced so as to discern between Uniswap versions, preventing the voted token of one pool to be mistaken for another which may have a different evaluation.
Alleviation (17c8d4e59f398021156f6f9657ff278aae0462ae):
The Kyo Finance team evaluated this exhibit but opted to acknowledge it in the current iteration of the codebase.