diff --git a/snapshots/semver-lock.json b/snapshots/semver-lock.json index 8f261cd7..5c7164c0 100644 --- a/snapshots/semver-lock.json +++ b/snapshots/semver-lock.json @@ -240,12 +240,12 @@ "sourceCodeHash": "0x955bd0c9b47e43219865e4e92abf28d916c96de20cbdf2f94c8ab14d02083759" }, "src/multiproof/AggregateVerifier.sol:AggregateVerifier": { - "initCodeHash": "0xc3866b1d4515c9d7b0ac6679b182d836f79371402d9e649e301b24cf8ae8fade", - "sourceCodeHash": "0x2bd04b43f2434dec3b66bfcbfbaf3df2d70f18abb915c35ffda86ea3f543078d" + "initCodeHash": "0xe631e0c2e8e86711f83cb97884065ce38d1ff519e0d2dbf8704e7e4c183a56cc", + "sourceCodeHash": "0xfa0464c07c06fddc98ba20e9a362ba10ecf94496556d0f7ac88d1986f79a8a6b" }, "src/multiproof/AggregateVerifier.sol:AggregateVerifier:dispute": { - "initCodeHash": "0xe28eaeecda21594f6db23bb70127daa2b7b71debe38ce65b598f28d78d2561eb", - "sourceCodeHash": "0x2bd04b43f2434dec3b66bfcbfbaf3df2d70f18abb915c35ffda86ea3f543078d" + "initCodeHash": "0x89f15344142ede7ca9d6af3c998fb3ffec84293105b28daa8427aa0608dd1d9e", + "sourceCodeHash": "0xfa0464c07c06fddc98ba20e9a362ba10ecf94496556d0f7ac88d1986f79a8a6b" }, "src/multiproof/tee/TEEProverRegistry.sol:TEEProverRegistry": { "initCodeHash": "0x4c89ecad0d48b6da64ef7f489326aae63b7fbcd33f4fed949a496afd1be49009", diff --git a/src/multiproof/AggregateVerifier.sol b/src/multiproof/AggregateVerifier.sol index 56bf09a2..704ea205 100644 --- a/src/multiproof/AggregateVerifier.sol +++ b/src/multiproof/AggregateVerifier.sol @@ -385,9 +385,9 @@ contract AggregateVerifier is Clone, ReentrancyGuard, ISemver { gameCreator(), l1OriginHash, startingOutputRoot.root.raw(), - startingOutputRoot.l2SequenceNumber, + uint64(startingOutputRoot.l2SequenceNumber), rootClaim().raw(), - l2SequenceNumber(), + uint64(l2SequenceNumber()), intermediateOutputRoots() ); @@ -420,9 +420,9 @@ contract AggregateVerifier is Clone, ReentrancyGuard, ISemver { msg.sender, l1Head().raw(), startingOutputRoot.root.raw(), - startingOutputRoot.l2SequenceNumber, + uint64(startingOutputRoot.l2SequenceNumber), rootClaim().raw(), - l2SequenceNumber(), + uint64(l2SequenceNumber()), intermediateOutputRoots() ); _proofVerifiedUpdate(proofType, msg.sender); @@ -495,7 +495,7 @@ contract AggregateVerifier is Clone, ReentrancyGuard, ISemver { _checkIntermediateRoot(intermediateRootIndex, intermediateRootToProve); - (bytes32 startingRoot, uint256 startingL2SequenceNumber, uint256 endingL2SequenceNumber) = + (bytes32 startingRoot, uint64 startingL2SequenceNumber, uint64 endingL2SequenceNumber) = _getStartingIntermediateRootAndL2SequenceNumbers(intermediateRootIndex); _verifyProof( @@ -559,7 +559,7 @@ contract AggregateVerifier is Clone, ReentrancyGuard, ISemver { _checkIntermediateRoot(intermediateRootIndex, intermediateRootToProve); } - (bytes32 startingRoot, uint256 startingL2SequenceNumber, uint256 endingL2SequenceNumber) = + (bytes32 startingRoot, uint64 startingL2SequenceNumber, uint64 endingL2SequenceNumber) = _getStartingIntermediateRootAndL2SequenceNumbers(intermediateRootIndex); _verifyProof( @@ -814,9 +814,9 @@ contract AggregateVerifier is Clone, ReentrancyGuard, ISemver { address proposer, bytes32 l1OriginHash, bytes32 startingRoot, - uint256 startingL2SequenceNumber, + uint64 startingL2SequenceNumber, bytes32 endingRoot, - uint256 endingL2SequenceNumber, + uint64 endingL2SequenceNumber, bytes memory intermediateRoots ) internal @@ -858,9 +858,9 @@ contract AggregateVerifier is Clone, ReentrancyGuard, ISemver { address proposer, bytes32 l1OriginHash, bytes32 startingRoot, - uint256 startingL2SequenceNumber, + uint64 startingL2SequenceNumber, bytes32 endingRoot, - uint256 endingL2SequenceNumber, + uint64 endingL2SequenceNumber, bytes memory intermediateRoots ) internal @@ -892,9 +892,9 @@ contract AggregateVerifier is Clone, ReentrancyGuard, ISemver { address proposer, bytes32 l1OriginHash, bytes32 startingRoot, - uint256 startingL2SequenceNumber, + uint64 startingL2SequenceNumber, bytes32 endingRoot, - uint256 endingL2SequenceNumber, + uint64 endingL2SequenceNumber, bytes memory intermediateRoots ) internal @@ -997,14 +997,14 @@ contract AggregateVerifier is Clone, ReentrancyGuard, ISemver { function _getStartingIntermediateRootAndL2SequenceNumbers(uint256 intermediateRootIndex) internal view - returns (bytes32, uint256, uint256) + returns (bytes32, uint64, uint64) { bytes32 startingRoot = intermediateRootIndex == 0 ? startingOutputRoot.root.raw() : intermediateOutputRoot(intermediateRootIndex - 1); - uint256 startingL2SequenceNumber = - startingOutputRoot.l2SequenceNumber + intermediateRootIndex * INTERMEDIATE_BLOCK_INTERVAL; - uint256 endingL2SequenceNumber = startingL2SequenceNumber + INTERMEDIATE_BLOCK_INTERVAL; + uint64 startingL2SequenceNumber = + uint64(startingOutputRoot.l2SequenceNumber + intermediateRootIndex * INTERMEDIATE_BLOCK_INTERVAL); + uint64 endingL2SequenceNumber = startingL2SequenceNumber + uint64(INTERMEDIATE_BLOCK_INTERVAL); return (startingRoot, startingL2SequenceNumber, endingL2SequenceNumber); }