From ae293e8715a83448f8864acb5ad682a5d5863a13 Mon Sep 17 00:00:00 2001 From: nicholaspai Date: Mon, 9 Mar 2026 17:02:22 -0400 Subject: [PATCH] fix(ZkStack_Adapter): Set msg.value in BRIDGE_HUB call Similar to the other call to `requestL2TransactionTwoBridges` in this PR, we need to set `value` according to the BridgeHub code implemented here https://github.com/matter-labs/era-contracts/blob/main/l1-contracts/contracts/bridgehub/Bridgehub.sol#L527 This bug was originally introduced in https://github.com/across-protocol/contracts/pull/986/changes and passed audit --- contracts/chain-adapters/ZkStack_Adapter.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/chain-adapters/ZkStack_Adapter.sol b/contracts/chain-adapters/ZkStack_Adapter.sol index 2bd0fa215..f7cb76552 100644 --- a/contracts/chain-adapters/ZkStack_Adapter.sol +++ b/contracts/chain-adapters/ZkStack_Adapter.sol @@ -182,7 +182,7 @@ contract ZkStack_Adapter is AdapterInterface, CircleCCTPAdapter { _transferUsdc(to, amount); } else { IERC20(l1Token).forceApprove(USDC_SHARED_BRIDGE, amount); - txHash = BRIDGE_HUB.requestL2TransactionTwoBridges( + txHash = BRIDGE_HUB.requestL2TransactionTwoBridges{ value: txBaseCost }( BridgeHubInterface.L2TransactionRequestTwoBridgesOuter({ chainId: CHAIN_ID, mintValue: txBaseCost,