ArchonArchon
Public verified reportRun your own audit

Archon public report

MantleCmETH_Interface

Mantle Mainnet · scan depth deep · generated 6/18/2026, 6:03:44 PM

Risk Score

63

Archon completed a read-only Mantle Mainnet audit of MantleCmETH_Interface and found 18 deterministic findings. The highest-priority issue is Naming Convention, with risk score 63/100 based on severity-weighted findings. The contract naming conventions are not fully aligned with common Solidity practices. Review the recommended fixes and run regression tests before deployment.

Models used: OpenAI (gpt-4o-mini).

Findings

low: 8high: 0info: 9medium: 1critical: 0
SeverityFindingLocationConfidence
info

Naming Convention

The contract naming conventions are not fully aligned with common Solidity practices.

MantleCmETH_Interface.sol:760%
low

Constable States

The contract uses constant states for certain variables.

MantleCmETH_Interface.sol:970%
low

Constable States

The totalSupply variable is declared but not initialized or modified, which may lead to unintended behavior.

MantleCmETH_Interface.sol:1260%
low

Constable States

The name and symbol variables are declared as public but are constant values, which could be optimized.

MantleCmETH_Interface.sol:870%
low

Constable States

The contract uses constant values for token attributes.

MantleCmETH_Interface.sol:1070%
low

Immutable States

The contract has mutable state variables that could be made immutable.

MantleCmETH_Interface.sol:1360%
medium

Pack small storage variables into fewer slots

Storage variables can be packed more efficiently to save gas.

MantleCmETH_Interface.sol:1080%
low

Review calldata parameter width

The function 'approve' uses a uint256 type for the 'amount' parameter, which may be optimized for gas usage.

MantleCmETH_Interface.sol:3270%
low

Review calldata parameter width

The function 'transfer' uses a uint256 type for the 'amount' parameter, which may be optimized for gas usage.

MantleCmETH_Interface.sol:3970%
low

Review calldata parameter width

The function transferFrom uses a uint256 parameter for the amount, which could be optimized for gas usage.

MantleCmETH_Interface.sol:5070%
info

Replace long revert string with custom error

The contract uses a long revert string for insufficient balance checks.

MantleCmETH_Interface.sol:4180%
info

Replace long revert string with custom error

The contract uses a long revert string for insufficient balance checks in transferFrom.

MantleCmETH_Interface.sol:5280%
info

Replace long revert string with custom error

Long revert string can be replaced with a custom error for gas optimization.

MantleCmETH_Interface.sol:5380%
info

Mark never-changing value constant or immutable

The owner address is never changing and can be marked as immutable or constant.

MantleCmETH_Interface.sol:1370%
info

Cache repeated storage read

Repeated storage read for balance check can be optimized.

MantleCmETH_Interface.sol:4180%
info

Cache repeated storage read

Repeated storage read for balance update can be optimized.

MantleCmETH_Interface.sol:4480%
info

Cache repeated storage read

Repeated storage read for balance check can be optimized.

MantleCmETH_Interface.sol:5280%
info

Cache repeated storage read

Repeated storage read for allowance check can be optimized.

MantleCmETH_Interface.sol:5380%