Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions contracts/scripts/DeployBeefyClient.sol
Original file line number Diff line number Diff line change
Expand Up @@ -55,21 +55,21 @@ contract DeployBeefyClient is Script {

function westendConfig() internal pure returns (Config memory config) {
config = Config({
startBlock: 29_879_785,
startBlock: 30_057_085,
current: BeefyClient.ValidatorSet({
id: 19_849,
id: 20_144,
length: 20,
root: 0xff1d13b4dc453f2f88261fbc1ec53922bce47d740489c9022bed06f345395f8c
}),
next: BeefyClient.ValidatorSet({
id: 19_850,
id: 20_145,
length: 20,
root: 0xff1d13b4dc453f2f88261fbc1ec53922bce47d740489c9022bed06f345395f8c
}),
randaoCommitDelay: 0,
randaoCommitExpiration: 1024,
minimumSignatures: 12,
fiatShamirRequiredSignatures: 101
fiatShamirRequiredSignatures: 111
});
}

Expand Down
6 changes: 3 additions & 3 deletions contracts/scripts/upgrade/DeployGateway.sol
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ pragma solidity 0.8.33;

import {AgentExecutor} from "../../src/AgentExecutor.sol";
import {Gateway202602} from "../../src/upgrade/Gateway202602.sol";
import {GatewaySepolia202602} from "../../src/upgrade/Gateway202602.sepolia.sol";
import {GatewaySepolia202603} from "../../src/upgrade/Gateway202603.sepolia.sol";
import {Gateway} from "../../src/Gateway.sol";
import {ParaID} from "../../src/Types.sol";
import {Script} from "forge-std/Script.sol";
Expand All @@ -30,8 +30,8 @@ contract DeployGateway is Script {
keccak256(abi.encodePacked(vm.envString("SNOWBRIDGE_DEPLOY_STAGE")))
== keccak256(abi.encodePacked("westend_sepolia"))
) {
address beefyClient = 0x2Bc7eC7fe8EC8BDDE511003F4fe82Bc86b69894a;
gatewayLogic = new GatewaySepolia202602(address(beefyClient), address(executor));
address beefyClient = 0xEBD1CFcF82BaA170b86BDe532f69A6A49c6c790D;
gatewayLogic = new GatewaySepolia202603(address(beefyClient), address(executor));
}

console.log("Snowbridge deployment stage: %s", vm.envString("SNOWBRIDGE_DEPLOY_STAGE"));
Expand Down
33 changes: 33 additions & 0 deletions contracts/scripts/verify-gateway-libs.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#!/usr/bin/env bash

set -eux

# Verify linked libraries for GatewaySepolia202603 on Sepolia
# These must be verified separately after the main gateway contract is deployed

ETHERSCAN_API_KEY="${ETHERSCAN_API_KEY}"
CHAIN="${ETH_NETWORK:-sepolia}"

# Library addresses from Sepolia deployment of GatewaySepolia202603
VERIFICATION_LIB="0x23d6c0bb025570b291b834cd48b78984cffc6e5c"
CALLSV1_LIB="0x3ef6c570c43761cdcd3b05fbef120ecfddbf1104"

echo "Verifying linked libraries on $CHAIN..."

# Verify Verification library
echo "Verifying Verification library at $VERIFICATION_LIB..."
forge verify-contract "$VERIFICATION_LIB" \
src/Verification.sol:Verification \
--chain "$CHAIN" \
--etherscan-api-key "$ETHERSCAN_API_KEY" \
--watch

# Verify CallsV1 library
echo "Verifying CallsV1 library at $CALLSV1_LIB..."
forge verify-contract "$CALLSV1_LIB" \
src/v1/Calls.sol:CallsV1 \
--chain "$CHAIN" \
--etherscan-api-key "$ETHERSCAN_API_KEY" \
--watch

echo "Library verification complete!"
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@ pragma solidity 0.8.33;
import "../Gateway.sol";

// New Gateway logic contract with an fee initializer
contract GatewaySepolia202601 is Gateway {
contract GatewaySepolia202603 is Gateway {
constructor(address beefyClient, address agentExecutor) Gateway(beefyClient, agentExecutor) {}

// Override parent initializer to prevent re-initialization of storage.
function initialize(bytes calldata) external override {
function initialize(bytes calldata) external view override {
// Ensure that arbitrary users cannot initialize storage in this logic contract.
if (ERC1967.load() == address(0)) {
revert Unauthorized();
Expand Down
4 changes: 0 additions & 4 deletions smoketest/make-bindings.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,6 @@ rm -rf src/contracts
mkdir -p src/contracts

contracts_root="../contracts"
if [ "$snowbridge_v1" = "true" ]; then
# Deploy legacy V1 contracts
contracts_root="../../snowbridge-v1/contracts"
fi

# Generate Rust bindings for contracts
forge bind --module --overwrite \
Expand Down
9 changes: 0 additions & 9 deletions smoketest/tests/v2/transfer_ena.rs
Original file line number Diff line number Diff line change
Expand Up @@ -107,15 +107,6 @@ async fn transfer_ena() {

let signer = sr25519::Keypair::from_uri(&suri).expect("valid keypair");

// Mint ether to sender to pay fees
mint_token_to(
&test_clients.asset_hub_client,
eth_location(),
signer.public_key().0,
INITIAL_FUND,
)
.await;

let token_transfer_call =
TransactionApi.execute(xcm, Weight { ref_time: 8_000_000_000, proof_size: 80_000 });

Expand Down
10 changes: 5 additions & 5 deletions web/packages/api/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,11 @@
"typescript": "5.9.3"
},
"dependencies": {
"@polkadot/api": "16.4.8",
"@polkadot/keyring": "13.5.6",
"@polkadot/types": "16.4.8",
"@polkadot/util": "13.5.6",
"@polkadot/util-crypto": "13.5.6",
"@polkadot/api": "16.5.4",
"@polkadot/keyring": "14.0.1",
"@polkadot/types": "16.5.4",
"@polkadot/util": "14.0.1",
"@polkadot/util-crypto": "14.0.1",
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice thought these were out of support!

Copy link
Copy Markdown
Contributor Author

@yrong yrong Mar 4, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@alistair-singh I’ve confirmed that it works on PAH but not on WAH. I also verified that the Rust smoke tests pass on WAH, which suggests the above issue is most likely related to PJS.

Since PJS is now in maintenance mode, does this mean we should consider migrating to PAPI instead?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There must be some new addition on WAH that makes this break. Potentially metadata.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It appears to be related to the Dwellir endpoints. The issue was resolved after switching to the Parity endpoints.

d895588

"@snowbridge/base-types": "workspace:*",
"@snowbridge/contract-types": "workspace:*",
"ethers": "6.16.0"
Expand Down
2 changes: 1 addition & 1 deletion web/packages/api/src/toEthereum_v2.ts
Original file line number Diff line number Diff line change
Expand Up @@ -819,7 +819,7 @@ export async function signAndSend(
try {
transfer.tx.signAndSend(account, options, (c) => {
if (c.isError) {
console.error(c)
console.error(c.toHuman())
reject(c.internalError || c.dispatchError || c)
}
// We have to check for finalization here because re-orgs will produce a different messageId on Asset Hub.
Expand Down
14 changes: 7 additions & 7 deletions web/packages/operations/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
"registerWeth": "npx ts-node src/register_token_v2.ts 0xb8ea8cb425d85536b158d661da1ef0895bb92f1d",
"createAgent": "npx ts-node src/create_agent.ts",
"addTip": "npx ts-node src/add_tip.ts Inbound 1 ETH 1000000000000000",
"registerTokenV2": "npx ts-node src/register_token_v2.ts 0xFa2B947eEc368f42195f24F36d2aF29f7c24CeC2",
"registerTokenV2": "npx ts-node src/register_token_v2.ts 0x7169D38820dfd117C3FA1f22a697dBA58d90BA06",
"transferWethToAH": "npx ts-node src/transfer_from_e2p.ts 1000 WETH 200000000000000",
"transferEthToAcalaV1": "npx ts-node src/transfer_from_e2p.ts 2000 ETH 150000000000000",
"transferEthToAcalaV2": "npx ts-node src/transfer_from_e2p_v2.ts 2000 ETH 150000000000000",
Expand Down Expand Up @@ -111,12 +111,12 @@
},
"dependencies": {
"@aws-sdk/client-cloudwatch": "^3.901.0",
"@polkadot/api": "16.4.8",
"@polkadot/keyring": "13.5.6",
"@polkadot/types": "16.4.8",
"@polkadot/types-codec": "16.4.8",
"@polkadot/util": "13.5.6",
"@polkadot/util-crypto": "13.5.6",
"@polkadot/api": "16.5.4",
"@polkadot/keyring": "14.0.1",
"@polkadot/types": "16.5.4",
"@polkadot/types-codec": "16.5.4",
"@polkadot/util": "14.0.1",
"@polkadot/util-crypto": "14.0.1",
"@snowbridge/api": "workspace:*",
"@snowbridge/base-types": "workspace:*",
"@snowbridge/contract-types": "workspace:*",
Expand Down
4 changes: 2 additions & 2 deletions web/packages/registry/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@
"format": "prettier src --write && prettier scripts --write"
},
"devDependencies": {
"@polkadot/api": "16.4.8",
"@polkadot/util": "13.5.6",
"@polkadot/api": "16.5.4",
"@polkadot/util": "14.0.1",
"@snowbridge/api": "workspace:*",
"@snowbridge/contract-types": "workspace:*",
"@types/node": "24.6.2",
Expand Down
8 changes: 4 additions & 4 deletions web/packages/registry/scripts/buildRegistry.ts
Original file line number Diff line number Diff line change
Expand Up @@ -208,13 +208,13 @@ const SNOWBRIDGE_ENV: { [env: string]: Environment } = {
"84532": "https://base-sepolia-rpc.publicnode.com",
"421614": "https://arbitrum-sepolia-rpc.publicnode.com",
},
relaychainUrl: "wss://westend-rpc.n.dwellir.com",
relaychainUrl: "https://westend-rpc.polkadot.io",
parachains: {
"1000": "wss://asset-hub-westend-rpc.n.dwellir.com",
"1002": "wss://bridge-hub-westend-rpc.n.dwellir.com",
"1000": "https://westend-asset-hub-rpc.polkadot.io",
"1002": "https://westend-bridge-hub-rpc.polkadot.io",
},
gatewayContract: "0x9ed8b47bc3417e3bd0507adc06e56e2fa360a4e9",
beefyContract: "0x2bc7ec7fe8ec8bdde511003f4fe82bc86b69894a",
beefyContract: "0xEBD1CFcF82BaA170b86BDe532f69A6A49c6c790D".toLowerCase(),
assetHubParaId: 1000,
bridgeHubParaId: 1002,
v2_parachains: [1000],
Expand Down
8 changes: 4 additions & 4 deletions web/packages/registry/src/westend_sepolia_bridge_info.g.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@ const registry = {
"421614": "https://arbitrum-sepolia-rpc.publicnode.com",
"11155111": "https://ethereum-sepolia-rpc.publicnode.com",
},
relaychainUrl: "wss://westend-rpc.n.dwellir.com",
relaychainUrl: "https://westend-rpc.polkadot.io",
parachains: {
"1000": "wss://asset-hub-westend-rpc.n.dwellir.com",
"1002": "wss://bridge-hub-westend-rpc.n.dwellir.com",
"1000": "https://westend-asset-hub-rpc.polkadot.io",
"1002": "https://westend-bridge-hub-rpc.polkadot.io",
},
gatewayContract: "0x9ed8b47bc3417e3bd0507adc06e56e2fa360a4e9",
beefyContract: "0x2bc7ec7fe8ec8bdde511003f4fe82bc86b69894a",
beefyContract: "0xebd1cfcf82baa170b86bde532f69a6a49c6c790d",
assetHubParaId: 1000,
bridgeHubParaId: 1002,
v2_parachains: [1000],
Expand Down
12 changes: 6 additions & 6 deletions web/packages/test-helpers/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,12 +30,12 @@
"typescript": "5.9.3"
},
"dependencies": {
"@polkadot/api": "16.4.8",
"@polkadot/keyring": "13.5.6",
"@polkadot/types": "16.4.8",
"@polkadot/types-codec": "16.4.8",
"@polkadot/util": "13.5.6",
"@polkadot/util-crypto": "13.5.6",
"@polkadot/api": "16.5.4",
"@polkadot/keyring": "14.0.1",
"@polkadot/types": "16.5.4",
"@polkadot/types-codec": "16.5.4",
"@polkadot/util": "14.0.1",
"@polkadot/util-crypto": "14.0.1",
"@snowbridge/contract-types": "workspace:*",
"@typechain/ethers-v6": "^0.5.1",
"@types/keccak": "^3.0.5",
Expand Down
Loading