From 024c29d67db4d52332dcb16afa3cad15ca74bfec Mon Sep 17 00:00:00 2001 From: Julian <52217955+julianmerlo95@users.noreply.github.com> Date: Thu, 15 Feb 2024 15:33:31 -0300 Subject: [PATCH] [Blockchain Watcher] (PORTICO) Add portico in mainnet (#1127) * Add portico in mainnet * Improve contract mapper --------- Co-authored-by: julian merlo --- .../domain/actions/evm/GetEvmTransactions.ts | 4 +- .../mappers/contractsMapperConfig.json | 40 +++++++--- .../workers/target-events.yaml | 80 +++++++++++++------ 3 files changed, 88 insertions(+), 36 deletions(-) diff --git a/blockchain-watcher/src/domain/actions/evm/GetEvmTransactions.ts b/blockchain-watcher/src/domain/actions/evm/GetEvmTransactions.ts index 21de2e43..17eb35e4 100644 --- a/blockchain-watcher/src/domain/actions/evm/GetEvmTransactions.ts +++ b/blockchain-watcher/src/domain/actions/evm/GetEvmTransactions.ts @@ -37,8 +37,8 @@ export class GetEvmTransactions { // Only process transactions to the contract address configured const transactionsByAddressConfigured = transactions.filter( (transaction) => - opts.addresses?.includes(String(transaction.to).toLowerCase()) || - opts.addresses?.includes(String(transaction.from).toLowerCase()) + opts.addresses?.includes(String(transaction.from).toLowerCase()) || + opts.addresses?.includes(String(transaction.to).toLowerCase()) ); if (transactionsByAddressConfigured.length > 0) { diff --git a/blockchain-watcher/src/infrastructure/mappers/contractsMapperConfig.json b/blockchain-watcher/src/infrastructure/mappers/contractsMapperConfig.json index df9c6f32..143a7d60 100644 --- a/blockchain-watcher/src/infrastructure/mappers/contractsMapperConfig.json +++ b/blockchain-watcher/src/infrastructure/mappers/contractsMapperConfig.json @@ -76,8 +76,8 @@ ] }, { - "addresses": ["0xd8E1465908103eD5fd28e381920575fb09beb264"], - "type": "Swap", + "addresses": ["0x48b6101128c0ed1e208b7c910e60542a2ee6f476"], + "type": "Portico", "methods": [ { "methodId": "0x3d528f35", @@ -200,8 +200,8 @@ ] }, { - "addresses": ["0xf6C5FD2C8Ecba25420859f61Be0331e68316Ba01"], - "type": "Swap", + "addresses": ["0x227babe533fa9a1085f5261210e0b7137e44437b"], + "type": "Portico", "methods": [ { "methodId": "0x3d528f35", @@ -268,6 +268,16 @@ "method": "MethodCompleteTransferWithRelay" } ] + }, + { + "addresses": ["0x05498574bd0fa99eecb01e1241661e7ee58f8a85"], + "type": "Portico", + "methods": [ + { + "methodId": "0x3d528f35", + "method": "MethodReceiveMessageAndSwap" + } + ] } ] }, @@ -371,6 +381,16 @@ "method": "MethodReceiveMessageCCTP" } ] + }, + { + "addresses": ["0xe565e118e75304dd3cf83dff409c90034b7ea18a"], + "type": "Portico", + "methods": [ + { + "methodId": "0x3d528f35", + "method": "MethodReceiveMessageAndSwap" + } + ] } ] }, @@ -533,8 +553,8 @@ ] }, { - "addresses": ["0xf8497FE5B0C5373778BFa0a001d476A21e01f09b"], - "type": "Swap", + "addresses": ["0x48fa7528bfd6164ddf09df0ed22451cf59c84130"], + "type": "Portico", "methods": [ { "methodId": "0x3d528f35", @@ -647,8 +667,8 @@ ] }, { - "addresses": ["0xcF205Fa51D33280D9B70321Ae6a3686FB2c178b2"], - "type": "Swap", + "addresses": ["0x9ae506cddd27dee1275fd1fe6627e5dc65257061"], + "type": "Portico", "methods": [ { "methodId": "0x3d528f35", @@ -748,8 +768,8 @@ ] }, { - "addresses": ["0x9816d7C448f79CdD4aF18c4Ae1726A14299E8C75"], - "type": "Swap", + "addresses": ["0x610d4dfac3ec32e0be98d18ddb280dacd76a1889"], + "type": "Portico", "methods": [ { "methodId": "0x3d528f35", diff --git a/deploy/blockchain-watcher/workers/target-events.yaml b/deploy/blockchain-watcher/workers/target-events.yaml index 27d009cf..5d50f11a 100644 --- a/deploy/blockchain-watcher/workers/target-events.yaml +++ b/deploy/blockchain-watcher/workers/target-events.yaml @@ -431,10 +431,10 @@ data: "blockBatchSize": 100, "commitment": "latest", "interval": 5000, - "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x2B4069517957735bE00ceE0fadAE88a26365528f", "0x1d68124e65fafc907325e3edbf8c4d84499daa8b"], + "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x2B4069517957735bE00ceE0fadAE88a26365528f", "0x1d68124e65fafc907325e3edbf8c4d84499daa8b", "0x9ae506cddd27dee1275fd1fe6627e5dc65257061"], "chain": "optimism", "chainId": 24, - "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xcaf280c8cfeba144da67230d9b009c8f868a75bac9a528fa0474be1ba317c169"] + "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xcaf280c8cfeba144da67230d9b009c8f868a75bac9a528fa0474be1ba317c169", "0xc2addcb063016f6dc1647fc8cd7206c3436cc4293c4acffe4feac288459ca7fc"] } }, "handlers": [ @@ -445,8 +445,8 @@ data: "config": { "abi": "", "filter": { - "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x2B4069517957735bE00ceE0fadAE88a26365528f", "0x1d68124e65fafc907325e3edbf8c4d84499daa8b"], - "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xcaf280c8cfeba144da67230d9b009c8f868a75bac9a528fa0474be1ba317c169"] + "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x2B4069517957735bE00ceE0fadAE88a26365528f", "0x1d68124e65fafc907325e3edbf8c4d84499daa8b", "0x9ae506cddd27dee1275fd1fe6627e5dc65257061"], + "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xcaf280c8cfeba144da67230d9b009c8f868a75bac9a528fa0474be1ba317c169", "0xc2addcb063016f6dc1647fc8cd7206c3436cc4293c4acffe4feac288459ca7fc"] }, "metricName": "process_vaa_event" } @@ -463,10 +463,10 @@ data: "blockBatchSize": 100, "commitment": "finalized", "interval": 5000, - "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x1682Ae6375C4E4A97e4B583BC394c861A46D8962"], + "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x1682Ae6375C4E4A97e4B583BC394c861A46D8962", "0x610d4dfac3ec32e0be98d18ddb280dacd76a1889"], "chain": "base", "chainId": 30, - "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"] + "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xc2addcb063016f6dc1647fc8cd7206c3436cc4293c4acffe4feac288459ca7fc"] } }, "handlers": [ @@ -477,8 +477,8 @@ data: "config": { "abi": "", "filter": { - "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x1682Ae6375C4E4A97e4B583BC394c861A46D8962"], - "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"] + "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x1682Ae6375C4E4A97e4B583BC394c861A46D8962", "0x610d4dfac3ec32e0be98d18ddb280dacd76a1889"], + "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xc2addcb063016f6dc1647fc8cd7206c3436cc4293c4acffe4feac288459ca7fc"] }, "metricName": "process_vaa_event" } @@ -495,10 +495,10 @@ data: "blockBatchSize": 100, "commitment": "latest", "interval": 5000, - "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x19330d10D9Cc8751218eaf51E8885D058642E08A", "0x0b2402144bb366a632d14b83f244d2e0e21bd39c"], + "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x19330d10D9Cc8751218eaf51E8885D058642E08A", "0x0b2402144bb366a632d14b83f244d2e0e21bd39c", "0x48fa7528bfd6164ddf09df0ed22451cf59c84130"], "chain": "arbitrum", "chainId": 23, - "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xcaf280c8cfeba144da67230d9b009c8f868a75bac9a528fa0474be1ba317c169"] + "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xcaf280c8cfeba144da67230d9b009c8f868a75bac9a528fa0474be1ba317c169", "0xc2addcb063016f6dc1647fc8cd7206c3436cc4293c4acffe4feac288459ca7fc"] } }, "handlers": [ @@ -509,8 +509,8 @@ data: "config": { "abi": "", "filter": { - "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x19330d10D9Cc8751218eaf51E8885D058642E08A", "0x0b2402144bb366a632d14b83f244d2e0e21bd39c"], - "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xcaf280c8cfeba144da67230d9b009c8f868a75bac9a528fa0474be1ba317c169"] + "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x19330d10D9Cc8751218eaf51E8885D058642E08A", "0x0b2402144bb366a632d14b83f244d2e0e21bd39c", "0x48fa7528bfd6164ddf09df0ed22451cf59c84130"], + "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xcaf280c8cfeba144da67230d9b009c8f868a75bac9a528fa0474be1ba317c169", "0xc2addcb063016f6dc1647fc8cd7206c3436cc4293c4acffe4feac288459ca7fc"] }, "metricName": "process_vaa_event" } @@ -527,10 +527,10 @@ data: "blockBatchSize": 100, "commitment": "latest", "interval": 5000, - "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x9daF8c91AEFAE50b9c0E69629D3F6Ca40cA3B3FE"], + "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x9daF8c91AEFAE50b9c0E69629D3F6Ca40cA3B3FE", "0x227babe533fa9a1085f5261210e0b7137e44437b"], "chain": "polygon", "chainId": 5, - "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"] + "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xc2addcb063016f6dc1647fc8cd7206c3436cc4293c4acffe4feac288459ca7fc"] } }, "handlers": [ @@ -541,8 +541,8 @@ data: "config": { "abi": "", "filter": { - "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x9daF8c91AEFAE50b9c0E69629D3F6Ca40cA3B3FE"], - "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"] + "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x9daF8c91AEFAE50b9c0E69629D3F6Ca40cA3B3FE", "0x227babe533fa9a1085f5261210e0b7137e44437b"], + "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xc2addcb063016f6dc1647fc8cd7206c3436cc4293c4acffe4feac288459ca7fc"] }, "metricName": "process_vaa_event" } @@ -559,10 +559,10 @@ data: "blockBatchSize": 100, "commitment": "finalized", "interval": 5000, - "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x6b25532e1060ce10cc3b0a99e5683b91bfde6982"], + "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x6b25532e1060ce10cc3b0a99e5683b91bfde6982", "0xe565e118e75304dd3cf83dff409c90034b7ea18a"], "chain": "avalanche", "chainId": 6, - "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"] + "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xc2addcb063016f6dc1647fc8cd7206c3436cc4293c4acffe4feac288459ca7fc"] } }, "handlers": [ @@ -573,8 +573,8 @@ data: "config": { "abi": "", "filter": { - "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x6b25532e1060ce10cc3b0a99e5683b91bfde6982"], - "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"] + "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x6b25532e1060ce10cc3b0a99e5683b91bfde6982", "0xe565e118e75304dd3cf83dff409c90034b7ea18a"], + "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xc2addcb063016f6dc1647fc8cd7206c3436cc4293c4acffe4feac288459ca7fc"] }, "metricName": "process_vaa_event" } @@ -591,10 +591,10 @@ data: "blockBatchSize": 100, "commitment": "latest", "interval": 15000, - "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0xbd3fa81b58ba92a82136038b25adec7066af3155"], + "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0xbd3fa81b58ba92a82136038b25adec7066af3155", "0x48b6101128c0ed1e208b7c910e60542a2ee6f476"], "chain": "ethereum", "chainId": 2, - "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"] + "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xc2addcb063016f6dc1647fc8cd7206c3436cc4293c4acffe4feac288459ca7fc"] } }, "handlers": [ @@ -605,8 +605,8 @@ data: "config": { "abi": "", "filter": { - "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0xbd3fa81b58ba92a82136038b25adec7066af3155"], - "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"] + "addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0xbd3fa81b58ba92a82136038b25adec7066af3155", "0x48b6101128c0ed1e208b7c910e60542a2ee6f476"], + "topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e", "0xc2addcb063016f6dc1647fc8cd7206c3436cc4293c4acffe4feac288459ca7fc"] }, "metricName": "process_vaa_event" } @@ -674,6 +674,38 @@ data: } } ] + }, + { + "id": "poll-redeemed-transactions-bsc", + "chain": "bsc", + "source": { + "action": "PollEvm", + "records": "GetEvmTransactions", + "config": { + "blockBatchSize": 100, + "commitment": "latest", + "interval": 5000, + "addresses": ["0x05498574bd0fa99eecb01e1241661e7ee58f8a85"], + "chain": "bsc", + "chainId": 4, + "topics": ["0xc2addcb063016f6dc1647fc8cd7206c3436cc4293c4acffe4feac288459ca7fc"] + } + }, + "handlers": [ + { + "action": "HandleEvmTransactions", + "target": "sns", + "mapper": "evmRedeemedTransactionFoundMapper", + "config": { + "abi": "", + "filter": { + "addresses": ["0x05498574bd0fa99eecb01e1241661e7ee58f8a85"], + "topics": ["0xc2addcb063016f6dc1647fc8cd7206c3436cc4293c4acffe4feac288459ca7fc"] + }, + "metricName": "process_vaa_event" + } + } + ] } ] ---