Skip to content

Latest commit

 

History

History
60 lines (47 loc) · 3.17 KB

0xRoxas-Q.md

File metadata and controls

60 lines (47 loc) · 3.17 KB

QA Report

Found NC [2]

[NC-01] Require Statements Missing Error Message

Error messages help with troubleshooting, some require statements are missing error messages.

Findings:

/ethereum/contracts/zksync/facets/Executor.sol Line(s): 43, 45, 297

43:	require(expectedNumberOfLayer1Txs == _newBlock.numberOfLayer1Txs);
45:	require(l2BlockTimestamp == _newBlock.timestamp);
297:	require(_recurisiveAggregationInput.length == 4);

/ethereum/contracts/bridge/L1EthBridge.sol Line(s): 145, 221, 224, 238

145:	require(amount != 0);
221:	require(_message.length == 56);
224:	require(bytes4(functionSignature) == this.finalizeWithdrawal.selector);
238:	require(callSuccess);

/zksync/contracts/bridge/L2ETHBridge.sol Line(s): 50

50:	require(_l1Token == CONVENTIONAL_ETH_ADDRESS);

[NC-02] Underscore Notation Improves Readability

Solidity allows for the use of _ between every 3 digits of large numbers.

Findings:

/ethereum/contracts/zksync/Config.sol Line(s): 23, 26, 77

23:	uint256 constant INITIAL_STORAGE_CHANGES_COMMITMENT_BYTES = 4 + 64 * 4896;
26:	uint256 constant REPEATED_STORAGE_CHANGES_COMMITMENT_BYTES = 4 + 40 * 7787;
77:	uint256 constant PRIORITY_TX_MAX_ERGS_LIMIT = 2097152;

/ethereum/contracts/bridge/L1ERC20Bridge.sol Line(s): 32, 36

32:	uint256 constant DEPOSIT_ERGS_LIMIT = 2097152;
36:	uint256 constant DEPLOY_L2_BRIDGE_COUNTERPART_ERGS_LIMIT = 2097152;

/ethereum/contracts/bridge/L1EthBridge.sol Line(s): 26, 30

26:	uint256 constant DEPOSIT_ERGS_LIMIT = 2097152;
30:	uint256 constant DEPLOY_L2_BRIDGE_COUNTERPART_ERGS_LIMIT = 2097152;