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
1 change: 1 addition & 0 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@ ETHEREAL_RPC=
KATANA_RPC=
HYPEREVM_RPC=
ARC_RPC=
INJECTIVE_RPC=
PLASMA_RPC=
MONAD_RPC=
TEMPO_RPC=
Expand Down
1 change: 1 addition & 0 deletions deployments.csv
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ chainId,variant,allowanceHolderAddress,allowanceHolderSalt,allowanceHolderSaltTe
480,cancun,0x50c4E75a512F2A14A7b304787Adf79C4531A5909,0xa450483209637d11f92238066a6b1f405ae093536f02dda3b90a36d36f180570,AllowanceHolder50c4e7:5981577,0xe0afa70daed24ec949499638683365cbe4cbf097a1c8417a730e4b497cfb4610,0x0be5794255d21df0f4a10a516428f8d06805779d69b1714297bebcc18971e0b4,0x50cFe7c1938dB66A1a6D2e86D36F39FBef3d5c4a,0x4c57cf418d2865efb93a3c31021f230798eaca0458d188fbb593e329718139ab,OpenRouter50cfe7:4030514,0x0e5ff42eb7810767de756c833a042818f95052b885634a3dc3adb679a4652f48,0xd1dbc2c8ca87939cadf58e4eb91832cbe44bd5d12e3a0a0d56c76928a818e26b,0x8A774c1B73998A54ff09341f3cfF8A0010BbA7f1,0xeb8d08957ffb6da6c84ab1f89e95f4e08331fa81834e21d00754af20ec74d453,BungeeReceiver,0x1e4cf28950cc422f6b2112db77b8c0b0025c176291f984166889b8157de9dfe6,0x3e3fdfa261d7f00f53c22b4ba051f0da1903402669591bcef63d51ebe3085108,0xC914815120FA5A7e05748398C9fDf1d1b2729008,0x7c3bbaa3e26afa737955bd8665389dae8745dd537430122c9545abb09f85e34b,CalldataExecutor,0x2ac2791e955dbd2e9787486e2a4a9ba669d27cb1b642ade54a1221a5ccd53b64,0x037de760dbd500210ed5c68706a16171ec415563c6136e52d6a9930a5f53e32a
999,cancun,0x50c4E75a512F2A14A7b304787Adf79C4531A5909,0xa450483209637d11f92238066a6b1f405ae093536f02dda3b90a36d36f180570,AllowanceHolder50c4e7:5981577,0xe0afa70daed24ec949499638683365cbe4cbf097a1c8417a730e4b497cfb4610,0x0be5794255d21df0f4a10a516428f8d06805779d69b1714297bebcc18971e0b4,0x50cFe7c1938dB66A1a6D2e86D36F39FBef3d5c4a,0x4c57cf418d2865efb93a3c31021f230798eaca0458d188fbb593e329718139ab,OpenRouter50cfe7:4030514,0x0e5ff42eb7810767de756c833a042818f95052b885634a3dc3adb679a4652f48,0xd1dbc2c8ca87939cadf58e4eb91832cbe44bd5d12e3a0a0d56c76928a818e26b,0x8A774c1B73998A54ff09341f3cfF8A0010BbA7f1,0xeb8d08957ffb6da6c84ab1f89e95f4e08331fa81834e21d00754af20ec74d453,BungeeReceiver,0x1e4cf28950cc422f6b2112db77b8c0b0025c176291f984166889b8157de9dfe6,0x3e3fdfa261d7f00f53c22b4ba051f0da1903402669591bcef63d51ebe3085108,0xC914815120FA5A7e05748398C9fDf1d1b2729008,0x7c3bbaa3e26afa737955bd8665389dae8745dd537430122c9545abb09f85e34b,CalldataExecutor,0x2ac2791e955dbd2e9787486e2a4a9ba669d27cb1b642ade54a1221a5ccd53b64,0x037de760dbd500210ed5c68706a16171ec415563c6136e52d6a9930a5f53e32a
1329,cancun,0x50c4E75a512F2A14A7b304787Adf79C4531A5909,0xa450483209637d11f92238066a6b1f405ae093536f02dda3b90a36d36f180570,AllowanceHolder50c4e7:5981577,0xe0afa70daed24ec949499638683365cbe4cbf097a1c8417a730e4b497cfb4610,0x0be5794255d21df0f4a10a516428f8d06805779d69b1714297bebcc18971e0b4,0x50cFe7c1938dB66A1a6D2e86D36F39FBef3d5c4a,0x4c57cf418d2865efb93a3c31021f230798eaca0458d188fbb593e329718139ab,OpenRouter50cfe7:4030514,0x0e5ff42eb7810767de756c833a042818f95052b885634a3dc3adb679a4652f48,0xd1dbc2c8ca87939cadf58e4eb91832cbe44bd5d12e3a0a0d56c76928a818e26b,0x8A774c1B73998A54ff09341f3cfF8A0010BbA7f1,0xeb8d08957ffb6da6c84ab1f89e95f4e08331fa81834e21d00754af20ec74d453,BungeeReceiver,0x1e4cf28950cc422f6b2112db77b8c0b0025c176291f984166889b8157de9dfe6,0x3e3fdfa261d7f00f53c22b4ba051f0da1903402669591bcef63d51ebe3085108,0xC914815120FA5A7e05748398C9fDf1d1b2729008,0x7c3bbaa3e26afa737955bd8665389dae8745dd537430122c9545abb09f85e34b,CalldataExecutor,0x2ac2791e955dbd2e9787486e2a4a9ba669d27cb1b642ade54a1221a5ccd53b64,0x037de760dbd500210ed5c68706a16171ec415563c6136e52d6a9930a5f53e32a
1776,cancun,0x50c4E75a512F2A14A7b304787Adf79C4531A5909,0xa450483209637d11f92238066a6b1f405ae093536f02dda3b90a36d36f180570,AllowanceHolder50c4e7:5981577,0xe0afa70daed24ec949499638683365cbe4cbf097a1c8417a730e4b497cfb4610,0x0be5794255d21df0f4a10a516428f8d06805779d69b1714297bebcc18971e0b4,0x50cFe7c1938dB66A1a6D2e86D36F39FBef3d5c4a,0x4c57cf418d2865efb93a3c31021f230798eaca0458d188fbb593e329718139ab,OpenRouter50cfe7:4030514,0x0e5ff42eb7810767de756c833a042818f95052b885634a3dc3adb679a4652f48,0xd1dbc2c8ca87939cadf58e4eb91832cbe44bd5d12e3a0a0d56c76928a818e26b,0x8A774c1B73998A54ff09341f3cfF8A0010BbA7f1,0xeb8d08957ffb6da6c84ab1f89e95f4e08331fa81834e21d00754af20ec74d453,BungeeReceiver,0x8c61bf68799b5897057a153c134492e43faa90a4caa0d9ce5d1016e4dec6ae5e,0x3e3fdfa261d7f00f53c22b4ba051f0da1903402669591bcef63d51ebe3085108,0xC914815120FA5A7e05748398C9fDf1d1b2729008,0x7c3bbaa3e26afa737955bd8665389dae8745dd537430122c9545abb09f85e34b,CalldataExecutor,0x2ac2791e955dbd2e9787486e2a4a9ba669d27cb1b642ade54a1221a5ccd53b64,0x037de760dbd500210ed5c68706a16171ec415563c6136e52d6a9930a5f53e32a
1868,cancun,0x50c4E75a512F2A14A7b304787Adf79C4531A5909,0xa450483209637d11f92238066a6b1f405ae093536f02dda3b90a36d36f180570,AllowanceHolder50c4e7:5981577,0xe0afa70daed24ec949499638683365cbe4cbf097a1c8417a730e4b497cfb4610,0x0be5794255d21df0f4a10a516428f8d06805779d69b1714297bebcc18971e0b4,0x50cFe7c1938dB66A1a6D2e86D36F39FBef3d5c4a,0x4c57cf418d2865efb93a3c31021f230798eaca0458d188fbb593e329718139ab,OpenRouter50cfe7:4030514,0x0e5ff42eb7810767de756c833a042818f95052b885634a3dc3adb679a4652f48,0xd1dbc2c8ca87939cadf58e4eb91832cbe44bd5d12e3a0a0d56c76928a818e26b,0x8A774c1B73998A54ff09341f3cfF8A0010BbA7f1,0xeb8d08957ffb6da6c84ab1f89e95f4e08331fa81834e21d00754af20ec74d453,BungeeReceiver,0x1e4cf28950cc422f6b2112db77b8c0b0025c176291f984166889b8157de9dfe6,0x3e3fdfa261d7f00f53c22b4ba051f0da1903402669591bcef63d51ebe3085108,0xC914815120FA5A7e05748398C9fDf1d1b2729008,0x7c3bbaa3e26afa737955bd8665389dae8745dd537430122c9545abb09f85e34b,CalldataExecutor,0x2ac2791e955dbd2e9787486e2a4a9ba669d27cb1b642ade54a1221a5ccd53b64,0x037de760dbd500210ed5c68706a16171ec415563c6136e52d6a9930a5f53e32a
4153,cancun,0x50c4E75a512F2A14A7b304787Adf79C4531A5909,0xa450483209637d11f92238066a6b1f405ae093536f02dda3b90a36d36f180570,AllowanceHolder50c4e7:5981577,0x7b4c1230f4398f130d0763a180f21f0dbcae086cbd4a52746c4374a8d5620165,0x1919e6d868d2cc2e7de33d97a656149d47f37b87d0eea3f07a6a404663746d4f,0x50cFe7c1938dB66A1a6D2e86D36F39FBef3d5c4a,0x4c57cf418d2865efb93a3c31021f230798eaca0458d188fbb593e329718139ab,OpenRouter50cfe7:4030514,0x0e5ff42eb7810767de756c833a042818f95052b885634a3dc3adb679a4652f48,0xd1dbc2c8ca87939cadf58e4eb91832cbe44bd5d12e3a0a0d56c76928a818e26b,0x8A774c1B73998A54ff09341f3cfF8A0010BbA7f1,0xeb8d08957ffb6da6c84ab1f89e95f4e08331fa81834e21d00754af20ec74d453,BungeeReceiver,0x8c61bf68799b5897057a153c134492e43faa90a4caa0d9ce5d1016e4dec6ae5e,0x3e3fdfa261d7f00f53c22b4ba051f0da1903402669591bcef63d51ebe3085108,0xC914815120FA5A7e05748398C9fDf1d1b2729008,0x7c3bbaa3e26afa737955bd8665389dae8745dd537430122c9545abb09f85e34b,CalldataExecutor,0x2ac2791e955dbd2e9787486e2a4a9ba669d27cb1b642ade54a1221a5ccd53b64,0x037de760dbd500210ed5c68706a16171ec415563c6136e52d6a9930a5f53e32a
4217,cancun,0x50c4E75a512F2A14A7b304787Adf79C4531A5909,0xa450483209637d11f92238066a6b1f405ae093536f02dda3b90a36d36f180570,AllowanceHolder50c4e7:5981577,0xe0afa70daed24ec949499638683365cbe4cbf097a1c8417a730e4b497cfb4610,0x0be5794255d21df0f4a10a516428f8d06805779d69b1714297bebcc18971e0b4,,,,,,,,,,,,,,,
Expand Down
3 changes: 3 additions & 0 deletions deployments/prod/addresses/injective.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"CctpClaimExecutor": "0x424a31a57f7c63918ecaa2fac38016a8af5a6ec2"
}
14 changes: 14 additions & 0 deletions hardhat.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -181,6 +181,11 @@ const config: HardhatUserConfig = {
chainId: 5042,
accounts,
},
injective: {
url: process.env.INJECTIVE_RPC ?? 'https://sentry.evm-rpc.injective.network',
chainId: 1776,
accounts,
},
plasma: {
url: process.env.PLASMA_RPC ?? 'https://rpc.plasma.to',
chainId: 9745,
Expand Down Expand Up @@ -274,6 +279,7 @@ const config: HardhatUserConfig = {
megaeth: explorerApiKey(process.env.MEGAETH_ETHERSCAN_KEY),
rise: process.env.RISE_ETHERSCAN_KEY ?? 'blockscout',
robinhood: explorerApiKey(process.env.ROBINHOOD_ETHERSCAN_KEY),
injective: process.env.INJECTIVE_ETHERSCAN_KEY ?? 'blockscout',
plume: explorerApiKey(process.env.PLUME_ETHERSCAN_KEY),
ethereal: explorerApiKey(process.env.ETHEREAL_ETHERSCAN_KEY),
katana: explorerApiKey(process.env.KATANA_ETHERSCAN_KEY),
Expand Down Expand Up @@ -475,6 +481,14 @@ const config: HardhatUserConfig = {
browserURL: 'https://robinhoodchain.blockscout.com',
},
},
{
network: 'injective',
chainId: 1776,
urls: {
apiURL: 'https://blockscout.injective.network/api',
browserURL: 'https://blockscout.injective.network',
},
},
{
network: 'plume',
chainId: 98866,
Expand Down
5 changes: 5 additions & 0 deletions scripts/deploy/cctpClaimExecutorConfig.ts
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,11 @@ export const CCTP_CLAIM_EXECUTOR_CHAIN_CONFIG: Record<number, CctpClaimExecutorC
messageTransmitter: CCTP_MESSAGE_TRANSMITTER,
usdcAddress: '0x3600000000000000000000000000000000000000',
},
[CHAIN_IDS.INJECTIVE]: {
chainId: CHAIN_IDS.INJECTIVE,
messageTransmitter: CCTP_MESSAGE_TRANSMITTER,
usdcAddress: '0xa00C59fF5a080D2b954d0c75e46E22a0c371235a',
},
};

