From 813d384e3afb534783833dabdeaa4269a32e6583 Mon Sep 17 00:00:00 2001 From: Luiz Date: Thu, 29 Jan 2026 10:37:16 -0300 Subject: [PATCH] rename variables --- docs/provers/ARBITRUM.md | 8 ++++---- docs/provers/OPTIMISM.md | 8 ++++---- docs/provers/SCROLL.md | 8 ++++---- docs/provers/TAIKO.md | 8 ++++---- scripts/generate-optimism-test-payloads.ts | 2 +- .../provers/arbitrum/ChildToParentProver.sol | 6 +++--- .../provers/arbitrum/ParentToChildProver.sol | 9 +++++---- src/contracts/provers/linea/ChildToParentProver.sol | 6 +++--- .../provers/optimism/ChildToParentProver.sol | 6 +++--- .../provers/optimism/ParentToChildProver.sol | 6 +++--- src/contracts/provers/scroll/ChildToParentProver.sol | 6 +++--- src/contracts/provers/scroll/ParentToChildProver.sol | 6 +++--- src/contracts/provers/taiko/ChildToParentProver.sol | 6 +++--- src/contracts/provers/taiko/ParentToChildProver.sol | 6 +++--- src/contracts/provers/zksync/ChildToParentProver.sol | 6 +++--- test/mocks/MockProver.sol | 4 ++-- test/provers/arbitrum/ChildToParentProver.t.sol | 12 ++++++------ test/provers/arbitrum/ParentToChildProver.t.sol | 4 ++-- test/provers/optimism/ChildToParentProver.t.sol | 12 ++++++------ test/provers/scroll/ParentToChildProver.t.sol | 4 ++-- test/provers/taiko/ChildToParentProver.t.sol | 2 +- test/provers/taiko/ParentToChildProver.t.sol | 2 +- 22 files changed, 69 insertions(+), 68 deletions(-) diff --git a/docs/provers/ARBITRUM.md b/docs/provers/ARBITRUM.md index b3ebdd0..fa40609 100644 --- a/docs/provers/ARBITRUM.md +++ b/docs/provers/ARBITRUM.md @@ -76,7 +76,7 @@ function getTargetStateCommitment(bytes calldata input) **Returns**: Ethereum block hash (proven from Arbitrum state) ```solidity -function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) +function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) { ( @@ -91,7 +91,7 @@ function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input // Verify proof and return L1 block hash targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, rlpBlockHeader, blockHashBuffer, slot, accountProof, storageProof + homeStateCommitment, rlpBlockHeader, blockHashBuffer, slot, accountProof, storageProof ); } ``` @@ -195,7 +195,7 @@ The `sendRoot` is a commitment to the Arbitrum state that can be looked up in th **Returns**: Arbitrum block hash (proven from Ethereum state) ```solidity -function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) +function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) { ( @@ -209,7 +209,7 @@ function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input uint256 slot = SlotDerivation.deriveMapping(bytes32(rootsSlot), sendRoot); targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, rlpBlockHeader, outbox, slot, accountProof, storageProof + homeStateCommitment, rlpBlockHeader, outbox, slot, accountProof, storageProof ); if (targetStateCommitment == bytes32(0)) { diff --git a/docs/provers/OPTIMISM.md b/docs/provers/OPTIMISM.md index caaf8c1..09fc6bc 100644 --- a/docs/provers/OPTIMISM.md +++ b/docs/provers/OPTIMISM.md @@ -92,7 +92,7 @@ function getTargetStateCommitment(bytes calldata) **Returns**: Ethereum block hash (proven from Optimism state) ```solidity -function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) +function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) { ( @@ -103,7 +103,7 @@ function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input // Verify proof against L1Block predeploy's storage targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, + homeStateCommitment, rlpBlockHeader, l1BlockPredeploy, l1BlockHashSlot, // slot 2 @@ -245,7 +245,7 @@ This function performs a complex verification: 5. Return the L2 block hash from the preimage ```solidity -function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) +function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) { ( @@ -258,7 +258,7 @@ function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input ) = abi.decode(input, (bytes, bytes, bytes, bytes, bytes, OutputRootProof)); // Verify block header - require(homeBlockHash == keccak256(rlpBlockHeader), "Invalid home block header"); + require(homeStateCommitment == keccak256(rlpBlockHeader), "Invalid home block header"); bytes32 stateRoot = ProverUtils.extractStateRootFromBlockHeader(rlpBlockHeader); // Get anchor game address from AnchorStateRegistry diff --git a/docs/provers/SCROLL.md b/docs/provers/SCROLL.md index f7821b7..7bfac36 100644 --- a/docs/provers/SCROLL.md +++ b/docs/provers/SCROLL.md @@ -101,7 +101,7 @@ function getTargetStateCommitment(bytes calldata input) **Returns**: Ethereum block hash ```solidity -function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) +function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) { ( @@ -117,7 +117,7 @@ function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input ); targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, rlpBlockHeader, blockHashBuffer, slot, accountProof, storageProof + homeStateCommitment, rlpBlockHeader, blockHashBuffer, slot, accountProof, storageProof ); } ``` @@ -192,7 +192,7 @@ function getTargetStateCommitment(bytes calldata input) **Returns**: Scroll state root ```solidity -function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) +function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) { ( @@ -208,7 +208,7 @@ function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input ); targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, rlpBlockHeader, scrollChain, slot, accountProof, storageProof + homeStateCommitment, rlpBlockHeader, scrollChain, slot, accountProof, storageProof ); if (targetStateCommitment == bytes32(0)) { diff --git a/docs/provers/TAIKO.md b/docs/provers/TAIKO.md index 13f9560..8994577 100644 --- a/docs/provers/TAIKO.md +++ b/docs/provers/TAIKO.md @@ -114,7 +114,7 @@ function getTargetStateCommitment(bytes calldata input) **Returns**: Ethereum block hash (proven from Taiko L2 state) ```solidity -function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) +function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) { ( @@ -132,7 +132,7 @@ function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input ); targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, rlpBlockHeader, signalService, slot, accountProof, storageProof + homeStateCommitment, rlpBlockHeader, signalService, slot, accountProof, storageProof ); if (targetStateCommitment == bytes32(0)) { @@ -219,7 +219,7 @@ function getTargetStateCommitment(bytes calldata input) **Returns**: Taiko L2 block hash ```solidity -function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) +function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) { ( @@ -235,7 +235,7 @@ function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input ); targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, rlpBlockHeader, signalService, slot, accountProof, storageProof + homeStateCommitment, rlpBlockHeader, signalService, slot, accountProof, storageProof ); if (targetStateCommitment == bytes32(0)) { diff --git a/scripts/generate-optimism-test-payloads.ts b/scripts/generate-optimism-test-payloads.ts index f94cc25..815c1fb 100644 --- a/scripts/generate-optimism-test-payloads.ts +++ b/scripts/generate-optimism-test-payloads.ts @@ -72,7 +72,7 @@ async function main() { try { const { input, targetStateCommitment } = await helper.buildInputForVerifyTargetBlockHash(optimismBlockHash) - // Format: [homeBlockHash (32 bytes), targetStateCommitment (32 bytes), input (variable)] + // Format: [homeStateCommitment (32 bytes), targetStateCommitment (32 bytes), input (variable)] const payload = encodeAbiParameters( [{ type: 'bytes32' }, { type: 'bytes32' }, { type: 'bytes' }], [optimismBlockHash, targetStateCommitment, input] diff --git a/src/contracts/provers/arbitrum/ChildToParentProver.sol b/src/contracts/provers/arbitrum/ChildToParentProver.sol index 6434549..d558942 100644 --- a/src/contracts/provers/arbitrum/ChildToParentProver.sol +++ b/src/contracts/provers/arbitrum/ChildToParentProver.sol @@ -29,9 +29,9 @@ contract ChildToParentProver is IStateProver { } /// @notice Get a parent chain block hash from the buffer at `blockHashBuffer` using a storage proof - /// @param homeBlockHash The block hash of the home chain. + /// @param homeStateCommitment The block hash of the home chain. /// @param input ABI encoded (bytes blockHeader, uint256 targetBlockNumber, bytes accountProof, bytes storageProof) - function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) + function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) @@ -49,7 +49,7 @@ contract ChildToParentProver is IStateProver { // verify proofs and get the block hash targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, rlpBlockHeader, blockHashBuffer, slot, accountProof, storageProof + homeStateCommitment, rlpBlockHeader, blockHashBuffer, slot, accountProof, storageProof ); } diff --git a/src/contracts/provers/arbitrum/ParentToChildProver.sol b/src/contracts/provers/arbitrum/ParentToChildProver.sol index 66caaf2..ff87103 100644 --- a/src/contracts/provers/arbitrum/ParentToChildProver.sol +++ b/src/contracts/provers/arbitrum/ParentToChildProver.sol @@ -31,9 +31,9 @@ contract ParentToChildProver is IStateProver { } /// @notice Verify a target chain block hash given a home chain block hash and a proof. - /// @param homeBlockHash The block hash of the home chain. + /// @param homeStateCommitment The block hash of the home chain. /// @param input ABI encoded (bytes blockHeader, bytes32 sendRoot, bytes accountProof, bytes storageProof) - function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) + function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) @@ -51,8 +51,9 @@ contract ParentToChildProver is IStateProver { uint256 slot = uint256(SlotDerivation.deriveMapping(bytes32(rootsSlot), sendRoot)); // verify proofs and get the block hash - targetStateCommitment = - ProverUtils.getSlotFromBlockHeader(homeBlockHash, rlpBlockHeader, outbox, slot, accountProof, storageProof); + targetStateCommitment = ProverUtils.getSlotFromBlockHeader( + homeStateCommitment, rlpBlockHeader, outbox, slot, accountProof, storageProof + ); if (targetStateCommitment == bytes32(0)) { revert TargetBlockHashNotFound(); diff --git a/src/contracts/provers/linea/ChildToParentProver.sol b/src/contracts/provers/linea/ChildToParentProver.sol index fd32bf3..f4062cb 100644 --- a/src/contracts/provers/linea/ChildToParentProver.sol +++ b/src/contracts/provers/linea/ChildToParentProver.sol @@ -28,9 +28,9 @@ contract ChildToParentProver is IStateProver { } /// @notice Get a parent chain block hash from the buffer at `blockHashBuffer` using a storage proof - /// @param homeBlockHash The block hash of the home chain. + /// @param homeStateCommitment The block hash of the home chain. /// @param input ABI encoded (bytes blockHeader, uint256 targetBlockNumber, bytes accountProof, bytes storageProof) - function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) + function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) @@ -48,7 +48,7 @@ contract ChildToParentProver is IStateProver { // verify proofs and get the block hash targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, rlpBlockHeader, blockHashBuffer, slot, accountProof, storageProof + homeStateCommitment, rlpBlockHeader, blockHashBuffer, slot, accountProof, storageProof ); } diff --git a/src/contracts/provers/optimism/ChildToParentProver.sol b/src/contracts/provers/optimism/ChildToParentProver.sol index acef4fc..0c03cb4 100644 --- a/src/contracts/provers/optimism/ChildToParentProver.sol +++ b/src/contracts/provers/optimism/ChildToParentProver.sol @@ -31,9 +31,9 @@ contract ChildToParentProver is IStateProver { } /// @notice Verify the latest available target block hash given a home chain block hash and a storage proof of the L1Block predeploy. - /// @param homeBlockHash The block hash of the home chain. + /// @param homeStateCommitment The block hash of the home chain. /// @param input ABI encoded (bytes blockHeader, bytes accountProof, bytes storageProof) - function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) + function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) @@ -50,7 +50,7 @@ contract ChildToParentProver is IStateProver { // verify proofs and get the value targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, rlpBlockHeader, l1BlockPredeploy, l1BlockHashSlot, accountProof, storageProof + homeStateCommitment, rlpBlockHeader, l1BlockPredeploy, l1BlockHashSlot, accountProof, storageProof ); } diff --git a/src/contracts/provers/optimism/ParentToChildProver.sol b/src/contracts/provers/optimism/ParentToChildProver.sol index 97c276d..eba6a74 100644 --- a/src/contracts/provers/optimism/ParentToChildProver.sol +++ b/src/contracts/provers/optimism/ParentToChildProver.sol @@ -52,14 +52,14 @@ contract ParentToChildProver is IStateProver { /// 3. The game's root claim hash is extracted from the game proxy code. /// 4. The root claim preimage is verified against the root claim hash. /// 5. The target block hash is returned from the root claim preimage. - /// @param homeBlockHash The block hash of the home chain. + /// @param homeStateCommitment The block hash of the home chain. /// @param input ABI encoded (bytes blockHeader, /// bytes asrAccountProof, /// bytes asrStorageProof, /// bytes gameProxyAccountProof, /// bytes gameProxyCode, /// bytes rootClaimPreimage) - function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) + function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) @@ -79,7 +79,7 @@ contract ParentToChildProver is IStateProver { ) = abi.decode(input, (bytes, bytes, bytes, bytes, bytes, OutputRootProof)); // check the block hash - require(homeBlockHash == keccak256(rlpBlockHeader), "Invalid home block header"); + require(homeStateCommitment == keccak256(rlpBlockHeader), "Invalid home block header"); bytes32 stateRoot = ProverUtils.extractStateRootFromBlockHeader(rlpBlockHeader); // grab the anchor game address diff --git a/src/contracts/provers/scroll/ChildToParentProver.sol b/src/contracts/provers/scroll/ChildToParentProver.sol index c24c401..c8e314b 100644 --- a/src/contracts/provers/scroll/ChildToParentProver.sol +++ b/src/contracts/provers/scroll/ChildToParentProver.sol @@ -29,9 +29,9 @@ contract ChildToParentProver is IStateProver { } /// @notice Get a parent chain block hash from the buffer at `blockHashBuffer` using a storage proof - /// @param homeBlockHash The block hash of the home chain. + /// @param homeStateCommitment The block hash of the home chain. /// @param input ABI encoded (bytes blockHeader, uint256 targetBlockNumber, bytes accountProof, bytes storageProof) - function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) + function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) @@ -49,7 +49,7 @@ contract ChildToParentProver is IStateProver { // verify proofs and get the block hash targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, rlpBlockHeader, blockHashBuffer, slot, accountProof, storageProof + homeStateCommitment, rlpBlockHeader, blockHashBuffer, slot, accountProof, storageProof ); } diff --git a/src/contracts/provers/scroll/ParentToChildProver.sol b/src/contracts/provers/scroll/ParentToChildProver.sol index c974ead..79e53e8 100644 --- a/src/contracts/provers/scroll/ParentToChildProver.sol +++ b/src/contracts/provers/scroll/ParentToChildProver.sol @@ -44,10 +44,10 @@ contract ParentToChildProver is IStateProver { /// @notice Verify L2 state root using L1 ScrollChain storage proof /// @dev Called on non-home chains (e.g., another L2 that has L1 block hashes) - /// @param homeBlockHash The L1 block hash + /// @param homeStateCommitment The L1 block hash /// @param input ABI encoded (bytes rlpBlockHeader, uint256 batchIndex, bytes accountProof, bytes storageProof) /// @return targetStateCommitment The L2 state root stored in L1's ScrollChain (NOTE: this is a state root, not a block hash) - function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) + function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) @@ -66,7 +66,7 @@ contract ParentToChildProver is IStateProver { // Verify proofs and get the L2 state root from L1's ScrollChain targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, rlpBlockHeader, scrollChain, slot, accountProof, storageProof + homeStateCommitment, rlpBlockHeader, scrollChain, slot, accountProof, storageProof ); if (targetStateCommitment == bytes32(0)) { diff --git a/src/contracts/provers/taiko/ChildToParentProver.sol b/src/contracts/provers/taiko/ChildToParentProver.sol index b3ab4d8..16b573b 100644 --- a/src/contracts/provers/taiko/ChildToParentProver.sol +++ b/src/contracts/provers/taiko/ChildToParentProver.sol @@ -44,10 +44,10 @@ contract ChildToParentProver is IStateProver { /// @notice Verify L1 block hash using L2 SignalService checkpoint with storage proof /// @dev Called on non-home chains (e.g., Ethereum L1) - /// @param homeBlockHash The L2 block hash + /// @param homeStateCommitment The L2 block hash /// @param input ABI encoded (bytes rlpBlockHeader, uint48 l1BlockNumber, bytes accountProof, bytes storageProof) /// @return targetStateCommitment The L1 block hash stored in L2's SignalService - function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) + function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) @@ -67,7 +67,7 @@ contract ChildToParentProver is IStateProver { // Verify proofs and get the L1 block hash from L2's SignalService // CheckpointRecord.blockHash is stored at the base slot targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, rlpBlockHeader, signalService, slot, accountProof, storageProof + homeStateCommitment, rlpBlockHeader, signalService, slot, accountProof, storageProof ); if (targetStateCommitment == bytes32(0)) { diff --git a/src/contracts/provers/taiko/ParentToChildProver.sol b/src/contracts/provers/taiko/ParentToChildProver.sol index 228b3e5..9d60b20 100644 --- a/src/contracts/provers/taiko/ParentToChildProver.sol +++ b/src/contracts/provers/taiko/ParentToChildProver.sol @@ -44,10 +44,10 @@ contract ParentToChildProver is IStateProver { /// @notice Verify L2 block hash using L1 SignalService checkpoint with storage proof /// @dev Called on non-home chains (e.g., Taiko L2) - /// @param homeBlockHash The L1 block hash + /// @param homeStateCommitment The L1 block hash /// @param input ABI encoded (bytes rlpBlockHeader, uint48 l2BlockNumber, bytes accountProof, bytes storageProof) /// @return targetStateCommitment The L2 block hash stored in L1's SignalService - function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) + function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) @@ -67,7 +67,7 @@ contract ParentToChildProver is IStateProver { // Verify proofs and get the L2 block hash from L1's SignalService // CheckpointRecord.blockHash is stored at the base slot targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, rlpBlockHeader, signalService, slot, accountProof, storageProof + homeStateCommitment, rlpBlockHeader, signalService, slot, accountProof, storageProof ); if (targetStateCommitment == bytes32(0)) { diff --git a/src/contracts/provers/zksync/ChildToParentProver.sol b/src/contracts/provers/zksync/ChildToParentProver.sol index 20a950c..1507983 100644 --- a/src/contracts/provers/zksync/ChildToParentProver.sol +++ b/src/contracts/provers/zksync/ChildToParentProver.sol @@ -29,9 +29,9 @@ contract ChildToParentProver is IStateProver { } /// @notice Get a parent chain block hash from the buffer at `blockHashBuffer` using a storage proof - /// @param homeBlockHash The block hash of the home chain. + /// @param homeStateCommitment The block hash of the home chain. /// @param input ABI encoded (bytes blockHeader, uint256 targetBlockNumber, bytes accountProof, bytes storageProof) - function verifyTargetStateCommitment(bytes32 homeBlockHash, bytes calldata input) + function verifyTargetStateCommitment(bytes32 homeStateCommitment, bytes calldata input) external view returns (bytes32 targetStateCommitment) @@ -49,7 +49,7 @@ contract ChildToParentProver is IStateProver { // verify proofs and get the block hash targetStateCommitment = ProverUtils.getSlotFromBlockHeader( - homeBlockHash, rlpBlockHeader, blockHashBuffer, slot, accountProof, storageProof + homeStateCommitment, rlpBlockHeader, blockHashBuffer, slot, accountProof, storageProof ); } diff --git a/test/mocks/MockProver.sol b/test/mocks/MockProver.sol index 7cc7801..976ce85 100644 --- a/test/mocks/MockProver.sol +++ b/test/mocks/MockProver.sol @@ -5,14 +5,14 @@ import {IStateProver} from "src/contracts/interfaces/IStateProver.sol"; contract MockProver is IStateProver { function verifyTargetStateCommitment( - bytes32 homeBlockHash, + bytes32 homeStateCommitment, bytes calldata /*input*/ ) external pure returns (bytes32 targetStateCommitment) { - return homeBlockHash; + return homeStateCommitment; } function getTargetStateCommitment(bytes calldata input) external pure returns (bytes32 targetStateCommitment) { diff --git a/test/provers/arbitrum/ChildToParentProver.t.sol b/test/provers/arbitrum/ChildToParentProver.t.sol index 7e342b3..a5a0f60 100644 --- a/test/provers/arbitrum/ChildToParentProver.t.sol +++ b/test/provers/arbitrum/ChildToParentProver.t.sol @@ -168,17 +168,17 @@ contract BroadcasterTest is Test { assertGt(payload.length, 64); - bytes32 homeBlockHash; + bytes32 homeStateCommitment; bytes32 targetStateCommitment; bytes memory input = Bytes.slice(payload, 64); assembly { - homeBlockHash := mload(add(payload, 0x20)) + homeStateCommitment := mload(add(payload, 0x20)) targetStateCommitment := mload(add(payload, 0x40)) } - bytes32 result = childToParentProverCopy.verifyTargetStateCommitment(homeBlockHash, input); + bytes32 result = childToParentProverCopy.verifyTargetStateCommitment(homeStateCommitment, input); assertEq(result, targetStateCommitment); } @@ -192,18 +192,18 @@ contract BroadcasterTest is Test { assertGt(payload.length, 64); - bytes32 homeBlockHash; + bytes32 homeStateCommitment; bytes32 targetStateCommitment; bytes memory input = Bytes.slice(payload, 64); assembly { - homeBlockHash := mload(add(payload, 0x20)) + homeStateCommitment := mload(add(payload, 0x20)) targetStateCommitment := mload(add(payload, 0x40)) } vm.expectRevert(ChildToParentProver.CallOnHomeChain.selector); - childToParentProverCopy.verifyTargetStateCommitment(homeBlockHash, input); + childToParentProverCopy.verifyTargetStateCommitment(homeStateCommitment, input); } function test_verifyStorageSlot() public { diff --git a/test/provers/arbitrum/ParentToChildProver.t.sol b/test/provers/arbitrum/ParentToChildProver.t.sol index c26f26a..28a15f0 100644 --- a/test/provers/arbitrum/ParentToChildProver.t.sol +++ b/test/provers/arbitrum/ParentToChildProver.t.sol @@ -108,7 +108,7 @@ contract ArbitrumParentToChildProverTest is Test { RLP.Encoder memory enc = RLP.encoder().push(bytes32(0)).push(bytes32(0)).push(bytes32(0)).push(stateRoot); bytes memory rlpBlockHeader = enc.encode(); - bytes32 homeBlockHash = keccak256(rlpBlockHeader); + bytes32 homeStateCommitment = keccak256(rlpBlockHeader); bytes32 sendRoot = 0x7995a5be000a0212a46f7f128e5ffd6f6a99fa9c72046d9e9b0668bd080712cd; bytes memory rlpAccountProof = _getAccountProof(); @@ -119,7 +119,7 @@ contract ArbitrumParentToChildProverTest is Test { // verifyTargetStateCommitment MUST be called off the prover's home chain. vm.chainId(proverHomeChainId + 1); - bytes32 result = prover.verifyTargetStateCommitment(homeBlockHash, input); + bytes32 result = prover.verifyTargetStateCommitment(homeStateCommitment, input); assertEq( result, expectedTargetBlockHash, "verifyTargetStateCommitment should return correct Arbitrum block hash" ); diff --git a/test/provers/optimism/ChildToParentProver.t.sol b/test/provers/optimism/ChildToParentProver.t.sol index 53e0e63..9e79575 100644 --- a/test/provers/optimism/ChildToParentProver.t.sol +++ b/test/provers/optimism/ChildToParentProver.t.sol @@ -92,16 +92,16 @@ contract OptimismChildToParentProverTest is Test { assertGt(payload.length, 64, "Payload should be > 64 bytes"); - bytes32 homeBlockHash; + bytes32 homeStateCommitment; bytes32 targetStateCommitment; bytes memory input = Bytes.slice(payload, 64); assembly { - homeBlockHash := mload(add(payload, 0x20)) + homeStateCommitment := mload(add(payload, 0x20)) targetStateCommitment := mload(add(payload, 0x40)) } - bytes32 result = childToParentProverCopy.verifyTargetStateCommitment(homeBlockHash, input); + bytes32 result = childToParentProverCopy.verifyTargetStateCommitment(homeStateCommitment, input); assertEq(result, targetStateCommitment, "Target block hash should match"); } @@ -116,16 +116,16 @@ contract OptimismChildToParentProverTest is Test { assertGt(payload.length, 64); - bytes32 homeBlockHash; + bytes32 homeStateCommitment; bytes memory input = Bytes.slice(payload, 64); assembly { - homeBlockHash := mload(add(payload, 0x20)) + homeStateCommitment := mload(add(payload, 0x20)) } // Should revert because we're on Optimism (home chain) vm.expectRevert(ChildToParentProver.CallOnHomeChain.selector); - childToParentProverCopy.verifyTargetStateCommitment(homeBlockHash, input); + childToParentProverCopy.verifyTargetStateCommitment(homeStateCommitment, input); } /// @notice Test verifyStorageSlot() - verifies Ethereum storage from Optimism diff --git a/test/provers/scroll/ParentToChildProver.t.sol b/test/provers/scroll/ParentToChildProver.t.sol index 17ee513..213b1cc 100644 --- a/test/provers/scroll/ParentToChildProver.t.sol +++ b/test/provers/scroll/ParentToChildProver.t.sol @@ -236,7 +236,7 @@ contract ScrollChainMock is IScrollChain { function test_verifyTargetStateCommitment_onHomeChain() public { vm.selectFork(l1ForkId); - bytes32 homeBlockHash = bytes32(uint256(1)); + bytes32 homeStateCommitment = bytes32(uint256(1)); bytes memory input = abi.encode( hex"", // rlpBlockHeader uint256(100), // batchIndex @@ -245,7 +245,7 @@ contract ScrollChainMock is IScrollChain { ); vm.expectRevert(ParentToChildProver.CallOnHomeChain.selector); - parentToChildProver.verifyTargetStateCommitment(homeBlockHash, input); + parentToChildProver.verifyTargetStateCommitment(homeStateCommitment, input); } /// @notice Test version returns 1 diff --git a/test/provers/taiko/ChildToParentProver.t.sol b/test/provers/taiko/ChildToParentProver.t.sol index 06629c1..8199f86 100644 --- a/test/provers/taiko/ChildToParentProver.t.sol +++ b/test/provers/taiko/ChildToParentProver.t.sol @@ -183,7 +183,7 @@ contract TaikoChildToParentProverTest is Test { vm.chainId(L1_CHAIN_ID); // For verifyTargetStateCommitment, we need: - // 1. An L2 block hash (homeBlockHash) - the trusted anchor + // 1. An L2 block hash (homeStateCommitment) - the trusted anchor // 2. Proof that L2's SignalService contains the L1 checkpoint // This is a simplified test - in production you'd need actual L2 proofs diff --git a/test/provers/taiko/ParentToChildProver.t.sol b/test/provers/taiko/ParentToChildProver.t.sol index a18e8f8..32a94f3 100644 --- a/test/provers/taiko/ParentToChildProver.t.sol +++ b/test/provers/taiko/ParentToChildProver.t.sol @@ -183,7 +183,7 @@ contract TaikoParentToChildProverTest is Test { vm.chainId(L2_CHAIN_ID); // For verifyTargetStateCommitment, we need: - // 1. An L1 block hash (homeBlockHash) - the trusted anchor + // 1. An L1 block hash (homeStateCommitment) - the trusted anchor // 2. Proof that L1's SignalService contains the L2 checkpoint // This is a simplified test - in production you'd need actual L1 proofs