[ZK Stack] - Reverts calling bridgehub mailbox #848
Replies: 1 comment
-
It appears that you are encountering a Here are a few steps to ensure your transaction is successful:
If you continue to experience issues, consider reaching out for more direct support through the ZKsync developers discussions on Github at ZKsync developers discussions where you can get more specific guidance related to your transaction details. Your feedback helps us serve you better. If this fully addresses your question, please give it a thumbs up. If it doesn't, please give it a thumbs down. This will inform the community and team so we can improve our support. |
Beta Was this translation helpful? Give feedback.
-
Team or Project
Abstract
Module Affected
Rust Version
N/A
Operating System
Issue Description
I am attempting to pass an L2 message via the bridgehub mailbox as documented here: https://docs.zksync.io/zksync-protocol/contracts/l1-contracts/shared-bridges#components-bridgehub
While, the ABI mentioned doesn't exactly match the documentation, the contract on sepolia has a similar enough method of
requestL2TransactionDirect((uint256,uint256,address,uint256,bytes,uint256,uint256,bytes[],address))
When I simulate a call via:
cast call --from 0xe06ad0Acb3956f98C9dF77Bd02cdFD4426b2208d --rpc-url https://eth-sepolia.g.alchemy.com/v2/$ALCHEMY_KEY 0x35A54c8C757806eB6820629bc82d90E056394C92 --value 1308136874000000 "requestL2TransactionDirect((uint256,uint256,address,uint256,bytes,uint256,uint256,bytes[],address))" "(11124,1308136874000000,0x6b176c958fb89Ddca0fc8214150DA4c4D0a32fbe,0, 0x30ff314000000000000000000000000080ae16d46ca0d961f4e785e83c1581a6444b929700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001,2000000,800,[],0x80aE16d46cA0d961f4e785e83c1581A6444B9297)" --trace
I get a successful execution:
When I attempt to actually send this transaction I get a revert:
cast send --async --private-key $PRIVATE_KEY --rpc-url https://eth-sepolia.g.alchemy.com/v2/$ALCHEMY_KEY 0x35A54c8C757806eB6820629bc82d90E056394C92 --value 1000000000000000 "requestL2TransactionDirect((uint256,uint256,address,uint256,bytes,uint256,uint256,bytes[],address))" "(11124,1000000000000000,0x6b176c958fb89Ddca0fc8214150DA4c4D0a32fbe,0, 0x30ff314000000000000000000000000080ae16d46ca0d961f4e785e83c1581a6444b929700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001,2000000,800,[],0x80aE16d46cA0d961f4e785e83c1581A6444B9297)"
Can you please provide guidance on the proper way to send a contract call thru the bridgehub, such that the sending wallet
can pay the L2 gas via the ethereum transaction?
Expected Behavior
Should be able to initiate a bridgehub transaction on L1 to send a transaction on L2
Current Behavior
L1 transaction reverts with
MsgValueTooLow
Repository Link (if applicable)
No response
Additional Details
Transaction example: https://sepolia.etherscan.io/tx/0x8a317bfed1d9c18d437febd031fdc88146fffb0bc1c315b20486871b831ad980
cast run --rpc-url https://eth-sepolia.g.alchemy.com/v2/$ALCHEMY_KEY 0x8a317bfed1d9c18d437febd031fdc88146fffb0bc1c315b20486871b831ad980
This seems to indicate I should send a higher value with the tx. When I update to use the value indicated in the error ( I get this:
cast call --private-key $PRIVATE_KEY --rpc-url https://eth-sepolia.g.alchemy.com/v2/$ALCHEMY_KEY 0x35A54c8C757806eB6820629bc82d90E056394C92 --value 2128942630000000 "requestL2TransactionDirect((uint256,uint256,address,uint256,bytes,uint256,uint256,bytes[],address))" "(11124,1000000000000000,0x6b176c958fb89Ddca0fc8214150DA4c4D0a32fbe,0, 0x30ff314000000000000000000000000080ae16d46ca0d961f4e785e83c1581a6444b929700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001,2000000,800,[],0x80aE16d46cA0d961f4e785e83c1581A6444B9297)" --trace
Prior Research
Beta Was this translation helpful? Give feedback.
All reactions