export const CCTP_CLAIM_EXECUTOR_CHAIN_IDS = Object.keys(CCTP_CLAIM_EXECUTOR_CHAIN_CONFIG).map(
Expand Down
2 changes: 2 additions & 0 deletions scripts/deploy/networks.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ export const RECEIVER_DEPLOY_NETWORKS: readonly ReceiverDeployNetwork[] = [
{ name: 'scroll', chainId: CHAIN_IDS.SCROLL, rpcEnvKey: 'SCROLL_RPC', rpcFallback: 'https://1rpc.io/scroll' },
{ name: 'hyperEvm', chainId: CHAIN_IDS.HYPEREVM, rpcEnvKey: 'HYPEREVM_RPC', rpcFallback: 'https://rpc.hyperliquid.xyz/evm' },
{ name: 'arc', chainId: CHAIN_IDS.ARC, rpcEnvKey: 'ARC_RPC', rpcFallback: '' },
{ name: 'injective', chainId: CHAIN_IDS.INJECTIVE, rpcEnvKey: 'INJECTIVE_RPC', rpcFallback: 'https://sentry.evm-rpc.injective.network' },
{ name: 'plasma', chainId: CHAIN_IDS.PLASMA, rpcEnvKey: 'PLASMA_RPC', rpcFallback: 'https://rpc.plasma.to' },
{ name: 'monad', chainId: CHAIN_IDS.MONAD, rpcEnvKey: 'MONAD_RPC', rpcFallback: 'https://rpc.monad.xyz' },
{ name: 'linea', chainId: CHAIN_IDS.LINEA, rpcEnvKey: 'LINEA_RPC', rpcFallback: 'https://rpc.linea.build' },
Expand Down Expand Up @@ -69,6 +70,7 @@ const RPC_ENV_ALIASES: Partial<Record<string, readonly string[]>> = {
SEI_RPC: ['SEI_RPC_URL'],
HYPEREVM_RPC: ['HYPEREVM_RPC_URL'],
ARC_RPC: ['ARC_RPC_URL'],
INJECTIVE_RPC: ['INJECTIVE_RPC_URL'],
PLASMA_RPC: ['PLASMA_RPC_URL'],
MONAD_RPC: ['MONAD_RPC_URL'],
MEGAETH_RPC: ['MEGAETH_RPC_URL'],
Expand Down
2 changes: 2 additions & 0 deletions scripts/deploy/openRouterBuild.ts
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ export const OPENROUTER_NETWORK_CHAIN_IDS: Record<string, number> = {
scroll: CHAIN_IDS.SCROLL,
hyperEvm: CHAIN_IDS.HYPEREVM,
arc: CHAIN_IDS.ARC,
injective: CHAIN_IDS.INJECTIVE,
plasma: CHAIN_IDS.PLASMA,
tempo: CHAIN_IDS.TEMPO,
rise: CHAIN_IDS.RISE,
Expand Down Expand Up @@ -76,6 +77,7 @@ export const OPENROUTER_DEPLOY_NETWORKS = [
'scroll',
'hyperEvm',
'arc',
'injective',
'plasma',
'monad',
'linea',
Expand Down
1 change: 1 addition & 0 deletions scripts/deploy/verifyAllowanceHolderBatch.ts
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ const EXPLORERS_BY_CHAIN_ID = new Map<number, ExplorerConfig>([
[4326, { verifier: 'custom', chainArg: '1', verifierUrl: 'https://api.etherscan.io/v2/api?chainid=4326' }],
[4663, { verifier: 'custom', chainArg: '4663', verifierUrl: 'https://robinhoodchain.blockscout.com/api' }],
[5042, { verifier: 'sourcify', chainArg: '5042' }],
[1776, { verifier: 'custom', chainArg: '1776', verifierUrl: 'https://blockscout.injective.network/api' }],
[9745, { verifier: 'custom', chainArg: '1', verifierUrl: 'https://api.etherscan.io/v2/api?chainid=9745' }],
[98866, { verifier: 'sourcify', chainArg: '98866' }],
[4217, { verifier: 'sourcify', chainArg: '4217' }],
Expand Down
1 change: 1 addition & 0 deletions scripts/deploy/verifyCctpClaimExecutorBatch.ts
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ const EXPLORERS_BY_CHAIN_ID = new Map<number, ExplorerConfig>([
[57073, { verifier: 'custom', chainArg: '57073', verifierUrl: 'https://explorer.inkonchain.com/api' }],
[59144, { verifier: 'etherscan', chainArg: '59144' }],
[5042, { verifier: 'sourcify', chainArg: '5042' }],
[1776, { verifier: 'custom', chainArg: '1776', verifierUrl: 'https://blockscout.injective.network/api' }],
]);

function isAlreadyVerified(output: string): boolean {
Expand Down
3 changes: 3 additions & 0 deletions scripts/e2e/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ export const CHAIN_IDS = {
HYPEREVM: 999,
/** Arc mainnet. */
ARC: 5042,
/** Injective EVM mainnet. */
INJECTIVE: 1776,
/** Tempo mainnet — AllowanceHolder only; OpenRouter not deployed (deposit-only chain). */
TEMPO: 4217,
/** RISE mainnet. */
Expand Down Expand Up @@ -161,6 +163,7 @@ export const OPEN_ROUTER_CHAIN_IDS: readonly number[] = [
CHAIN_IDS.SCROLL,
CHAIN_IDS.HYPEREVM,
CHAIN_IDS.ARC,
CHAIN_IDS.INJECTIVE,
CHAIN_IDS.PLASMA,
CHAIN_IDS.MONAD,
CHAIN_IDS.LINEA,
Expand Down
Loading