From 8b3fdb229841dc9f64a14caa3c82b6d7304ed9df Mon Sep 17 00:00:00 2001 From: 0xRob <83790096+0xRobin@users.noreply.github.com> Date: Fri, 24 Jan 2025 15:34:15 +0700 Subject: [PATCH 01/21] make trusted tokens source instead of ref (#7533) --- .../minute_inputs/prices_v2_coinpaprika_minute.sql | 2 +- .../prices_v2/minute_inputs/prices_v2_dex_minute_raw.sql | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dbt_subprojects/tokens/models/prices_v2/minute_inputs/prices_v2_coinpaprika_minute.sql b/dbt_subprojects/tokens/models/prices_v2/minute_inputs/prices_v2_coinpaprika_minute.sql index 4e2a1ae711f..51da3ec4883 100644 --- a/dbt_subprojects/tokens/models/prices_v2/minute_inputs/prices_v2_coinpaprika_minute.sql +++ b/dbt_subprojects/tokens/models/prices_v2/minute_inputs/prices_v2_coinpaprika_minute.sql @@ -21,7 +21,7 @@ select from {{ source('prices','usd_0003') }} as p -- todo: fix this source inner join - {{ ref('prices_trusted_tokens') }} as ptt + {{ source('prices','trusted_tokens') }} as ptt on p.token_id = ptt.token_id where 1=1 diff --git a/dbt_subprojects/tokens/models/prices_v2/minute_inputs/prices_v2_dex_minute_raw.sql b/dbt_subprojects/tokens/models/prices_v2/minute_inputs/prices_v2_dex_minute_raw.sql index f9466fbe0fb..accb4db03f7 100644 --- a/dbt_subprojects/tokens/models/prices_v2/minute_inputs/prices_v2_dex_minute_raw.sql +++ b/dbt_subprojects/tokens/models/prices_v2/minute_inputs/prices_v2_dex_minute_raw.sql @@ -18,10 +18,10 @@ WITH dex_trades_filter_and_unnest as ( d.amount_usd/d.token_bought_amount as price, d.amount_usd as volume -- in USD FROM {{ source('dex','trades') }} d - INNER JOIN {{ref('prices_trusted_tokens')}} t + INNER JOIN {{source('prices','trusted_tokens')}} t on t.blockchain = d.blockchain and t.contract_address = d.token_sold_address -- the token traded against is trusted - LEFT JOIN {{ref('prices_trusted_tokens')}} anti_t + LEFT JOIN {{source('prices','trusted_tokens')}} anti_t on anti_t.blockchain = d.blockchain and anti_t.contract_address = d.token_bought_address -- the subjected token is already in trusted WHERE d.amount_usd > 0 and token_bought_amount > 0 and token_bought_address is not null @@ -39,10 +39,10 @@ WITH dex_trades_filter_and_unnest as ( d.amount_usd/d.token_sold_amount as price, d.amount_usd as volume -- in USD FROM {{ source('dex','trades') }} d - INNER JOIN {{ref('prices_trusted_tokens')}} t + INNER JOIN {{source('prices','trusted_tokens')}} t on t.blockchain = d.blockchain and t.contract_address = d.token_bought_address -- the token traded against is trusted - LEFT JOIN {{ref('prices_trusted_tokens')}} anti_t + LEFT JOIN {{source('prices','trusted_tokens')}} anti_t on anti_t.blockchain = d.blockchain and anti_t.contract_address = d.token_sold_address -- the subjected token is already in trusted WHERE d.amount_usd > 0 and token_sold_amount > 0 and token_sold_address is not null From fddbb5d3d5b0cf8471e08743d41d3904657eeaab Mon Sep 17 00:00:00 2001 From: agaperste Date: Fri, 24 Jan 2025 17:01:10 -0500 Subject: [PATCH 02/21] adding uni v4 to dex.trades (#7543) * adding uni v4 to base dex.trades * oops typo * addressing PR comments * fix dbt run error * fix for dbt run * clean up params, fix optional column logic * cleanup taker param, move column alias * adding rest of the wave1 v4 deployment to dex.trades (fingers crossed dbt run works!) * workaround to bypass evt_tx_from being null for certain decoded tables * fix bnb crosschain --------- Co-authored-by: jeff-dude Co-authored-by: jeff-dude <102681548+jeff-dude@users.noreply.github.com> --- .../_project/uniswap_compatible_trades.sql | 82 +++++++++++++++++++ .../dex/models/trades/arbitrum/_schema.yml | 19 +++++ .../arbitrum/dex_arbitrum_base_trades.sql | 1 + .../uniswap_v4_arbitrum_base_trades.sql | 20 +++++ .../dex/models/trades/avalanche_c/_schema.yml | 19 +++++ .../dex_avalanche_c_base_trades.sql | 1 + .../uniswap_v4_avalanche_c_base_trades.sql | 20 +++++ .../dex/models/trades/base/_schema.yml | 19 +++++ .../trades/base/dex_base_base_trades.sql | 1 + .../platforms/uniswap_v4_base_base_trades.sql | 21 +++++ .../dex/models/trades/blast/_schema.yml | 19 +++++ .../trades/blast/dex_blast_base_trades.sql | 1 + .../uniswap_v4_blast_base_trades.sql | 21 +++++ .../dex/models/trades/bnb/_schema.yml | 19 +++++ .../models/trades/bnb/dex_bnb_base_trades.sql | 1 + .../platforms/uniswap_v4_bnb_base_trades.sql | 20 +++++ .../dex/models/trades/ethereum/_schema.yml | 19 +++++ .../ethereum/dex_ethereum_base_trades.sql | 1 + .../uniswap_v4_ethereum_base_trades.sql | 20 +++++ .../dex/models/trades/optimism/_schema.yml | 19 +++++ .../optimism/dex_optimism_base_trades.sql | 1 + .../uniswap_v4_optimism_base_trades.sql | 21 +++++ .../dex/models/trades/polygon/_schema.yml | 19 +++++ .../polygon/dex_polygon_base_trades.sql | 1 + .../uniswap_v4_polygon_base_trades.sql | 20 +++++ .../dex/models/trades/worldchain/_schema.yml | 21 ++++- .../worldchain/dex_worldchain_base_trades.sql | 1 + .../uniswap_v4_worldchain_base_trades.sql | 21 +++++ .../dex/models/trades/zora/_schema.yml | 21 ++++- .../trades/zora/dex_zora_base_trades.sql | 5 +- .../platforms/uniswap_v4_zora_base_trades.sql | 21 +++++ .../uniswap_arbitrum_base_trades_seed.csv | 2 + .../uniswap_avalanche_c_base_trades_seed.csv | 2 + .../trades/uniswap_base_base_trades_seed.csv | 4 + .../trades/uniswap_blast_base_trades_seed.csv | 1 + .../trades/uniswap_bnb_base_trades_seed.csv | 2 + .../uniswap_ethereum_base_trades_seed.csv | 2 + .../uniswap_optimism_base_trades_seed.csv | 2 + .../uniswap_polygon_base_trades_seed.csv | 2 + .../uniswap_worldchain_base_trades_seed.csv | 2 + .../_sector/dex/trades/arbitrum/_sources.yml | 4 + .../dex/trades/avalanche_c/_sources.yml | 4 + sources/_sector/dex/trades/base/_sources.yml | 4 + sources/_sector/dex/trades/blast/_sources.yml | 4 + sources/_sector/dex/trades/bnb/_sources.yml | 5 ++ .../_sector/dex/trades/ethereum/_sources.yml | 4 + .../_sector/dex/trades/optimism/_sources.yml | 4 + .../_sector/dex/trades/polygon/_sources.yml | 4 + .../dex/trades/worldchain/_sources.yml | 4 + sources/_sector/dex/trades/zora/_sources.yml | 4 + 50 files changed, 551 insertions(+), 4 deletions(-) create mode 100644 dbt_subprojects/dex/models/trades/arbitrum/platforms/uniswap_v4_arbitrum_base_trades.sql create mode 100644 dbt_subprojects/dex/models/trades/avalanche_c/platforms/uniswap_v4_avalanche_c_base_trades.sql create mode 100644 dbt_subprojects/dex/models/trades/base/platforms/uniswap_v4_base_base_trades.sql create mode 100644 dbt_subprojects/dex/models/trades/blast/platforms/uniswap_v4_blast_base_trades.sql create mode 100644 dbt_subprojects/dex/models/trades/bnb/platforms/uniswap_v4_bnb_base_trades.sql create mode 100644 dbt_subprojects/dex/models/trades/ethereum/platforms/uniswap_v4_ethereum_base_trades.sql create mode 100644 dbt_subprojects/dex/models/trades/optimism/platforms/uniswap_v4_optimism_base_trades.sql create mode 100644 dbt_subprojects/dex/models/trades/polygon/platforms/uniswap_v4_polygon_base_trades.sql create mode 100644 dbt_subprojects/dex/models/trades/worldchain/platforms/uniswap_v4_worldchain_base_trades.sql create mode 100644 dbt_subprojects/dex/models/trades/zora/platforms/uniswap_v4_zora_base_trades.sql diff --git a/dbt_subprojects/dex/macros/models/_project/uniswap_compatible_trades.sql b/dbt_subprojects/dex/macros/models/_project/uniswap_compatible_trades.sql index 9cf02fee495..c3a635672bd 100644 --- a/dbt_subprojects/dex/macros/models/_project/uniswap_compatible_trades.sql +++ b/dbt_subprojects/dex/macros/models/_project/uniswap_compatible_trades.sql @@ -118,4 +118,86 @@ SELECT , dexs.evt_index FROM dexs +{% endmacro %} + +{% macro uniswap_compatible_v4_trades( + blockchain = null + , project = 'uniswap' + , version = '4' + , PoolManager_evt_Swap = null + , PoolManager_evt_Initialize = null + , taker_column_name = null + , maker_column_name = null + , swap_optional_columns = ['fee'] + , initialize_optional_columns = ['hooks'] + , pair_column_name = 'id' + ) +%} +WITH dexs AS +( + SELECT + t.evt_block_number AS block_number + , t.evt_block_time AS block_time + , {% if taker_column_name -%} t.{{ taker_column_name }} {% else -%} cast(null as varbinary) {% endif -%} as taker + , {% if maker_column_name -%} t.{{ maker_column_name }} {% else -%} cast(null as varbinary) {% endif -%} as maker + -- in v4, when amount is negative, then user are selling the token (so things are done from the perspective of the user instead of the pool) + , CASE WHEN t.amount0 < INT256 '0' THEN abs(t.amount1) ELSE abs(t.amount0) END AS token_bought_amount_raw + , CASE WHEN t.amount0 < INT256 '0' THEN abs(t.amount0) ELSE abs(t.amount1) END AS token_sold_amount_raw + , CASE WHEN t.amount0 < INT256 '0' THEN f.currency1 ELSE f.currency0 END AS token_bought_address + , CASE WHEN t.amount0 < INT256 '0' THEN f.currency0 ELSE f.currency1 END AS token_sold_address + , t.contract_address as project_contract_address + , t.sender + , t.evt_tx_hash AS tx_hash + , t.evt_index + {%- if swap_optional_columns %} + {%- for optional_column in swap_optional_columns %} + , t.{{ optional_column }} + {%- endfor %} + {%- endif %} + {%- if initialize_optional_columns %} + {%- for optional_column in initialize_optional_columns %} + , f.{{ optional_column }} + {%- endfor %} + {%- endif %} + FROM + {{ PoolManager_evt_Swap }} t + INNER JOIN + {{ PoolManager_evt_Initialize }} f + ON f.{{ pair_column_name }} = t.id + {%- if is_incremental() %} + WHERE + {{ incremental_predicate('t.evt_block_time') }} + {%- endif %} +) + +SELECT + {% if blockchain -%} '{{ blockchain }}' {% else -%} 'Unassigned' {% endif -%} as blockchain + , '{{ project }}' AS project + , '{{ version }}' AS version + , CAST(date_trunc('month', dexs.block_time) AS date) AS block_month + , CAST(date_trunc('day', dexs.block_time) AS date) AS block_date + , dexs.block_time + , dexs.block_number + , CAST(dexs.token_bought_amount_raw AS UINT256) AS token_bought_amount_raw + , CAST(dexs.token_sold_amount_raw AS UINT256) AS token_sold_amount_raw + , dexs.token_bought_address + , dexs.token_sold_address + , dexs.sender as router + , dexs.taker + , dexs.maker + , dexs.project_contract_address + , dexs.tx_hash + , dexs.evt_index + {%- if swap_optional_columns %} + {%- for optional_column in swap_optional_columns %} + , dexs.{{ optional_column }} + {%- endfor %} + {%- endif %} + {%- if initialize_optional_columns %} + {%- for optional_column in initialize_optional_columns %} + , dexs.{{ optional_column }} + {%- endfor %} + {%- endif %} +FROM + dexs {% endmacro %} \ No newline at end of file diff --git a/dbt_subprojects/dex/models/trades/arbitrum/_schema.yml b/dbt_subprojects/dex/models/trades/arbitrum/_schema.yml index e5a94dc632d..9c8cc65063b 100644 --- a/dbt_subprojects/dex/models/trades/arbitrum/_schema.yml +++ b/dbt_subprojects/dex/models/trades/arbitrum/_schema.yml @@ -8,6 +8,25 @@ models: column_name: amount_usd max_value: 1000000000 + - name: uniswap_v4_arbitrum_base_trades + meta: + blockchain: arbitrum + sector: dex + project: uniswap + contributors: agaperste + config: + tags: [ 'arbitrum', 'dex', 'trades', 'uniswap', 'v4' ] + description: "uniswap arbitrum v4 base trades" + data_tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - tx_hash + - evt_index + - check_dex_base_trades_seed: + seed_file: ref('uniswap_arbitrum_base_trades_seed') + filter: + version: 4 + - name: uniswap_v3_arbitrum_base_trades meta: blockchain: arbitrum diff --git a/dbt_subprojects/dex/models/trades/arbitrum/dex_arbitrum_base_trades.sql b/dbt_subprojects/dex/models/trades/arbitrum/dex_arbitrum_base_trades.sql index c312c78bd4e..6e09d2f1f74 100644 --- a/dbt_subprojects/dex/models/trades/arbitrum/dex_arbitrum_base_trades.sql +++ b/dbt_subprojects/dex/models/trades/arbitrum/dex_arbitrum_base_trades.sql @@ -7,6 +7,7 @@ {% set base_models = [ ref('uniswap_v3_arbitrum_base_trades') + , ref('uniswap_v4_arbitrum_base_trades') , ref('camelot_v2_arbitrum_base_trades') , ref('camelot_v3_arbitrum_base_trades') , ref('airswap_arbitrum_base_trades') diff --git a/dbt_subprojects/dex/models/trades/arbitrum/platforms/uniswap_v4_arbitrum_base_trades.sql b/dbt_subprojects/dex/models/trades/arbitrum/platforms/uniswap_v4_arbitrum_base_trades.sql new file mode 100644 index 00000000000..6ee7dd9fc07 --- /dev/null +++ b/dbt_subprojects/dex/models/trades/arbitrum/platforms/uniswap_v4_arbitrum_base_trades.sql @@ -0,0 +1,20 @@ +{{ config( + schema = 'uniswap_v4_arbitrum' + , alias = 'base_trades' + , materialized = 'incremental' + , file_format = 'delta' + , incremental_strategy = 'merge' + , unique_key = ['tx_hash', 'evt_index'] + , incremental_predicates = [incremental_predicate('DBT_INTERNAL_DEST.block_time')] + ) +}} + +{{ + uniswap_compatible_v4_trades( + blockchain = 'arbitrum' + , project = 'uniswap' + , version = '4' + , PoolManager_evt_Swap = source('uniswap_v4_arbitrum', 'PoolManager_evt_Swap') + , PoolManager_evt_Initialize = source('uniswap_v4_arbitrum', 'PoolManager_evt_Initialize') + ) +}} \ No newline at end of file diff --git a/dbt_subprojects/dex/models/trades/avalanche_c/_schema.yml b/dbt_subprojects/dex/models/trades/avalanche_c/_schema.yml index a7ec316dc94..06f798852b5 100644 --- a/dbt_subprojects/dex/models/trades/avalanche_c/_schema.yml +++ b/dbt_subprojects/dex/models/trades/avalanche_c/_schema.yml @@ -8,6 +8,25 @@ models: column_name: amount_usd max_value: 1000000000 + - name: uniswap_v4_avalanche_c_base_trades + meta: + blockchain: avalanche_c + sector: dex + project: uniswap + contributors: agaperste + config: + tags: [ 'avalanche_c', 'dex', 'trades', 'uniswap', 'v4' ] + description: "uniswap avalanche_c v4 base trades" + data_tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - tx_hash + - evt_index + - check_dex_base_trades_seed: + seed_file: ref('uniswap_avalanche_c_base_trades_seed') + filter: + version: 4 + - name: uniswap_v3_avalanche_c_base_trades meta: blockchain: avalanche_c diff --git a/dbt_subprojects/dex/models/trades/avalanche_c/dex_avalanche_c_base_trades.sql b/dbt_subprojects/dex/models/trades/avalanche_c/dex_avalanche_c_base_trades.sql index f9cac620cec..8362b744e82 100644 --- a/dbt_subprojects/dex/models/trades/avalanche_c/dex_avalanche_c_base_trades.sql +++ b/dbt_subprojects/dex/models/trades/avalanche_c/dex_avalanche_c_base_trades.sql @@ -7,6 +7,7 @@ {% set base_models = [ ref('uniswap_v3_avalanche_c_base_trades') + , ref('uniswap_v4_avalanche_c_base_trades') , ref('airswap_avalanche_c_base_trades') , ref('sushiswap_v1_avalanche_c_base_trades') , ref('sushiswap_v2_avalanche_c_base_trades') diff --git a/dbt_subprojects/dex/models/trades/avalanche_c/platforms/uniswap_v4_avalanche_c_base_trades.sql b/dbt_subprojects/dex/models/trades/avalanche_c/platforms/uniswap_v4_avalanche_c_base_trades.sql new file mode 100644 index 00000000000..9bed45eed9d --- /dev/null +++ b/dbt_subprojects/dex/models/trades/avalanche_c/platforms/uniswap_v4_avalanche_c_base_trades.sql @@ -0,0 +1,20 @@ +{{ config( + schema = 'uniswap_v4_avalanche_c' + , alias = 'base_trades' + , materialized = 'incremental' + , file_format = 'delta' + , incremental_strategy = 'merge' + , unique_key = ['tx_hash', 'evt_index'] + , incremental_predicates = [incremental_predicate('DBT_INTERNAL_DEST.block_time')] + ) +}} + +{{ + uniswap_compatible_v4_trades( + blockchain = 'avalanche_c' + , project = 'uniswap' + , version = '4' + , PoolManager_evt_Swap = source('uniswap_v4_avalanche_c', 'PoolManager_evt_Swap') + , PoolManager_evt_Initialize = source('uniswap_v4_avalanche_c', 'PoolManager_evt_Initialize') + ) +}} \ No newline at end of file diff --git a/dbt_subprojects/dex/models/trades/base/_schema.yml b/dbt_subprojects/dex/models/trades/base/_schema.yml index ec236a1577b..d79caf871dd 100644 --- a/dbt_subprojects/dex/models/trades/base/_schema.yml +++ b/dbt_subprojects/dex/models/trades/base/_schema.yml @@ -8,6 +8,25 @@ models: column_name: amount_usd max_value: 1000000000 + - name: uniswap_v4_base_base_trades + meta: + blockchain: base + sector: dex + project: uniswap + contributors: agaperste + config: + tags: [ 'base', 'dex', 'trades', 'uniswap', 'v4' ] + description: "uniswap base v4 base trades" + data_tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - tx_hash + - evt_index + - check_dex_base_trades_seed: + seed_file: ref('uniswap_base_base_trades_seed') + filter: + version: 4 + - name: uniswap_v3_base_base_trades meta: blockchain: base diff --git a/dbt_subprojects/dex/models/trades/base/dex_base_base_trades.sql b/dbt_subprojects/dex/models/trades/base/dex_base_base_trades.sql index 799a0ccac65..0a96e10f358 100644 --- a/dbt_subprojects/dex/models/trades/base/dex_base_base_trades.sql +++ b/dbt_subprojects/dex/models/trades/base/dex_base_base_trades.sql @@ -7,6 +7,7 @@ {% set base_models = [ ref('uniswap_v3_base_base_trades') + , ref('uniswap_v4_base_base_trades') , ref('sushiswap_v1_base_base_trades') , ref('sushiswap_v2_base_base_trades') , ref('stablebase_base_base_trades') diff --git a/dbt_subprojects/dex/models/trades/base/platforms/uniswap_v4_base_base_trades.sql b/dbt_subprojects/dex/models/trades/base/platforms/uniswap_v4_base_base_trades.sql new file mode 100644 index 00000000000..5913cc1c1ad --- /dev/null +++ b/dbt_subprojects/dex/models/trades/base/platforms/uniswap_v4_base_base_trades.sql @@ -0,0 +1,21 @@ +{{ config( + schema = 'uniswap_v4_base' + , alias = 'base_trades' + , materialized = 'incremental' + , file_format = 'delta' + , incremental_strategy = 'merge' + , unique_key = ['tx_hash', 'evt_index'] + , incremental_predicates = [incremental_predicate('DBT_INTERNAL_DEST.block_time')] + ) +}} + +{{ + uniswap_compatible_v4_trades( + blockchain = 'base' + , project = 'uniswap' + , version = '4' + , PoolManager_evt_Swap = source('uniswap_v4_base', 'PoolManager_evt_Swap') + , PoolManager_evt_Initialize = source('uniswap_v4_base', 'PoolManager_evt_Initialize') + , taker_column_name = 'evt_tx_from' + ) +}} \ No newline at end of file diff --git a/dbt_subprojects/dex/models/trades/blast/_schema.yml b/dbt_subprojects/dex/models/trades/blast/_schema.yml index b68f456760d..28a18cebe31 100644 --- a/dbt_subprojects/dex/models/trades/blast/_schema.yml +++ b/dbt_subprojects/dex/models/trades/blast/_schema.yml @@ -8,6 +8,25 @@ models: column_name: amount_usd max_value: 1000000000 + - name: uniswap_v4_blast_base_trades + meta: + blockchain: blast + sector: dex + project: uniswap + contributors: agaperste + config: + tags: [ 'blast', 'dex', 'trades', 'uniswap', 'v4' ] + description: "uniswap blast v4 base trades" + data_tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - tx_hash + - evt_index + - check_dex_base_trades_seed: + seed_file: ref('uniswap_blast_base_trades_seed') + filter: + version: 4 + - name: uniswap_v3_blast_base_trades meta: blockchain: blast diff --git a/dbt_subprojects/dex/models/trades/blast/dex_blast_base_trades.sql b/dbt_subprojects/dex/models/trades/blast/dex_blast_base_trades.sql index 8a41bfa1d6e..636ec489dc8 100644 --- a/dbt_subprojects/dex/models/trades/blast/dex_blast_base_trades.sql +++ b/dbt_subprojects/dex/models/trades/blast/dex_blast_base_trades.sql @@ -7,6 +7,7 @@ {% set base_models = [ ref('uniswap_v3_blast_base_trades') + , ref('uniswap_v4_blast_base_trades') , ref('uniswap_v2_blast_base_trades') , ref('thruster_blast_base_trades') , ref('blasterswap_blast_base_trades') diff --git a/dbt_subprojects/dex/models/trades/blast/platforms/uniswap_v4_blast_base_trades.sql b/dbt_subprojects/dex/models/trades/blast/platforms/uniswap_v4_blast_base_trades.sql new file mode 100644 index 00000000000..df9397f63d6 --- /dev/null +++ b/dbt_subprojects/dex/models/trades/blast/platforms/uniswap_v4_blast_base_trades.sql @@ -0,0 +1,21 @@ +{{ config( + schema = 'uniswap_v4_blast' + , alias = 'base_trades' + , materialized = 'incremental' + , file_format = 'delta' + , incremental_strategy = 'merge' + , unique_key = ['tx_hash', 'evt_index'] + , incremental_predicates = [incremental_predicate('DBT_INTERNAL_DEST.block_time')] + ) +}} + +{{ + uniswap_compatible_v4_trades( + blockchain = 'blast' + , project = 'uniswap' + , version = '4' + , PoolManager_evt_Swap = source('uniswap_v4_blast', 'PoolManager_evt_Swap') + , PoolManager_evt_Initialize = source('uniswap_v4_blast', 'PoolManager_evt_Initialize') + , taker_column_name = 'evt_tx_from' + ) +}} \ No newline at end of file diff --git a/dbt_subprojects/dex/models/trades/bnb/_schema.yml b/dbt_subprojects/dex/models/trades/bnb/_schema.yml index 789c78a52bb..586985f4735 100644 --- a/dbt_subprojects/dex/models/trades/bnb/_schema.yml +++ b/dbt_subprojects/dex/models/trades/bnb/_schema.yml @@ -8,6 +8,25 @@ models: column_name: amount_usd max_value: 1000000000 + - name: uniswap_v4_bnb_base_trades + meta: + blockchain: bnb + sector: dex + project: uniswap + contributors: agaperste + config: + tags: [ 'bnb', 'dex', 'trades', 'uniswap', 'v4' ] + description: "uniswap bnb v4 base trades" + data_tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - tx_hash + - evt_index + - check_dex_base_trades_seed: + seed_file: ref('uniswap_bnb_base_trades_seed') + filter: + version: 4 + - name: uniswap_v3_bnb_base_trades meta: blockchain: bnb diff --git a/dbt_subprojects/dex/models/trades/bnb/dex_bnb_base_trades.sql b/dbt_subprojects/dex/models/trades/bnb/dex_bnb_base_trades.sql index 59576c37b42..7c31307980c 100644 --- a/dbt_subprojects/dex/models/trades/bnb/dex_bnb_base_trades.sql +++ b/dbt_subprojects/dex/models/trades/bnb/dex_bnb_base_trades.sql @@ -9,6 +9,7 @@ -- (blockchain, project, project_version, model) {% set base_models = [ ref('uniswap_v3_bnb_base_trades') + , ref('uniswap_v4_bnb_base_trades') , ref('apeswap_bnb_base_trades') , ref('airswap_bnb_base_trades') , ref('sushiswap_v1_bnb_base_trades') diff --git a/dbt_subprojects/dex/models/trades/bnb/platforms/uniswap_v4_bnb_base_trades.sql b/dbt_subprojects/dex/models/trades/bnb/platforms/uniswap_v4_bnb_base_trades.sql new file mode 100644 index 00000000000..3c964c1dc1c --- /dev/null +++ b/dbt_subprojects/dex/models/trades/bnb/platforms/uniswap_v4_bnb_base_trades.sql @@ -0,0 +1,20 @@ +{{ config( + schema = 'uniswap_v4_bnb' + , alias = 'base_trades' + , materialized = 'incremental' + , file_format = 'delta' + , incremental_strategy = 'merge' + , unique_key = ['tx_hash', 'evt_index'] + , incremental_predicates = [incremental_predicate('DBT_INTERNAL_DEST.block_time')] + ) +}} + +{{ + uniswap_compatible_v4_trades( + blockchain = 'bnb' + , project = 'uniswap' + , version = '4' + , PoolManager_evt_Swap = source('uniswap_v4_bnb', 'PoolManager_evt_Swap') + , PoolManager_evt_Initialize = source('uniswap_v4_bnb', 'PoolManager_evt_Initialize') + ) +}} \ No newline at end of file diff --git a/dbt_subprojects/dex/models/trades/ethereum/_schema.yml b/dbt_subprojects/dex/models/trades/ethereum/_schema.yml index bfa5301ef58..a67f4731ab5 100644 --- a/dbt_subprojects/dex/models/trades/ethereum/_schema.yml +++ b/dbt_subprojects/dex/models/trades/ethereum/_schema.yml @@ -65,6 +65,25 @@ models: filter: version: 3 + - name: uniswap_v4_ethereum_base_trades + meta: + blockchain: ethereum + sector: dex + project: uniswap + contributors: agaperste + config: + tags: [ 'ethereum', 'dex', 'trades', 'uniswap', 'v4' ] + description: "uniswap ethereum v4 base trades" + data_tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - tx_hash + - evt_index + - check_dex_base_trades_seed: + seed_file: ref('uniswap_ethereum_base_trades_seed') + filter: + version: 4 + - name: defiswap_ethereum_base_trades meta: blockchain: ethereum diff --git a/dbt_subprojects/dex/models/trades/ethereum/dex_ethereum_base_trades.sql b/dbt_subprojects/dex/models/trades/ethereum/dex_ethereum_base_trades.sql index 7dc42461e0d..333089de993 100644 --- a/dbt_subprojects/dex/models/trades/ethereum/dex_ethereum_base_trades.sql +++ b/dbt_subprojects/dex/models/trades/ethereum/dex_ethereum_base_trades.sql @@ -10,6 +10,7 @@ , ref('uniswap_v1_ethereum_base_trades') , ref('uniswap_v2_ethereum_base_trades') , ref('uniswap_v3_ethereum_base_trades') + , ref('uniswap_v4_ethereum_base_trades') , ref('apeswap_ethereum_base_trades') , ref('carbon_defi_ethereum_base_trades') , ref('airswap_ethereum_base_trades') diff --git a/dbt_subprojects/dex/models/trades/ethereum/platforms/uniswap_v4_ethereum_base_trades.sql b/dbt_subprojects/dex/models/trades/ethereum/platforms/uniswap_v4_ethereum_base_trades.sql new file mode 100644 index 00000000000..7aa1b1e6137 --- /dev/null +++ b/dbt_subprojects/dex/models/trades/ethereum/platforms/uniswap_v4_ethereum_base_trades.sql @@ -0,0 +1,20 @@ +{{ config( + schema = 'uniswap_v4_ethereum' + , alias = 'base_trades' + , materialized = 'incremental' + , file_format = 'delta' + , incremental_strategy = 'merge' + , unique_key = ['tx_hash', 'evt_index'] + , incremental_predicates = [incremental_predicate('DBT_INTERNAL_DEST.block_time')] + ) +}} + +{{ + uniswap_compatible_v4_trades( + blockchain = 'ethereum' + , project = 'uniswap' + , version = '4' + , PoolManager_evt_Swap = source('uniswap_v4_ethereum', 'PoolManager_evt_Swap') + , PoolManager_evt_Initialize = source('uniswap_v4_ethereum', 'PoolManager_evt_Initialize') + ) +}} \ No newline at end of file diff --git a/dbt_subprojects/dex/models/trades/optimism/_schema.yml b/dbt_subprojects/dex/models/trades/optimism/_schema.yml index fc4a47e0fab..f7ea645d2a5 100644 --- a/dbt_subprojects/dex/models/trades/optimism/_schema.yml +++ b/dbt_subprojects/dex/models/trades/optimism/_schema.yml @@ -8,6 +8,25 @@ models: column_name: amount_usd max_value: 1000000000 + - name: uniswap_v4_optimism_base_trades + meta: + blockchain: optimism + sector: dex + project: uniswap + contributors: agaperste + config: + tags: [ 'optimism', 'dex', 'trades', 'uniswap', 'v4' ] + description: "uniswap optimism v4 base trades" + data_tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - tx_hash + - evt_index + - check_dex_base_trades_seed: + seed_file: ref('uniswap_optimism_base_trades_seed') + filter: + version: 4 + - name: uniswap_v3_optimism_base_trades meta: blockchain: optimism diff --git a/dbt_subprojects/dex/models/trades/optimism/dex_optimism_base_trades.sql b/dbt_subprojects/dex/models/trades/optimism/dex_optimism_base_trades.sql index b646f3d59b8..8f7399fa326 100644 --- a/dbt_subprojects/dex/models/trades/optimism/dex_optimism_base_trades.sql +++ b/dbt_subprojects/dex/models/trades/optimism/dex_optimism_base_trades.sql @@ -7,6 +7,7 @@ {% set base_models = [ ref('uniswap_v3_optimism_base_trades') + , ref('uniswap_v4_optimism_base_trades') , ref('woofi_optimism_base_trades') , ref('mummy_finance_optimism_base_trades') , ref('sushiswap_v1_optimism_base_trades') diff --git a/dbt_subprojects/dex/models/trades/optimism/platforms/uniswap_v4_optimism_base_trades.sql b/dbt_subprojects/dex/models/trades/optimism/platforms/uniswap_v4_optimism_base_trades.sql new file mode 100644 index 00000000000..819b16a1efe --- /dev/null +++ b/dbt_subprojects/dex/models/trades/optimism/platforms/uniswap_v4_optimism_base_trades.sql @@ -0,0 +1,21 @@ +{{ config( + schema = 'uniswap_v4_optimism' + , alias = 'base_trades' + , materialized = 'incremental' + , file_format = 'delta' + , incremental_strategy = 'merge' + , unique_key = ['tx_hash', 'evt_index'] + , incremental_predicates = [incremental_predicate('DBT_INTERNAL_DEST.block_time')] + ) +}} + +{{ + uniswap_compatible_v4_trades( + blockchain = 'optimism' + , project = 'uniswap' + , version = '4' + , PoolManager_evt_Swap = source('uniswap_v4_optimism', 'PoolManager_evt_Swap') + , PoolManager_evt_Initialize = source('uniswap_v4_optimism', 'PoolManager_evt_Initialize') + , taker_column_name = 'evt_tx_from' + ) +}} \ No newline at end of file diff --git a/dbt_subprojects/dex/models/trades/polygon/_schema.yml b/dbt_subprojects/dex/models/trades/polygon/_schema.yml index 562e4d5aa17..fe55d9aa744 100644 --- a/dbt_subprojects/dex/models/trades/polygon/_schema.yml +++ b/dbt_subprojects/dex/models/trades/polygon/_schema.yml @@ -7,6 +7,25 @@ models: - test_acceptable_usd_amount: column_name: amount_usd max_value: 1000000000 + + - name: uniswap_v4_polygon_base_trades + meta: + blockchain: polygon + sector: dex + project: uniswap + contributors: agaperste + config: + tags: [ 'polygon', 'dex', 'trades', 'uniswap', 'v4' ] + description: "uniswap polygon v4 base trades" + data_tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - tx_hash + - evt_index + - check_dex_base_trades_seed: + seed_file: ref('uniswap_polygon_base_trades_seed') + filter: + version: 4 - name: uniswap_v3_polygon_base_trades meta: diff --git a/dbt_subprojects/dex/models/trades/polygon/dex_polygon_base_trades.sql b/dbt_subprojects/dex/models/trades/polygon/dex_polygon_base_trades.sql index dfd6b528df3..f44baf93e46 100644 --- a/dbt_subprojects/dex/models/trades/polygon/dex_polygon_base_trades.sql +++ b/dbt_subprojects/dex/models/trades/polygon/dex_polygon_base_trades.sql @@ -7,6 +7,7 @@ {% set base_models = [ ref('uniswap_v3_polygon_base_trades') + , ref('uniswap_v4_polygon_base_trades') , ref('apeswap_polygon_base_trades') , ref('airswap_polygon_base_trades') , ref('sushiswap_v1_polygon_base_trades') diff --git a/dbt_subprojects/dex/models/trades/polygon/platforms/uniswap_v4_polygon_base_trades.sql b/dbt_subprojects/dex/models/trades/polygon/platforms/uniswap_v4_polygon_base_trades.sql new file mode 100644 index 00000000000..95a10fb5278 --- /dev/null +++ b/dbt_subprojects/dex/models/trades/polygon/platforms/uniswap_v4_polygon_base_trades.sql @@ -0,0 +1,20 @@ +{{ config( + schema = 'uniswap_v4_polygon' + , alias = 'base_trades' + , materialized = 'incremental' + , file_format = 'delta' + , incremental_strategy = 'merge' + , unique_key = ['tx_hash', 'evt_index'] + , incremental_predicates = [incremental_predicate('DBT_INTERNAL_DEST.block_time')] + ) +}} + +{{ + uniswap_compatible_v4_trades( + blockchain = 'polygon' + , project = 'uniswap' + , version = '4' + , PoolManager_evt_Swap = source('uniswap_v4_polygon', 'PoolManager_evt_Swap') + , PoolManager_evt_Initialize = source('uniswap_v4_polygon', 'PoolManager_evt_Initialize') + ) +}} \ No newline at end of file diff --git a/dbt_subprojects/dex/models/trades/worldchain/_schema.yml b/dbt_subprojects/dex/models/trades/worldchain/_schema.yml index 569d1ddbd3a..5236a938714 100644 --- a/dbt_subprojects/dex/models/trades/worldchain/_schema.yml +++ b/dbt_subprojects/dex/models/trades/worldchain/_schema.yml @@ -7,7 +7,26 @@ models: - test_acceptable_usd_amount: column_name: amount_usd max_value: 1000000000 - + + - name: uniswap_v4_worldchain_base_trades + meta: + blockchain: worldchain + sector: dex + project: uniswap + contributors: agaperste + config: + tags: [ 'worldchain', 'dex', 'trades', 'uniswap', 'v4' ] + description: "uniswap worldchain v4 base trades" + data_tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - tx_hash + - evt_index + - check_dex_base_trades_seed: + seed_file: ref('uniswap_worldchain_base_trades_seed') + filter: + version: 4 + - name: uniswap_v3_worldchain_base_trades meta: blockchain: worldchain diff --git a/dbt_subprojects/dex/models/trades/worldchain/dex_worldchain_base_trades.sql b/dbt_subprojects/dex/models/trades/worldchain/dex_worldchain_base_trades.sql index a629bfbe1b2..71823b5fe81 100644 --- a/dbt_subprojects/dex/models/trades/worldchain/dex_worldchain_base_trades.sql +++ b/dbt_subprojects/dex/models/trades/worldchain/dex_worldchain_base_trades.sql @@ -7,6 +7,7 @@ {% set base_models = [ ref('uniswap_v3_worldchain_base_trades') + , ref('uniswap_v4_worldchain_base_trades') ] %} WITH base_union AS ( diff --git a/dbt_subprojects/dex/models/trades/worldchain/platforms/uniswap_v4_worldchain_base_trades.sql b/dbt_subprojects/dex/models/trades/worldchain/platforms/uniswap_v4_worldchain_base_trades.sql new file mode 100644 index 00000000000..f0124179880 --- /dev/null +++ b/dbt_subprojects/dex/models/trades/worldchain/platforms/uniswap_v4_worldchain_base_trades.sql @@ -0,0 +1,21 @@ +{{ config( + schema = 'uniswap_v4_worldchain' + , alias = 'base_trades' + , materialized = 'incremental' + , file_format = 'delta' + , incremental_strategy = 'merge' + , unique_key = ['tx_hash', 'evt_index'] + , incremental_predicates = [incremental_predicate('DBT_INTERNAL_DEST.block_time')] + ) +}} + +{{ + uniswap_compatible_v4_trades( + blockchain = 'worldchain' + , project = 'uniswap' + , version = '4' + , PoolManager_evt_Swap = source('uniswap_v4_worldchain', 'PoolManager_evt_Swap') + , PoolManager_evt_Initialize = source('uniswap_v4_worldchain', 'PoolManager_evt_Initialize') + , taker_column_name = 'evt_tx_from' + ) +}} \ No newline at end of file diff --git a/dbt_subprojects/dex/models/trades/zora/_schema.yml b/dbt_subprojects/dex/models/trades/zora/_schema.yml index 121483465f3..57298ed5d3c 100644 --- a/dbt_subprojects/dex/models/trades/zora/_schema.yml +++ b/dbt_subprojects/dex/models/trades/zora/_schema.yml @@ -44,4 +44,23 @@ models: - check_dex_base_trades_seed: seed_file: ref('uniswap_zora_base_trades_seed') filter: - version: 3 \ No newline at end of file + version: 3 + + - name: uniswap_v4_zora_base_trades + meta: + blockchain: zora + sector: dex + project: uniswap + contributors: agaperste + config: + tags: [ 'zora', 'dex', 'trades', 'uniswap', 'v4' ] + description: "uniswap zora v4 base trades" + data_tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - tx_hash + - evt_index + - check_dex_base_trades_seed: + seed_file: ref('uniswap_zora_base_trades_seed') + filter: + version: 4 diff --git a/dbt_subprojects/dex/models/trades/zora/dex_zora_base_trades.sql b/dbt_subprojects/dex/models/trades/zora/dex_zora_base_trades.sql index e8e8bf32e80..27783f4029a 100644 --- a/dbt_subprojects/dex/models/trades/zora/dex_zora_base_trades.sql +++ b/dbt_subprojects/dex/models/trades/zora/dex_zora_base_trades.sql @@ -6,8 +6,9 @@ }} {% set base_models = [ - ref('uniswap_v2_zora_base_trades'), - ref('uniswap_v3_zora_base_trades') + ref('uniswap_v2_zora_base_trades') + , ref('uniswap_v3_zora_base_trades') + , ref('uniswap_v4_zora_base_trades') ] %} WITH base_union AS ( diff --git a/dbt_subprojects/dex/models/trades/zora/platforms/uniswap_v4_zora_base_trades.sql b/dbt_subprojects/dex/models/trades/zora/platforms/uniswap_v4_zora_base_trades.sql new file mode 100644 index 00000000000..a6248e5f23d --- /dev/null +++ b/dbt_subprojects/dex/models/trades/zora/platforms/uniswap_v4_zora_base_trades.sql @@ -0,0 +1,21 @@ +{{ config( + schema = 'uniswap_v4_zora' + , alias = 'base_trades' + , materialized = 'incremental' + , file_format = 'delta' + , incremental_strategy = 'merge' + , unique_key = ['tx_hash', 'evt_index'] + , incremental_predicates = [incremental_predicate('DBT_INTERNAL_DEST.block_time')] + ) +}} + +{{ + uniswap_compatible_v4_trades( + blockchain = 'zora' + , project = 'uniswap' + , version = '4' + , PoolManager_evt_Swap = source('uniswap_v4_zora', 'PoolManager_evt_Swap') + , PoolManager_evt_Initialize = source('uniswap_v4_zora', 'PoolManager_evt_Initialize') + , taker_column_name = 'evt_tx_from' + ) +}} \ No newline at end of file diff --git a/dbt_subprojects/dex/seeds/trades/uniswap_arbitrum_base_trades_seed.csv b/dbt_subprojects/dex/seeds/trades/uniswap_arbitrum_base_trades_seed.csv index c3d48336b06..983f212ce61 100644 --- a/dbt_subprojects/dex/seeds/trades/uniswap_arbitrum_base_trades_seed.csv +++ b/dbt_subprojects/dex/seeds/trades/uniswap_arbitrum_base_trades_seed.csv @@ -4,3 +4,5 @@ arbitrum,uniswap,3,2023-11-23,0x6846619aa820bc271f997cb252285a718b45fabf2b6d4111 arbitrum,uniswap,3,2023-11-23,0x4408000777b5fad6faac4a5f6eded1bd1f5e83385902894bfccb0637cb739b69,25,0x82af49447d8a07e3bd95bd0d56f35241523fbab1,0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9,153279900,37441898224700257,77230000 arbitrum,uniswap,2,2024-02-21,0x28f1c41f6759d82a4837865ad1871211864da660a56bd2ab843fef97f19003ac,29,0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9,0x82af49447d8a07e3bd95bd0d56f35241523fbab1,182991287,662418,196814780565479 arbitrum,uniswap,2,2024-02-21,0x5bf41f87b1b6c575316ffbf21cc3b0a2f8cfb9808cccb74d1405004e83d9ec5d,15,0x82af49447d8a07e3bd95bd0d56f35241523fbab1,0xaf88d065e77c8cc2239327c5edb3a432268e5831,182962516,160944872763083,467795 +arbitrum,uniswap,4,2025-01-23,0x42501c321d6a60f1d08ceeef20bd39cb0b3b07c3ff46d194d98d328726959a1b,11,0xaf88d065e77c8cc2239327c5edb3a432268e5831,0x82af49447d8a07e3bd95bd0d56f35241523fbab1,298272273,181735,54046262057280 +arbitrum,uniswap,4,2025-01-23,0x5176d89ac847db1dd33df288e989d6453e992c09623bb20cf030df2de610ee06,3,0xaf88d065e77c8cc2239327c5edb3a432268e5831,0x82af49447d8a07e3bd95bd0d56f35241523fbab1,298324031,604934,186845291671419 \ No newline at end of file diff --git a/dbt_subprojects/dex/seeds/trades/uniswap_avalanche_c_base_trades_seed.csv b/dbt_subprojects/dex/seeds/trades/uniswap_avalanche_c_base_trades_seed.csv index 03f0127dda2..7783fa9992d 100644 --- a/dbt_subprojects/dex/seeds/trades/uniswap_avalanche_c_base_trades_seed.csv +++ b/dbt_subprojects/dex/seeds/trades/uniswap_avalanche_c_base_trades_seed.csv @@ -6,3 +6,5 @@ avalanche_c,uniswap,3,2023-11-11,0x31e1a422f13f742ba7ad4c5b2b33bf2cc6c05777cfff4 avalanche_c,uniswap,3,2023-11-11,0x41b6ec0e3ba96f6c72bab7954353152ba44904bd61232f91e824c9a74495b1e4,2,0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7,0xb31f66aa3c1e785363f0875a1b74e27b85fd66c7,37603971,600415091,41789828826140460000 avalanche_c,uniswap,2,2024-02-21,0x419b5cf94c1a02ccf98fd50f32aa0307d2cb69bd0d9a50d1d78a1ef611e92b4a,5,0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E,0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7,41960205,900000,24896750486535221 avalanche_c,uniswap,2,2024-02-21,0xc564de5350800868c948cedd5f948dadb7673fbb1efd69db25f2bd92cf64f8f5,31,0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7,0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E,41961222,52452637203160242,1940000 +avalanche_c,uniswap,4,2025-01-24,0xe51fe91e67a06f94b09ffb9e945876b733892515b20ae02c5abd5a150177b8be,22,0xb31f66aa3c1e785363f0875a1b74e27b85fd66c7,0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e,56265117,6535984100803969,227920 +avalanche_c,uniswap,4,2025-01-23,0x78efedab2229e7d6592e38bc8adb0920e2c168d4157fd1a267c7165e421fa1e7,5,0xb31f66aa3c1e785363f0875a1b74e27b85fd66c7,0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e,56244872,26863570317462834,1000000 diff --git a/dbt_subprojects/dex/seeds/trades/uniswap_base_base_trades_seed.csv b/dbt_subprojects/dex/seeds/trades/uniswap_base_base_trades_seed.csv index 7671060c9f2..f7763bf9dd3 100644 --- a/dbt_subprojects/dex/seeds/trades/uniswap_base_base_trades_seed.csv +++ b/dbt_subprojects/dex/seeds/trades/uniswap_base_base_trades_seed.csv @@ -3,3 +3,7 @@ base,uniswap,3,2023-08-12,0xc04be42e9fe8cfcbaa9aebab27c9b527b692473f89a7f8c0df6f base,uniswap,3,2023-08-18,0x43c43e6b8316986ab3c14123c0e297e3f47891d1f17d16760cdd9e04be53d967,48,0x4200000000000000000000000000000000000006,0xd9aaec86b65d86f6a7b5b1b0c42ffa531710b6ca,2783644,5880750846336834508,9915816189 base,uniswap,2,2024-02-13,0x1b0bf975db3161e5c8576816645359a345b572b6f6c3f2f0ecfe7933fd93bda3,21,0x833589fcd6edb6e08f4c7c32d4f71b54bda02913,0x4200000000000000000000000000000000000006,10526592,1933832,262144000000000 base,uniswap,2,2024-02-20,0x6842c618c07728b5005676a63f29951a5b31b772141913fa335d9a665e6403e2,32,0x4200000000000000000000000000000000000006,0x833589fcd6edb6e08f4c7c32d4f71b54bda02913,10840980,332723899256538,1000000 +base,uniswap,4,2025-01-23,0xb676b941fe70cca65b976256071a82ee03fa5e3011cae29111416f6c3f03d6b9,234,0x0000000000000000000000000000000000000000,0x940181a94a35a4569e4529a3cdfb74e38fd98631,25427983,2813305492419957,544100692967855209 +base,uniswap,4,2025-01-23,0xacffee88f97b2f4284f6992ad74733667c0131e4fb7459a00cf7718d1e5bd5f5,104,0x833589fcd6edb6e08f4c7c32d4f71b54bda02913,0x4200000000000000000000000000000000000006,25401667,347553,106502155157829 +base,uniswap,4,2025-01-23,0x469fc291d518ad0de6fa256c4c6f8d8966609764a13e66d45b090c87eb28d638,133,0x833589fcd6edb6e08f4c7c32d4f71b54bda02913,0x0000000000000000000000000000000000000000,25403411,291738,89516393448647 +base,uniswap,4,2025-01-23,0x22925de0c98b275c525c81085ce5ce0f16623eb8539113cf080fc8dabafd7ae7,0,0x4200000000000000000000000000000000000006,0x34c990ee5aa627e9304234cc59b0734163eac06b,25428279,2676271837318114,1898512151143465161 diff --git a/dbt_subprojects/dex/seeds/trades/uniswap_blast_base_trades_seed.csv b/dbt_subprojects/dex/seeds/trades/uniswap_blast_base_trades_seed.csv index 9b0153e8d42..e74ea9c03c3 100644 --- a/dbt_subprojects/dex/seeds/trades/uniswap_blast_base_trades_seed.csv +++ b/dbt_subprojects/dex/seeds/trades/uniswap_blast_base_trades_seed.csv @@ -3,3 +3,4 @@ blast,uniswap,3,2024-05-23,0x551d4e0f41354ae704d4741dcf4cc04545e8d57244970f82aa5 blast,uniswap,3,2024-04-16,0x179f36ba037f73bba13287344a8500eb1d2afbc0d431397cd53a01dc3f7b4526,7,0x4300000000000000000000000000000000000004,0x2416092f143378750bb29b79ed961ab195cceea5,2246306,2105445002466536,2057258487654622 blast,uniswap,2,2024-06-07,0x1719c8d79cc064f4863417c7fae613857ef1c3b6a30f0071d9e416b4bb8385ec,23,0x4300000000000000000000000000000000000003,0x4300000000000000000000000000000000000004,4471336,1135362542678049275,298977031258286 blast,uniswap,2,2024-04-16,0x5057cf71829bebf2b9c9c19255355125906ec48123743fbdfbec6b6aa5c363a5,8,0x4300000000000000000000000000000000000003,0x4300000000000000000000000000000000000004,2215230,30824068867802868,10000000000000 +blast,uniswap,4,2025-01-24 00:00:00.000 UTC,0x61ae1af6267d95a60e5348da3462b66d9903e9c2ed758ef4e1d2b9ba8a040a59,6,0x4300000000000000000000000000000000000003,0x4300000000000000000000000000000000000004,14468219,1000000000000000000,312790079688847 diff --git a/dbt_subprojects/dex/seeds/trades/uniswap_bnb_base_trades_seed.csv b/dbt_subprojects/dex/seeds/trades/uniswap_bnb_base_trades_seed.csv index d77a3339356..7c2a833edaa 100644 --- a/dbt_subprojects/dex/seeds/trades/uniswap_bnb_base_trades_seed.csv +++ b/dbt_subprojects/dex/seeds/trades/uniswap_bnb_base_trades_seed.csv @@ -4,3 +4,5 @@ bnb,uniswap,3,2023-11-23,0x612a6a8e7d1a9a10bf3f0341ad517834e28f0728fd2e006858e80 bnb,uniswap,3,2023-11-23,0x6c2a240c5c650ebfce566faff223f4c9d704d41b5114d52460ba7ee1648d5459,95,0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c,0x55d398326f99059ff775485246999027b3197955,33744681,4512482518778893394,1053000185747243700000 bnb,uniswap,2,2024-02-21,0xfde492c7be3b69b0c39a09d9f9ad49120f8f7c7044a484e75107b84c4e5b1870,305,0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c,0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d,36327595,4397549261783334,1559294763177974871 bnb,uniswap,2,2024-02-21,0xe05f71fe013e9ddae826ff9537f36f0a2315d26c1610747b94cbc61e072cb2a6,374,0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d,0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c,36324112,145000000000000198,418857893461315 +bnb,uniswap,4,2025-01-23,0x55a22897eea3d4c605e426e070a54bd527199ccfc3a5f7ea30110f99f603716c,381,0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d,0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c,46005720,214123327836206475,308013875592176 +bnb,uniswap,4,2025-01-23,0x2855023081c97bf8643a197db0dfd0b49429b987cef1484451e6d911cddce742,439,0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d,0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c,46017727,181950772716089488,264913593392579 diff --git a/dbt_subprojects/dex/seeds/trades/uniswap_ethereum_base_trades_seed.csv b/dbt_subprojects/dex/seeds/trades/uniswap_ethereum_base_trades_seed.csv index 239f4be9069..87001ddf0f0 100644 --- a/dbt_subprojects/dex/seeds/trades/uniswap_ethereum_base_trades_seed.csv +++ b/dbt_subprojects/dex/seeds/trades/uniswap_ethereum_base_trades_seed.csv @@ -15,3 +15,5 @@ ethereum,uniswap,3,2022-09-28,0x566b4dd208a3af70b3b80e9352e35f263db73ec29ed6e638 ethereum,uniswap,3,2022-09-28,0xdcaf9394fddb84afbf971045661d7e96ed2d01a743ea913abceb20cf4c13452e,2,0xdac17f958d2ee523a2206206994597c13d831ec7,0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,15633338,18410192140,13797744360902256640 ethereum,uniswap,3,2022-09-28,0x4bda429e77bdd899139e00628c8fee2e119db6098745cba00e11efeeb1a99bd2,84,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48,0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,15633338,10747932591,8060432035508632724 ethereum,uniswap,3,2022-09-28,0x7a98cdef70a5518538457c807d90e69340d709d2a2a87699a869db8be7a66d8f,112,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48,0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,15633337,46942648238,35200000000000000000 +ethereum,uniswap,4,2025-01-24,0x966a949326d0b3aba5d41c7e8fda72b585fb5f5eb4378a2ccddb82836df92711,170,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48,0x0000000000000000000000000000000000000000,21696530,1002500,327967481202468 +ethereum,uniswap,4,2025-01-24,0xa6ec9dabbd0f80bdb2d9d5f1da8006939af385ec83874363b5a85b99dde51164,28,0x0000000000000000000000000000000000000000,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48,21696375,325149901674883,1000000 diff --git a/dbt_subprojects/dex/seeds/trades/uniswap_optimism_base_trades_seed.csv b/dbt_subprojects/dex/seeds/trades/uniswap_optimism_base_trades_seed.csv index 389e7c8276b..a78c008975c 100644 --- a/dbt_subprojects/dex/seeds/trades/uniswap_optimism_base_trades_seed.csv +++ b/dbt_subprojects/dex/seeds/trades/uniswap_optimism_base_trades_seed.csv @@ -4,3 +4,5 @@ optimism,uniswap,3,2022-09-30,0x1eb5e4679743665b626af08e0e1cb571982d851e4d9a26ca optimism,uniswap,3,2022-09-30,0x14d51305de3c0224f1474e895d8a75c3f6f31c050a8384fb56352b9ce23dfde5,2,0x7f5c764cbc14f9669b88837ca1490cca17c31607,0x94b008aa00579c1307b0ef2c499ad98a8ce58e58,26589197,60461960,60456251 optimism,uniswap,2,2024-02-14,0x11737537d317577bd857146f90097dc68a3e7cc308519681d4b72ebbe08d73e1,53,0x0b2c639c533813f4aa9d7837caf62653d097ff85,0x4200000000000000000000000000000000000006,116168301,1372359,65536000000000 optimism,uniswap,2,2024-02-21,0x00ff23be2b524404a98a883380325d85e9f1ccba7c1859df6bbb144d229016f8,9,0x0b2c639c533813f4aa9d7837caf62653d097ff85,0x4200000000000000000000000000000000000006,116455262,295343,100000000000000 +optimism,uniswap,4,2025-01-24,0x071cf98d110ab70021059a681cbce7400e77f06867555a93ae45797ceeea125e,81,0x4200000000000000000000000000000000000042,0xda10009cbd5d07dd0cecc66161fc93d7c9000da1,131072623,33583568630881826,58282487470551858 +optimism,uniswap,4,2025-01-24,0x0487fa2101a681ed05fb8625ab5b50ff084db3ae423d6f1ae746367b7cef1d15,16,0x4200000000000000000000000000000000000006,0x0b2c639c533813f4aa9d7837caf62653d097ff85,131073182,136906038286140,458396 diff --git a/dbt_subprojects/dex/seeds/trades/uniswap_polygon_base_trades_seed.csv b/dbt_subprojects/dex/seeds/trades/uniswap_polygon_base_trades_seed.csv index 9065de10ac8..e2c0786db51 100644 --- a/dbt_subprojects/dex/seeds/trades/uniswap_polygon_base_trades_seed.csv +++ b/dbt_subprojects/dex/seeds/trades/uniswap_polygon_base_trades_seed.csv @@ -3,3 +3,5 @@ polygon,uniswap,3,2022-11-14,0x065d1410e74a0f973feb1b2b81030c4e48787fc9e540700d6 polygon,uniswap,3,2022-11-14,0x17e206610661e39deac15979717f6658035a531aa66c78ffcdc6e8d02a4dd4a9,60,0x2791bca1f2de4661ed88a30c99a7a9449aa84174,0x1bfd67037b42cf73acf2047067bd4f2c47d9bfd6,35604087,230890774,1400680 polygon,uniswap,3,2022-11-05,0x2f2f34207e9b8b521e87e40aaf452c0ddb57c580b5174a615cc286366efca79d,33,0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270,0xc2132d05d31c914a87c6611c10748aeb04b58e8f,35219251,1005454808280348265291,1212644735 polygon,uniswap,2,2024-02-21,0xf8b44c956ed29380d19e7ff33f071e2dd3ca94acfe0a11b73c087e1c70f0df7d,289,0x421d72237b9293a10a4dd23ee2c5123cdcd926dd,0x3c499c542cef5e3811e1192ce70d8cc03d5c3359,53777896,1347971957936,100000 +polygon,uniswap,4,2025-01-22,0x7c395c404ba03f18b6aaa339dc128604501434e37e4fa24c8ff2c2de54ba5f4e,336,0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270,0x3c499c542cef5e3811e1192ce70d8cc03d5c3359,67014227,619948945425760646,275190 +polygon,uniswap,4,2025-01-22,0x9d3e2ba6df7d3d14c8d1961b6eea02a4584f52da4e1bbc130bb942fd7807bc7e,170,0x3c499c542cef5e3811e1192ce70d8cc03d5c3359,0x0d500b1d8e8ef31e21c99d1db9a6444d3adf1270,67021830,180354,405536168959610112 diff --git a/dbt_subprojects/dex/seeds/trades/uniswap_worldchain_base_trades_seed.csv b/dbt_subprojects/dex/seeds/trades/uniswap_worldchain_base_trades_seed.csv index 5a270b94cb8..aafc29bba1b 100644 --- a/dbt_subprojects/dex/seeds/trades/uniswap_worldchain_base_trades_seed.csv +++ b/dbt_subprojects/dex/seeds/trades/uniswap_worldchain_base_trades_seed.csv @@ -1,3 +1,5 @@ blockchain,project,version,block_date,tx_hash,evt_index,token_bought_address,token_sold_address,block_number,token_bought_amount_raw,token_sold_amount_raw worldchain,uniswap,3,2024-10-13,0xf0fb23913be35bde58ff9cd1bde5b4e7e1b89c9fd1ca3e1b68bb3642a3a6826f,15,0x2cfc85d8e48f8eab294be644d9e25c3030863003,0x79a02482a880bce3f13e09da970dc34db4cd24d1,4725968,5115943631049460102,9199756 worldchain,uniswap,3,2024-10-13,0xb3bcf7ab7b5d55f0bfbac2bf723c8df074fa237a591639748196af02c73c8b31,5,0x79a02482a880bce3f13e09da970dc34db4cd24d1,0x2cfc85d8e48f8eab294be644d9e25c3030863003,4723857,17630073,10000000000000000000 +worldchain,uniswap,4,2025-01-24,0xcb908fe0c1c8793468f80ad6d9212f9d534f047fc5842daa9cfc55781bc05989,1,0x4200000000000000000000000000000000000006,0x79a02482a880bce3f13e09da970dc34db4cd24d1,9203176,293997789205357,1000000 +worldchain,uniswap,4,2025-01-24,0x83f8bb9f12a5efebc3ce0d10bf2c71bfbd55f4f52c6e3f67ade21a42f1d7306b,0,0x79a02482a880bce3f13e09da970dc34db4cd24d1,0x0000000000000000000000000000000000000000,9205366,10,2507681439 diff --git a/sources/_sector/dex/trades/arbitrum/_sources.yml b/sources/_sector/dex/trades/arbitrum/_sources.yml index fa00d46d12c..6b5059b96c2 100644 --- a/sources/_sector/dex/trades/arbitrum/_sources.yml +++ b/sources/_sector/dex/trades/arbitrum/_sources.yml @@ -1,6 +1,10 @@ version: 2 sources: + - name: uniswap_v4_arbitrum + tables: + - name: PoolManager_evt_Swap + - name: PoolManager_evt_Initialize - name: uniswap_v3_arbitrum - name: camelot_arbitrum tables: diff --git a/sources/_sector/dex/trades/avalanche_c/_sources.yml b/sources/_sector/dex/trades/avalanche_c/_sources.yml index 8ea5a933b62..e03b8897cae 100644 --- a/sources/_sector/dex/trades/avalanche_c/_sources.yml +++ b/sources/_sector/dex/trades/avalanche_c/_sources.yml @@ -1,6 +1,10 @@ version: 2 sources: + - name: uniswap_v4_avalanche_c + tables: + - name: PoolManager_evt_Swap + - name: PoolManager_evt_Initialize - name: uniswap_v3_avalanche_c - name: airswap_avalanche_c tables: diff --git a/sources/_sector/dex/trades/base/_sources.yml b/sources/_sector/dex/trades/base/_sources.yml index 2aa7e289fad..0d02e519108 100644 --- a/sources/_sector/dex/trades/base/_sources.yml +++ b/sources/_sector/dex/trades/base/_sources.yml @@ -1,6 +1,10 @@ version: 2 sources: + - name: uniswap_v4_base + tables: + - name: PoolManager_evt_Swap + - name: PoolManager_evt_Initialize - name: uniswap_v3_base - name: sushiswap_base tables: diff --git a/sources/_sector/dex/trades/blast/_sources.yml b/sources/_sector/dex/trades/blast/_sources.yml index 75e95394f0a..d9485ca1e54 100644 --- a/sources/_sector/dex/trades/blast/_sources.yml +++ b/sources/_sector/dex/trades/blast/_sources.yml @@ -1,6 +1,10 @@ version: 2 sources: + - name: uniswap_v4_blast + tables: + - name: PoolManager_evt_Swap + - name: PoolManager_evt_Initialize - name: uniswap_v3_blast tables: - name: UniswapV3Pool_evt_Swap diff --git a/sources/_sector/dex/trades/bnb/_sources.yml b/sources/_sector/dex/trades/bnb/_sources.yml index bf16919d3a2..7de79b0c6bc 100644 --- a/sources/_sector/dex/trades/bnb/_sources.yml +++ b/sources/_sector/dex/trades/bnb/_sources.yml @@ -1,6 +1,11 @@ version: 2 sources: + - name: uniswap_v4_bnb + tables: + - name: PoolManager_evt_Swap + - name: PoolManager_evt_Initialize + - name: uniswap_v3_blast - name: uniswap_v3_bnb - name: airswap_bnb tables: diff --git a/sources/_sector/dex/trades/ethereum/_sources.yml b/sources/_sector/dex/trades/ethereum/_sources.yml index 4a582b28ca8..5c0fc131701 100644 --- a/sources/_sector/dex/trades/ethereum/_sources.yml +++ b/sources/_sector/dex/trades/ethereum/_sources.yml @@ -1,6 +1,10 @@ version: 2 sources: + - name: uniswap_v4_ethereum + tables: + - name: PoolManager_evt_Swap + - name: PoolManager_evt_Initialize - name: defiswap_ethereum - name: uniswap_ethereum - name: uniswap_v2_ethereum diff --git a/sources/_sector/dex/trades/optimism/_sources.yml b/sources/_sector/dex/trades/optimism/_sources.yml index c54e6a688bd..92c1a7d2d65 100644 --- a/sources/_sector/dex/trades/optimism/_sources.yml +++ b/sources/_sector/dex/trades/optimism/_sources.yml @@ -1,6 +1,10 @@ version: 2 sources: + - name: uniswap_v4_optimism + tables: + - name: PoolManager_evt_Swap + - name: PoolManager_evt_Initialize - name: uniswap_v3_optimism tables: - name: pools diff --git a/sources/_sector/dex/trades/polygon/_sources.yml b/sources/_sector/dex/trades/polygon/_sources.yml index 0f1a0e5624e..741b9c6c96d 100644 --- a/sources/_sector/dex/trades/polygon/_sources.yml +++ b/sources/_sector/dex/trades/polygon/_sources.yml @@ -2,6 +2,10 @@ version: 2 sources: + - name: uniswap_v4_polygon + tables: + - name: PoolManager_evt_Swap + - name: PoolManager_evt_Initialize - name: uniswap_v3_polygon - name: airswap_polygon tables: diff --git a/sources/_sector/dex/trades/worldchain/_sources.yml b/sources/_sector/dex/trades/worldchain/_sources.yml index 94cd1c668a6..b342ec87035 100644 --- a/sources/_sector/dex/trades/worldchain/_sources.yml +++ b/sources/_sector/dex/trades/worldchain/_sources.yml @@ -1,6 +1,10 @@ version: 2 sources: + - name: uniswap_v4_worldchain + tables: + - name: PoolManager_evt_Swap + - name: PoolManager_evt_Initialize - name: uniswap_worldchain tables: - name: uniswapv3factory_evt_poolcreated diff --git a/sources/_sector/dex/trades/zora/_sources.yml b/sources/_sector/dex/trades/zora/_sources.yml index 577652fad95..ee4f77c9e75 100644 --- a/sources/_sector/dex/trades/zora/_sources.yml +++ b/sources/_sector/dex/trades/zora/_sources.yml @@ -1,6 +1,10 @@ version: 2 sources: + - name: uniswap_v4_zora + tables: + - name: PoolManager_evt_Swap + - name: PoolManager_evt_Initialize - name: uniswap_v2_zora - name: uniswap_v3_zora tables: From c7484cffc9f3156da89c77d083af8bddd1fec951 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pol=20Epi=C3=A9?= <36932762+PolEpie@users.noreply.github.com> Date: Fri, 24 Jan 2025 23:01:41 +0100 Subject: [PATCH 03/21] Silver Sonic Integration (#7529) * Silver Sonic Integration * Oups revert wagmi changes * Fix trades test * Fix fees to be null * Fix trades sources * Change sources * Add silver dex info --- dbt_subprojects/dex/models/dex_info.sql | 1 + .../dex/models/trades/sonic/_schema.yml | 21 +++++++++++++++++- .../trades/sonic/dex_sonic_base_trades.sql | 1 + .../silverswap_sonic_base_trades.sql | 22 +++++++++++++++++++ dbt_subprojects/dex/seeds/trades/_schema.yml | 15 +++++++++++++ .../silverswap_sonic_base_trades_seed.csv | 3 +++ sources/_sector/dex/trades/sonic/_sources.yml | 6 ++++- 7 files changed, 67 insertions(+), 2 deletions(-) create mode 100644 dbt_subprojects/dex/models/trades/sonic/platforms/silverswap_sonic_base_trades.sql create mode 100644 dbt_subprojects/dex/seeds/trades/silverswap_sonic_base_trades_seed.csv diff --git a/dbt_subprojects/dex/models/dex_info.sql b/dbt_subprojects/dex/models/dex_info.sql index aea4eb7df59..173aea33710 100644 --- a/dbt_subprojects/dex/models/dex_info.sql +++ b/dbt_subprojects/dex/models/dex_info.sql @@ -202,4 +202,5 @@ FROM (VALUES , ('fluid', 'Fluid DEX', 'Direct', '0xfluid') , ('jojo', 'JOJO', 'Direct', 'jojo_exchange') , ('beets', 'Beets DEX', 'Direct', 'beets_fi') + , ('silverswap', 'SilverSwap', 'Direct', 'SilverSwapDex') ) AS temp_table (project, name, marketplace_type, x_username) diff --git a/dbt_subprojects/dex/models/trades/sonic/_schema.yml b/dbt_subprojects/dex/models/trades/sonic/_schema.yml index 8bd7ded9beb..dcf4b0c5965 100644 --- a/dbt_subprojects/dex/models/trades/sonic/_schema.yml +++ b/dbt_subprojects/dex/models/trades/sonic/_schema.yml @@ -57,4 +57,23 @@ models: - tx_hash - evt_index - check_dex_base_trades_seed: - seed_file: ref('wagmi_sonic_base_trades_seed') \ No newline at end of file + seed_file: ref('wagmi_sonic_base_trades_seed') + + + - name: silverswap_sonic_base_trades + meta: + blockchain: sonic + sector: dex + project: silverswap + contributors: PolEpie + config: + tags: ['sonic', 'dex', 'trades', 'silverswap'] + description: "Silverswap sonic base trades" + data_tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - tx_hash + - evt_index + - check_dex_base_trades_seed: + seed_file: ref('silverswap_sonic_base_trades_seed') + \ No newline at end of file diff --git a/dbt_subprojects/dex/models/trades/sonic/dex_sonic_base_trades.sql b/dbt_subprojects/dex/models/trades/sonic/dex_sonic_base_trades.sql index def249d26cb..282fe796f83 100644 --- a/dbt_subprojects/dex/models/trades/sonic/dex_sonic_base_trades.sql +++ b/dbt_subprojects/dex/models/trades/sonic/dex_sonic_base_trades.sql @@ -9,6 +9,7 @@ ref('beets_sonic_base_trades') , ref('wagmi_sonic_base_trades') , ref('equalizer_sonic_base_trades') + , ref('silverswap_sonic_base_trades') ] %} WITH base_union AS ( diff --git a/dbt_subprojects/dex/models/trades/sonic/platforms/silverswap_sonic_base_trades.sql b/dbt_subprojects/dex/models/trades/sonic/platforms/silverswap_sonic_base_trades.sql new file mode 100644 index 00000000000..d610c05749f --- /dev/null +++ b/dbt_subprojects/dex/models/trades/sonic/platforms/silverswap_sonic_base_trades.sql @@ -0,0 +1,22 @@ +{{ + config( + schema = 'silverswap_sonic', + alias = 'base_trades', + materialized = 'incremental', + file_format = 'delta', + incremental_strategy = 'merge', + unique_key = ['tx_hash', 'evt_index'], + incremental_predicates = [incremental_predicate('DBT_INTERNAL_DEST.block_time')] + ) +}} + +{{ + uniswap_compatible_v3_trades( + blockchain = 'sonic', + project = 'silverswap', + version = '3', + Pair_evt_Swap = source('silverswap_sonic', 'AlgebraPool_evt_Swap'), + Factory_evt_PoolCreated = source('silverswap_sonic', 'AlgebraFactory_evt_Pool'), + optional_columns = null + ) +}} \ No newline at end of file diff --git a/dbt_subprojects/dex/seeds/trades/_schema.yml b/dbt_subprojects/dex/seeds/trades/_schema.yml index d6fa4aa1185..8b5028d8b0a 100644 --- a/dbt_subprojects/dex/seeds/trades/_schema.yml +++ b/dbt_subprojects/dex/seeds/trades/_schema.yml @@ -4776,6 +4776,21 @@ seeds: block_date: timestamp - name: wagmi_sonic_base_trades_seed + config: + column_types: + blockchain: varchar + project: varchar + version: varchar + tx_hash: varbinary + evt_index: uint256 + block_number: uint256 + token_bought_address: varbinary + token_sold_address: varbinary + token_bought_amount_raw: uint256 + token_sold_amount_raw: uint256 + block_date: timestamp + + - name: silverswap_sonic_base_trades_seed config: column_types: blockchain: varchar diff --git a/dbt_subprojects/dex/seeds/trades/silverswap_sonic_base_trades_seed.csv b/dbt_subprojects/dex/seeds/trades/silverswap_sonic_base_trades_seed.csv new file mode 100644 index 00000000000..b5a7e8ab93c --- /dev/null +++ b/dbt_subprojects/dex/seeds/trades/silverswap_sonic_base_trades_seed.csv @@ -0,0 +1,3 @@ +blockchain,project,version,block_date,tx_hash,evt_index,token_bought_address,token_sold_address,block_number,token_bought_amount_raw,token_sold_amount_raw +sonic,silverswap,3,2025-01-23,0x0534adde3f9de987aecc5266ff72fbf6fbe88883b20d5f0c488ad5680f4d10ed,13,0x29219dd400f2Bf60E5a23d13Be72B486D4038894,0x039e2fB66102314Ce7b64Ce5Ce3E5183bc94aD38,5179246,571034,1000000000000000000 +sonic,silverswap,3,2025-01-23,0xb6f9a9ba3a2dbc8e4513b58bc5e494cdaf61b199209a26dc643f914a39389752,2,0x039e2fB66102314Ce7b64Ce5Ce3E5183bc94aD38,0x79bbF4508B1391af3A0F4B30bb5FC4aa9ab0E07C,5175429,3182071248364321163,100000000000000000 diff --git a/sources/_sector/dex/trades/sonic/_sources.yml b/sources/_sector/dex/trades/sonic/_sources.yml index a831c46212b..4ebe4ec0b62 100644 --- a/sources/_sector/dex/trades/sonic/_sources.yml +++ b/sources/_sector/dex/trades/sonic/_sources.yml @@ -4,4 +4,8 @@ sources: - name: wagmi_sonic tables: - name: UniswapV3Factory_evt_PoolCreated - - name: UniswapV3Pool_evt_Swap \ No newline at end of file + - name: UniswapV3Pool_evt_Swap + - name: silverswap_sonic + tables: + - name: AlgebraFactory_evt_Pool + - name: AlgebraPool_evt_Swap \ No newline at end of file From ba26f64b801ae4fb2d16de09dca24a8fd141504f Mon Sep 17 00:00:00 2001 From: archie17277 <160746411+archie17277@users.noreply.github.com> Date: Sat, 25 Jan 2025 03:32:40 +0530 Subject: [PATCH 04/21] Add Timeswap dex to trades (#7348) * Added timeswap dex * Added timeswap dex * Update sql file * Update _schema.yml * update sql file * Update timeswap_v2_optimism_base_trades.sql * update sql file * Update _schema.yml * update schema file * update schema file * Fix saddle finance test * Remove duped saddle_finance_optimism_base_trades --------- Co-authored-by: 0xRob <83790096+0xRobin@users.noreply.github.com> Co-authored-by: Huang Geyang Co-authored-by: jeff-dude <102681548+jeff-dude@users.noreply.github.com> --- dbt_subprojects/dex/models/dex_info.sql | 1 + .../dex/models/trades/optimism/_schema.yml | 25 +++++++- .../optimism/dex_optimism_base_trades.sql | 1 + .../timeswap_v2_optimism_base_trades.sql | 57 +++++++++++++++++++ dbt_subprojects/dex/seeds/trades/_schema.yml | 17 +++++- .../timeswap_v2_optimism_base_trades_seed.csv | 3 + .../_sector/dex/trades/optimism/_sources.yml | 3 + 7 files changed, 103 insertions(+), 4 deletions(-) create mode 100644 dbt_subprojects/dex/models/trades/optimism/platforms/timeswap_v2_optimism_base_trades.sql create mode 100644 dbt_subprojects/dex/seeds/trades/timeswap_v2_optimism_base_trades_seed.csv diff --git a/dbt_subprojects/dex/models/dex_info.sql b/dbt_subprojects/dex/models/dex_info.sql index 173aea33710..85adf56b98a 100644 --- a/dbt_subprojects/dex/models/dex_info.sql +++ b/dbt_subprojects/dex/models/dex_info.sql @@ -186,6 +186,7 @@ FROM (VALUES , ('kaia_swap', 'KaiaSwap', 'Direct', 'KaiaSwap') , ('defi_kingdoms', 'DeFi Kingdoms', 'Direct', 'DeFiKingdoms') , ('hyperjump', 'HyperJump', 'Direct', 'Hyperjump_fi') + , ('timeswap', 'Timeswap', 'Direct', 'TimeswapLabs') , ('infusion', 'Infusion', 'Direct', 'infusionfinance') , ('stablebase', 'StableBase', 'Direct', 'stablebasefi') , ('flashliquidity', 'Flashliquidity', 'Direct', 'flashliquidity') diff --git a/dbt_subprojects/dex/models/trades/optimism/_schema.yml b/dbt_subprojects/dex/models/trades/optimism/_schema.yml index f7ea645d2a5..26c121ce00f 100644 --- a/dbt_subprojects/dex/models/trades/optimism/_schema.yml +++ b/dbt_subprojects/dex/models/trades/optimism/_schema.yml @@ -591,6 +591,25 @@ models: filter: version: 2 + - name: timeswap_v2_optimism_base_trades + meta: + blockchain: optimism + sector: dex + project: timeswap_v2 + contributors: archie + config: + tags: [ 'optimism', 'dex', 'trades', 'timeswap', 'v2'] + description: "timeswap v2 optimism base trades" + data_tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - tx_hash + - evt_index + - check_dex_base_trades_seed: + seed_file: ref('timeswap_v2_optimism_base_trades_seed') + filter: + version: 2 + - name: saddle_finance_optimism_base_trades meta: blockchain: optimism @@ -606,8 +625,8 @@ models: - tx_hash - evt_index - check_dex_base_trades_seed: - seed_file: ref('saddle_finance_optimism_base_trades_seed') - + seed_file: ref('saddle_finance_optimism_base_trades_seed') + - name: bridgers_optimism_base_trades meta: blockchain: optimism @@ -623,4 +642,4 @@ models: - tx_hash - evt_index - check_dex_base_trades_seed: - seed_file: ref('bridgers_optimism_base_trades_seed') \ No newline at end of file + seed_file: ref('bridgers_optimism_base_trades_seed') diff --git a/dbt_subprojects/dex/models/trades/optimism/dex_optimism_base_trades.sql b/dbt_subprojects/dex/models/trades/optimism/dex_optimism_base_trades.sql index 8f7399fa326..3c6b10c0a09 100644 --- a/dbt_subprojects/dex/models/trades/optimism/dex_optimism_base_trades.sql +++ b/dbt_subprojects/dex/models/trades/optimism/dex_optimism_base_trades.sql @@ -36,6 +36,7 @@ , ref('elk_finance_optimism_base_trades') , ref('fraxswap_optimism_base_trades') , ref('swaap_v2_optimism_base_trades') + , ref('timeswap_v2_optimism_base_trades') , ref('bridgers_optimism_base_trades') , ref('saddle_finance_optimism_base_trades') ] %} diff --git a/dbt_subprojects/dex/models/trades/optimism/platforms/timeswap_v2_optimism_base_trades.sql b/dbt_subprojects/dex/models/trades/optimism/platforms/timeswap_v2_optimism_base_trades.sql new file mode 100644 index 00000000000..abb21123144 --- /dev/null +++ b/dbt_subprojects/dex/models/trades/optimism/platforms/timeswap_v2_optimism_base_trades.sql @@ -0,0 +1,57 @@ +{{ + config( + schema = 'timeswap_v2_optimism', + alias = 'base_trades', + materialized = 'incremental', + file_format = 'delta', + incremental_strategy = 'merge', + unique_key = ['tx_hash', 'evt_index'], + incremental_predicates = [incremental_predicate('dbt_internal_dest.block_time')] + ) +}} + +WITH dexs AS +( + SELECT + t.evt_block_number AS block_number + -- , t.evt_block_date AS block_date + , t.evt_block_time AS block_time + , CAST(null AS VARBINARY) AS taker + , t.contract_address AS maker + , CASE WHEN t.token0AndLong0Amount < INT256 '0' THEN abs(t.token0AndLong0Amount) ELSE abs(t.token1AndLong1Amount) END AS token_bought_amount_raw + , CASE WHEN t.token0AndLong0Amount < INT256 '0' THEN abs(t.token1AndLong1Amount) ELSE abs(t.token0AndLong0Amount) END AS token_sold_amount_raw + , CASE WHEN t.token0AndLong0Amount < INT256 '0' THEN t.tokenTo ELSE t.longTo END AS token_bought_address + , CASE WHEN t.token0AndLong0Amount < INT256 '0' THEN t.longTo ELSE t.tokenTo END AS token_sold_address + , t.contract_address AS project_contract_address + , t.evt_tx_hash AS tx_hash + , t.evt_index AS evt_index + , t.evt_tx_from AS tx_from + , t.evt_tx_to AS tx_to + FROM {{ source('timeswap_v2_optimism', 'TimeswapV2Option_evt_Swap') }} t + {% if is_incremental() %} + WHERE + {{ incremental_predicate('t.evt_block_time') }} + {% endif %} +) + +SELECT + 'optimism' AS blockchain + , 'timeswap' AS project + , '2' AS version + , CAST(date_trunc('month', dexs.block_time) AS date) AS block_month + , CAST(date_trunc('day', dexs.block_time) AS date) AS block_date + , dexs.block_time + , dexs.block_number + , dexs.token_bought_amount_raw + , dexs.token_sold_amount_raw + , dexs.token_bought_address + , dexs.token_sold_address + , dexs.taker + , dexs.maker + , dexs.project_contract_address + , dexs.tx_hash + , dexs.evt_index + , dexs.tx_from + , dexs.tx_to +FROM + dexs diff --git a/dbt_subprojects/dex/seeds/trades/_schema.yml b/dbt_subprojects/dex/seeds/trades/_schema.yml index 8b5028d8b0a..83450755817 100644 --- a/dbt_subprojects/dex/seeds/trades/_schema.yml +++ b/dbt_subprojects/dex/seeds/trades/_schema.yml @@ -4470,6 +4470,21 @@ seeds: token_sold_amount_raw: uint256 block_date: timestamp + - name: timeswap_v2_optimism_base_trades_seed + config: + column_types: + blockchain: varchar + project: varchar + version: varchar + tx_hash: varbinary + evt_index: uint256 + block_number: uint256 + token_bought_address: varbinary + token_sold_address: varbinary + token_bought_amount_raw: uint256 + token_sold_amount_raw: uint256 + block_date: timestamp + - name: infusion_base_base_trades_seed config: column_types: @@ -4803,4 +4818,4 @@ seeds: token_sold_address: varbinary token_bought_amount_raw: uint256 token_sold_amount_raw: uint256 - block_date: timestamp \ No newline at end of file + block_date: timestamp diff --git a/dbt_subprojects/dex/seeds/trades/timeswap_v2_optimism_base_trades_seed.csv b/dbt_subprojects/dex/seeds/trades/timeswap_v2_optimism_base_trades_seed.csv new file mode 100644 index 00000000000..564e9e1d0ad --- /dev/null +++ b/dbt_subprojects/dex/seeds/trades/timeswap_v2_optimism_base_trades_seed.csv @@ -0,0 +1,3 @@ +blockchain,project,version,block_date,tx_hash,evt_index,token_bought_address,token_sold_address,block_number,token_bought_amount_raw,token_sold_amount_raw +optimism,timeswap,2,2024-02-08,0x90d645b281c3ed4426635085f55624e7d2a199616bb2629002d49b7e0f5e3016,15,0xee486841a813504c3466e0006167a57c073b6c4d,0xd6cb50081a0087be91066723211b50ee3753f0da,115891534,12828,3947076923076924 +optimism,timeswap,2,2023-12-22,0xf70eac3e9afe21e0c2c8f676d55be49d8100f9234b964a2068f799ea5f0bcca6,36,0xee486841a813504c3466e0006167a57c073b6c4d,0xb3d1e41f84acd0e77f83473aa62fc8560c2a3c0c,113841782,219912892,157080637142857142857 \ No newline at end of file diff --git a/sources/_sector/dex/trades/optimism/_sources.yml b/sources/_sector/dex/trades/optimism/_sources.yml index 92c1a7d2d65..ef43f0bf45a 100644 --- a/sources/_sector/dex/trades/optimism/_sources.yml +++ b/sources/_sector/dex/trades/optimism/_sources.yml @@ -101,6 +101,9 @@ sources: - name: swaap_v2_optimism tables: - name: Vault_evt_Swap + - name: timeswap_v2_optimism + tables: + - name: TimeswapV2Option_evt_Swap - name: saddle_finance_optimism tables: - name: SwapFlashLoan_evt_TokenSwap From 5255c7a48658634a4e7112fdafdc2c3c9ee6a343 Mon Sep 17 00:00:00 2001 From: jeff-dude <102681548+jeff-dude@users.noreply.github.com> Date: Fri, 24 Jan 2025 17:03:43 -0500 Subject: [PATCH 05/21] update amount usd macro to include native prices (#7546) --- dbt_subprojects/dex/macros/add_amount_usd.sql | 2 +- sources/_subprojects_outputs/hourly_spellbook/_sources.yml | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/dbt_subprojects/dex/macros/add_amount_usd.sql b/dbt_subprojects/dex/macros/add_amount_usd.sql index c0414440fc4..ff4cbde3d98 100644 --- a/dbt_subprojects/dex/macros/add_amount_usd.sql +++ b/dbt_subprojects/dex/macros/add_amount_usd.sql @@ -23,7 +23,7 @@ WITH trusted_tokens AS ( , minute , price FROM - {{ source('prices','usd') }} + {{ source('prices','usd_with_native') }} {% if is_incremental() %} WHERE {{ incremental_predicate('minute') }} diff --git a/sources/_subprojects_outputs/hourly_spellbook/_sources.yml b/sources/_subprojects_outputs/hourly_spellbook/_sources.yml index a5a273cd1b3..127a240334d 100644 --- a/sources/_subprojects_outputs/hourly_spellbook/_sources.yml +++ b/sources/_subprojects_outputs/hourly_spellbook/_sources.yml @@ -16,6 +16,7 @@ sources: - name: usd_latest - name: usd_daily - name: usd_forward_fill + - name: usd_with_native - name: lending tables: From 6c1d778616e0d249c920cce33eb65af026150191 Mon Sep 17 00:00:00 2001 From: viniabussafi <131974393+viniabussafi@users.noreply.github.com> Date: Sat, 25 Jan 2025 19:42:53 +0000 Subject: [PATCH 06/21] quick fix for dex prices and erc4626 token prices on balancer macros (#7540) * quick fix for dex prices on balancer macros * trigger CI run * trigger CI run 1 * also fix erc4626 prices condition * again * again * again --------- Co-authored-by: jeff-dude <102681548+jeff-dude@users.noreply.github.com> --- .../balancer/balancer_bpt_prices_macro.sql | 8 ++++---- .../balancer/balancer_liquidity_macro.sql | 20 ++++++++----------- .../balancer/balancer_protocol_fee_macro.sql | 20 ++++++++----------- ..._token_balance_changes_daily_agg_macro.sql | 20 ++++++++----------- .../balancer_v2_avalanche_c_liquidity.sql | 2 +- .../balancer_v2_avalanche_c_protocol_fee.sql | 2 +- 6 files changed, 30 insertions(+), 42 deletions(-) diff --git a/dbt_macros/shared/balancer/balancer_bpt_prices_macro.sql b/dbt_macros/shared/balancer/balancer_bpt_prices_macro.sql index 9a0ad174f84..1fd2d645f7a 100644 --- a/dbt_macros/shared/balancer/balancer_bpt_prices_macro.sql +++ b/dbt_macros/shared/balancer/balancer_bpt_prices_macro.sql @@ -395,16 +395,16 @@ WITH pool_labels AS ( GROUP BY 1, 2, 3 ), - erc4626_prices AS( + erc4626_prices AS ( SELECT - date_trunc('day', minute) AS day, + DATE_TRUNC('day', minute) AS day, wrapped_token AS token, decimals, APPROX_PERCENTILE(median_price, 0.5) AS price, - DATE_TRUNC ('day', next_change) AS next_change + LEAD(DATE_TRUNC('day', minute), 1, CURRENT_DATE + INTERVAL '1' day) OVER (PARTITION BY wrapped_token ORDER BY date_trunc('day', minute)) AS next_change FROM {{ source('balancer_v3' , 'erc4626_token_prices') }} WHERE blockchain = '{{blockchain}}' - GROUP BY 1, 2, 3, 5 + GROUP BY 1, 2, 3 ), swaps_changes AS ( diff --git a/dbt_macros/shared/balancer/balancer_liquidity_macro.sql b/dbt_macros/shared/balancer/balancer_liquidity_macro.sql index ee14b2bf6b9..6a4c46424ac 100644 --- a/dbt_macros/shared/balancer/balancer_liquidity_macro.sql +++ b/dbt_macros/shared/balancer/balancer_liquidity_macro.sql @@ -31,10 +31,8 @@ WITH pool_labels AS ( approx_percentile(median_price, 0.5) AS price, sum(sample_size) AS sample_size FROM {{ source('dex', 'prices') }} - WHERE - (('{{blockchain}}' = 'sonic' AND contract_address != 0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38) - OR ('{{blockchain}}' = 'fantom' AND contract_address NOT IN (0xde1e704dae0b4051e80dabb26ab6ad6c12262da0, 0x5ddb92a5340fd0ead3987d3661afcd6104c3b757))) - AND blockchain = '{{blockchain}}' + WHERE blockchain = '{{blockchain}}' + AND contract_address NOT IN (0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38, 0xde1e704dae0b4051e80dabb26ab6ad6c12262da0, 0x5ddb92a5340fd0ead3987d3661afcd6104c3b757) GROUP BY 1, 2 HAVING sum(sample_size) > 3 ), @@ -339,10 +337,8 @@ WITH pool_labels AS ( approx_percentile(median_price, 0.5) AS price, sum(sample_size) AS sample_size FROM {{ source('dex', 'prices') }} - WHERE - (('{{blockchain}}' = 'sonic' AND contract_address != 0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38) - OR ('{{blockchain}}' = 'fantom' AND contract_address NOT IN (0xde1e704dae0b4051e80dabb26ab6ad6c12262da0, 0x5ddb92a5340fd0ead3987d3661afcd6104c3b757))) - AND blockchain = '{{blockchain}}' + WHERE blockchain = '{{blockchain}}' + AND contract_address NOT IN (0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38, 0xde1e704dae0b4051e80dabb26ab6ad6c12262da0, 0x5ddb92a5340fd0ead3987d3661afcd6104c3b757) GROUP BY 1, 2 HAVING sum(sample_size) > 3 ), @@ -387,16 +383,16 @@ WITH pool_labels AS ( GROUP BY 1 ), - erc4626_prices AS( + erc4626_prices AS ( SELECT - date_trunc('day', minute) AS day, + DATE_TRUNC('day', minute) AS day, wrapped_token AS token, decimals, APPROX_PERCENTILE(median_price, 0.5) AS price, - DATE_TRUNC ('day', next_change) AS next_change + LEAD(DATE_TRUNC('day', minute), 1, CURRENT_DATE + INTERVAL '1' day) OVER (PARTITION BY wrapped_token ORDER BY date_trunc('day', minute)) AS next_change FROM {{ source('balancer_v3' , 'erc4626_token_prices') }} WHERE blockchain = '{{blockchain}}' - GROUP BY 1, 2, 3, 5 + GROUP BY 1, 2, 3 ), swaps_changes AS ( diff --git a/dbt_macros/shared/balancer/balancer_protocol_fee_macro.sql b/dbt_macros/shared/balancer/balancer_protocol_fee_macro.sql index 4abba59002c..2e722d0fded 100644 --- a/dbt_macros/shared/balancer/balancer_protocol_fee_macro.sql +++ b/dbt_macros/shared/balancer/balancer_protocol_fee_macro.sql @@ -36,10 +36,8 @@ WITH pool_labels AS ( approx_percentile(median_price, 0.5) AS price, sum(sample_size) AS sample_size FROM {{ source('dex', 'prices') }} - WHERE - (('{{blockchain}}' = 'sonic' AND contract_address != 0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38) - OR ('{{blockchain}}' = 'fantom' AND contract_address NOT IN (0xde1e704dae0b4051e80dabb26ab6ad6c12262da0, 0x5ddb92a5340fd0ead3987d3661afcd6104c3b757))) - AND blockchain = '{{blockchain}}' + WHERE blockchain = '{{blockchain}}' + AND contract_address NOT IN (0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38, 0xde1e704dae0b4051e80dabb26ab6ad6c12262da0, 0x5ddb92a5340fd0ead3987d3661afcd6104c3b757) GROUP BY 1, 2 HAVING sum(sample_size) > 3 ), @@ -221,10 +219,8 @@ WITH pool_labels AS ( approx_percentile(median_price, 0.5) AS price, sum(sample_size) AS sample_size FROM {{ source('dex', 'prices') }} - WHERE - (('{{blockchain}}' = 'sonic' AND contract_address != 0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38) - OR ('{{blockchain}}' = 'fantom' AND contract_address NOT IN (0xde1e704dae0b4051e80dabb26ab6ad6c12262da0, 0x5ddb92a5340fd0ead3987d3661afcd6104c3b757))) - AND blockchain = '{{blockchain}}' + WHERE blockchain = '{{blockchain}}' + AND contract_address NOT IN (0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38, 0xde1e704dae0b4051e80dabb26ab6ad6c12262da0, 0x5ddb92a5340fd0ead3987d3661afcd6104c3b757) GROUP BY 1, 2 HAVING sum(sample_size) > 3 ), @@ -272,16 +268,16 @@ WITH pool_labels AS ( FROM bpt_prices_1 ), - erc4626_prices AS( + erc4626_prices AS ( SELECT - date_trunc('day', minute) AS day, + DATE_TRUNC('day', minute) AS day, wrapped_token AS token, decimals, APPROX_PERCENTILE(median_price, 0.5) AS price, - DATE_TRUNC ('day', next_change) AS next_change + LEAD(DATE_TRUNC('day', minute), 1, CURRENT_DATE + INTERVAL '1' day) OVER (PARTITION BY wrapped_token ORDER BY date_trunc('day', minute)) AS next_change FROM {{ source('balancer_v3' , 'erc4626_token_prices') }} WHERE blockchain = '{{blockchain}}' - GROUP BY 1, 2, 3, 5 + GROUP BY 1, 2, 3 ), daily_protocol_fee_collected AS ( diff --git a/dbt_macros/shared/balancer/balancer_token_balance_changes_daily_agg_macro.sql b/dbt_macros/shared/balancer/balancer_token_balance_changes_daily_agg_macro.sql index 1c45231acf5..8119efa0594 100644 --- a/dbt_macros/shared/balancer/balancer_token_balance_changes_daily_agg_macro.sql +++ b/dbt_macros/shared/balancer/balancer_token_balance_changes_daily_agg_macro.sql @@ -25,10 +25,8 @@ WITH approx_percentile(median_price, 0.5) AS price, sum(sample_size) AS sample_size FROM {{ source('dex', 'prices') }} - WHERE - (('{{blockchain}}' = 'sonic' AND contract_address != 0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38) - OR ('{{blockchain}}' = 'fantom' AND contract_address NOT IN (0xde1e704dae0b4051e80dabb26ab6ad6c12262da0, 0x5ddb92a5340fd0ead3987d3661afcd6104c3b757))) - AND blockchain = '{{blockchain}}' + WHERE blockchain = '{{blockchain}}' + AND contract_address NOT IN (0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38, 0xde1e704dae0b4051e80dabb26ab6ad6c12262da0, 0x5ddb92a5340fd0ead3987d3661afcd6104c3b757) {% if is_incremental() %} AND {{ incremental_predicate('hour') }} {% endif %} @@ -216,10 +214,8 @@ WITH approx_percentile(median_price, 0.5) AS price, sum(sample_size) AS sample_size FROM {{ source('dex', 'prices') }} - WHERE - (('{{blockchain}}' = 'sonic' AND contract_address != 0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38) - OR ('{{blockchain}}' = 'fantom' AND contract_address NOT IN (0xde1e704dae0b4051e80dabb26ab6ad6c12262da0, 0x5ddb92a5340fd0ead3987d3661afcd6104c3b757))) - AND blockchain = '{{blockchain}}' + WHERE blockchain = '{{blockchain}}' + AND contract_address NOT IN (0x039e2fb66102314ce7b64ce5ce3e5183bc94ad38, 0xde1e704dae0b4051e80dabb26ab6ad6c12262da0, 0x5ddb92a5340fd0ead3987d3661afcd6104c3b757) {% if is_incremental() %} AND {{ incremental_predicate('hour') }} {% endif %} @@ -272,16 +268,16 @@ WITH GROUP BY 1 ), - erc4626_prices AS( + erc4626_prices AS ( SELECT - date_trunc('day', minute) AS day, + DATE_TRUNC('day', minute) AS day, wrapped_token AS token, decimals, APPROX_PERCENTILE(median_price, 0.5) AS price, - DATE_TRUNC ('day', next_change) AS next_change + LEAD(DATE_TRUNC('day', minute), 1, CURRENT_DATE + INTERVAL '1' day) OVER (PARTITION BY wrapped_token ORDER BY date_trunc('day', minute)) AS next_change FROM {{ source('balancer_v3' , 'erc4626_token_prices') }} WHERE blockchain = '{{blockchain}}' - GROUP BY 1, 2, 3, 5 + GROUP BY 1, 2, 3 ), daily_balance AS ( diff --git a/dbt_subprojects/hourly_spellbook/models/_project/balancer/liquidity/avalanche_c/balancer_v2_avalanche_c_liquidity.sql b/dbt_subprojects/hourly_spellbook/models/_project/balancer/liquidity/avalanche_c/balancer_v2_avalanche_c_liquidity.sql index 1a214679e9d..e44b1690881 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/balancer/liquidity/avalanche_c/balancer_v2_avalanche_c_liquidity.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/balancer/liquidity/avalanche_c/balancer_v2_avalanche_c_liquidity.sql @@ -18,4 +18,4 @@ base_spells_namespace = 'balancer', pool_labels_spell = source('labels', 'balancer_v2_pools') ) -}} +}} \ No newline at end of file diff --git a/dbt_subprojects/hourly_spellbook/models/_project/balancer/protocol_fee/avalanche_c/balancer_v2_avalanche_c_protocol_fee.sql b/dbt_subprojects/hourly_spellbook/models/_project/balancer/protocol_fee/avalanche_c/balancer_v2_avalanche_c_protocol_fee.sql index c041090fa1e..0a16b233617 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/balancer/protocol_fee/avalanche_c/balancer_v2_avalanche_c_protocol_fee.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/balancer/protocol_fee/avalanche_c/balancer_v2_avalanche_c_protocol_fee.sql @@ -17,4 +17,4 @@ base_spells_namespace = 'balancer', pool_labels_spell = source('labels', 'balancer_v2_pools') ) -}} \ No newline at end of file +}} From d8ebfc47c678256fd220cbfa6208f36b2d5ae556 Mon Sep 17 00:00:00 2001 From: ppclunghe <90045511+ppclunghe@users.noreply.github.com> Date: Sat, 25 Jan 2025 20:43:04 +0100 Subject: [PATCH 07/21] lido.accounting updates (#7535) * lido.accounting updates * blockchain adding --------- Co-authored-by: jeff-dude <102681548+jeff-dude@users.noreply.github.com> --- ...lido_accounting_ethereum_buffer_inflow.sql | 5 +- ...ido_accounting_ethereum_buffer_outflow.sql | 4 +- ...counting_ethereum_dai_referral_payment.sql | 65 +--- .../lido_accounting_ethereum_deposits.sql | 2 +- .../lido_accounting_ethereum_fundraising.sql | 66 ++-- ...counting_ethereum_ldo_referral_payment.sql | 110 ++---- ...lido_accounting_ethereum_lego_expenses.sql | 82 ++-- ...counting_ethereum_liquidity_incentives.sql | 360 +++++++++++++++--- ...ido_accounting_ethereum_lox_incentives.sql | 108 +++--- ...accounting_ethereum_operating_expenses.sql | 126 +++--- ...ido_accounting_ethereum_other_expenses.sql | 16 +- .../lido_accounting_ethereum_other_income.sql | 131 ++++--- .../lido_accounting_ethereum_revenue.sql | 22 +- ...unting_ethereum_steth_referral_payment.sql | 52 ++- .../lido_accounting_ethereum_trp_expenses.sql | 63 ++- .../lido_accounting_ethereum_withdrawals.sql | 3 +- 16 files changed, 680 insertions(+), 535 deletions(-) diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_buffer_inflow.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_buffer_inflow.sql index f44c1168e09..44fabf15a11 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_buffer_inflow.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_buffer_inflow.sql @@ -7,12 +7,9 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["gregshestakovlido", "ppclunghe", "xadcv"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} ---https://dune.com/queries/2488514 ---ref{{'lido_accounting_ethereum_buffer_inflow'}} - SELECT evt_block_time as period, amount as amount,0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 as token, evt_tx_hash, date_trunc('day', evt_block_time) as day FROM {{source('lido_ethereum','steth_evt_Submitted')}} diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_buffer_outflow.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_buffer_outflow.sql index a869f683e50..1a664c8d355 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_buffer_outflow.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_buffer_outflow.sql @@ -7,11 +7,9 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["gregshestakovlido", "ppclunghe", "xadcv"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} ---https://dune.com/queries/2488552 ---ref{{'lido_accounting_ethereum_buffer_outflow'}} SELECT evt_block_time as period, amountOfETHLocked as amount, 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 AS token, evt_tx_hash, date_trunc('day', evt_block_time) as day FROM {{source('lido_ethereum','WithdrawalQueueERC721_evt_WithdrawalsFinalized')}} diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_dai_referral_payment.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_dai_referral_payment.sql index 92db59d983c..16549d473b3 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_dai_referral_payment.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_dai_referral_payment.sql @@ -7,73 +7,12 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["pipistrella", "adcv", "zergil1397", "lido"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} ---https://dune.com/queries/2348586 ---ref{{'lido_accounting_dai_referral_payment'}} - -with tokens AS ( -select * from (values - (0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32), --LDO - (0x6B175474E89094C44Da98b954EedeAC495271d0F), --DAI - (0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48), --USDC - (0xdAC17F958D2ee523a2206206994597C13D831ec7), -- USDT - (0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2), --WETH - (0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0), --MATIC - (0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84), --stETH - (0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0) --wstETH -) as tokens(address)), - -multisigs_list AS ( -select * from (values -(0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), -(0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), -(0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager -(0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 -(0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 -(0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 -(0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager -(0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), -(0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), -(0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), -(0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), -(0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig -(0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), -(0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), -(0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), -(0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), -(0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig') -) as list(address, chain, name) - -), - -intermediate_addresses AS ( -select * from (values -(0xe3224542066d3bbc02bc3d70b641be4bc6f40e36, 'Jumpgate(Solana)'), -(0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), -(0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), -(0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), -(0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), -(0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra -(0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') -) as list(address, name) -), - -dai_referral_payments_addr AS ( +with dai_referral_payments_addr AS ( SELECT _recipient AS address FROM {{source('lido_ethereum','AllowedRecipientsRegistry_evt_RecipientAdded')}} - WHERE - ( - NOT EXISTS (SELECT _recipient FROM {{source('lido_ethereum','AllowedRecipientsRegistry_evt_RecipientRemoved')}}) - OR ( - EXISTS (SELECT _recipient FROM {{source('lido_ethereum','AllowedRecipientsRegistry_evt_RecipientRemoved')}}) - AND - _recipient NOT IN (SELECT _recipient FROM {{source('lido_ethereum','AllowedRecipientsRegistry_evt_RecipientRemoved')}}) - ) - ) UNION ALL SELECT 0xaf8aE6955d07776aB690e565Ba6Fbc79B8dE3a5d --rhino ), diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_deposits.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_deposits.sql index 65efbc5753e..ae1234d55bb 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_deposits.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_deposits.sql @@ -9,7 +9,7 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["ppclunghe", "gregshestakovlido"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_fundraising.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_fundraising.sql index f3369bb0df2..6ec97e2becd 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_fundraising.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_fundraising.sql @@ -7,7 +7,7 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["pipistrella", "adcv", "zergil1397", "lido"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} @@ -24,49 +24,39 @@ select * from (values ) as tokens(address)), multisigs_list AS ( -select * from (values -(0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), -(0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), -(0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager -(0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 -(0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 -(0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 -(0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager -(0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), -(0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), -(0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), -(0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), -(0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig -(0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), -(0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), -(0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), -(0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), -(0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig') -) as list(address, chain, name) + select * from (values + (0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), + (0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), + (0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager + (0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 + (0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 + (0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 + (0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager + (0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), + (0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), + (0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), + (0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), + (0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig + (0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), + (0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), + (0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), + (0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), + (0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig'), + (0x606f77BF3dd6Ed9790D9771C7003f269a385D942, 'Ethereum', 'AllianceMsig') + ) as list(address, chain, name) ), diversifications_addresses AS ( -select * from (values -(0x489f04eeff0ba8441d42736549a1f1d6cca74775, '1round_1'), -(0x689e03565e36b034eccf12d182c3dc38b2bb7d33, '1round_2'), -(0xA9b2F5ce3aAE7374a62313473a74C98baa7fa70E, '2round') -) as list(address, name) + select * from (values + (0x489f04eeff0ba8441d42736549a1f1d6cca74775, '1round_1'), + (0x689e03565e36b034eccf12d182c3dc38b2bb7d33, '1round_2'), + (0xA9b2F5ce3aAE7374a62313473a74C98baa7fa70E, '2round') + ) as list(address, name) ), -intermediate_addresses AS ( -select * from (values -(0xe3224542066d3bbc02bc3d70b641be4bc6f40e36, 'Jumpgate(Solana)'), -(0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), -(0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), -(0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), -(0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), -(0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra -(0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') -) as list(address, name) -), fundraising_txs AS ( select diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_ldo_referral_payment.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_ldo_referral_payment.sql index fb53e3eef02..93b64f280d9 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_ldo_referral_payment.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_ldo_referral_payment.sql @@ -7,85 +7,51 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["pipistrella", "adcv", "zergil1397", "lido"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} ---https://dune.com/queries/2012004 ---ref{{'lido_accounting_ldo_referral_payment'}} -with tokens AS ( -select * from (values - (0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32), --LDO - (0x6B175474E89094C44Da98b954EedeAC495271d0F), --DAI - (0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48), --USDC - (0xdAC17F958D2ee523a2206206994597C13D831ec7), -- USDT - (0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2), --WETH - (0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0), --MATIC - (0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84), --stETH - (0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0) --wstETH -) as tokens(address)), +with multisigs_list AS ( + select * from (values + (0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), + (0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), + (0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager + (0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 + (0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 + (0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 + (0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager + (0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), + (0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), + (0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), + (0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), + (0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig + (0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), + (0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), + (0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), + (0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), + (0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig'), + (0x606f77BF3dd6Ed9790D9771C7003f269a385D942, 'Ethereum', 'AllianceMsig') + ) as list(address, chain, name) - -multisigs_list AS ( -select * from (values -(0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), -(0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), -(0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager -(0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 -(0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 -(0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 -(0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager -(0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), -(0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), -(0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), -(0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), -(0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig -(0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), -(0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), -(0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), -(0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), -(0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig') -) as list(address, chain, name) - -), - -diversifications_addresses AS ( -select * from (values -(0x489f04eeff0ba8441d42736549a1f1d6cca74775, '1round_1'), -(0x689e03565e36b034eccf12d182c3dc38b2bb7d33, '1round_2'), -(0xA9b2F5ce3aAE7374a62313473a74C98baa7fa70E, '2round') -) as list(address, name) -), - -intermediate_addresses AS ( -select * from (values -(0xe3224542066d3bbc02bc3d70b641be4bc6f40e36, 'Jumpgate(Solana)'), -(0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), -(0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), -(0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), -(0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), -(0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra -(0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') -) as list(address, name) ), ldo_referral_payments_addr AS ( -select * from (values -(0x558247e365be655f9144e1a0140d793984372ef3), -(0x6DC9657C2D90D57cADfFB64239242d06e6103E43), -(0xDB2364dD1b1A733A690Bf6fA44d7Dd48ad6707Cd), -(0x586b9b2F8010b284A0197f392156f1A7Eb5e86e9), -(0xC976903918A0AF01366B31d97234C524130fc8B1), -(0x53773e034d9784153471813dacaff53dbbb78e8c), -(0x883f91D6F3090EA26E96211423905F160A9CA01d), -(0xf6502Ea7E9B341702609730583F2BcAB3c1dC041), -(0x82AF9d2Ea81810582657f6DC04B1d7d0D573F616), -(0x351806B55e93A8Bcb47Be3ACAF71584deDEaB324), -(0x9e2b6378ee8ad2A4A95Fe481d63CAba8FB0EBBF9), -(0xaf8aE6955d07776aB690e565Ba6Fbc79B8dE3a5d) --rhino -) as list(address) + select * from (values + (0x558247e365be655f9144e1a0140d793984372ef3), + (0x6DC9657C2D90D57cADfFB64239242d06e6103E43), + (0xDB2364dD1b1A733A690Bf6fA44d7Dd48ad6707Cd), + (0x586b9b2F8010b284A0197f392156f1A7Eb5e86e9), + (0xC976903918A0AF01366B31d97234C524130fc8B1), + (0x53773e034d9784153471813dacaff53dbbb78e8c), + (0x883f91D6F3090EA26E96211423905F160A9CA01d), + (0xf6502Ea7E9B341702609730583F2BcAB3c1dC041), + (0x82AF9d2Ea81810582657f6DC04B1d7d0D573F616), + (0x351806B55e93A8Bcb47Be3ACAF71584deDEaB324), + (0x9e2b6378ee8ad2A4A95Fe481d63CAba8FB0EBBF9), + (0xaf8aE6955d07776aB690e565Ba6Fbc79B8dE3a5d) --rhino + ) as list(address) ), diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_lego_expenses.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_lego_expenses.sql index 3295d946673..933fc7aa315 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_lego_expenses.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_lego_expenses.sql @@ -7,12 +7,9 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["pipistrella", "adcv", "zergil1397", "lido"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} ---https://dune.com/queries/2012131 ---ref{{'lido_accounting_lego_expenses'}} - with tokens AS ( select * from (values @@ -28,48 +25,55 @@ select * from (values multisigs_list AS ( -select * from (values -(0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), -(0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), -(0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager -(0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 -(0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 -(0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 -(0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager -(0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), -(0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), -(0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), -(0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), -(0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig -(0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), -(0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), -(0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), -(0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), -(0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig') -) as list(address, chain, name) + select * from (values + (0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), + (0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), + (0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager + (0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 + (0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 + (0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 + (0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager + (0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), + (0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), + (0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), + (0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), + (0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig + (0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), + (0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), + (0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), + (0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), + (0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig'), + (0x606f77BF3dd6Ed9790D9771C7003f269a385D942, 'Ethereum', 'AllianceMsig') + ) as list(address, chain, name) ), diversifications_addresses AS ( -select * from (values -(0x489f04eeff0ba8441d42736549a1f1d6cca74775, '1round_1'), -(0x689e03565e36b034eccf12d182c3dc38b2bb7d33, '1round_2'), -(0xA9b2F5ce3aAE7374a62313473a74C98baa7fa70E, '2round') -) as list(address, name) + select * from (values + (0x489f04eeff0ba8441d42736549a1f1d6cca74775, '1round_1'), + (0x689e03565e36b034eccf12d182c3dc38b2bb7d33, '1round_2'), + (0xA9b2F5ce3aAE7374a62313473a74C98baa7fa70E, '2round') + ) as list(address, name) ), intermediate_addresses AS ( -select * from (values -(0xe3224542066d3bbc02bc3d70b641be4bc6f40e36, 'Jumpgate(Solana)'), -(0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), -(0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), -(0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), -(0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), -(0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra -(0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') -) as list(address, name) + select * from (values + (0xe3224542066d3bbc02bc3d70b641be4bc6f40e36, 'Jumpgate(Solana)'), + (0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), + (0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), + (0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), + (0x9de443adc5a411e83f1878ef24c3f52c61571e72, 'Base bridge'), + (0x41527B2d03844dB6b0945f25702cB958b6d55989, 'zkSync bridge'), + (0xb948a93827d68a82F6513Ad178964Da487fe2BD9, 'BnB bridge'), + (0x051F1D88f0aF5763fB888eC4378b4D8B29ea3319, 'Linea bridge'), + (0x2D001d79E5aF5F65a939781FE228B267a8Ed468B, 'Mantle bridge'), + (0x6625C6332c9F91F2D27c304E729B86db87A3f504, 'Scroll bridge'), + (0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), + (0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra + (0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') + ) as list(address, name) ), diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_liquidity_incentives.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_liquidity_incentives.sql index d17991e4a21..3461686d3d2 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_liquidity_incentives.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_liquidity_incentives.sql @@ -7,76 +7,93 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["pipistrella", "adcv", "zergil1397", "lido"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} ---https://dune.com/queries/2011977 ---ref{{'lido_accounting_ethereum_liquidity_incentives'}} with tokens AS ( select * from (values - (0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32), --LDO - (0xfdb794692724153d1488ccdbe0c56c252596735f), --Opti LDO - (0x13ad51ed4f1b7e9dc168d8a00cb3f4ddd85efa60), --Arbi LDO - (0x6B175474E89094C44Da98b954EedeAC495271d0F), --DAI - (0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48), --USDC - (0xdAC17F958D2ee523a2206206994597C13D831ec7), --USDT - (0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2), --WETH - (0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0), --MATIC - (0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84), --stETH - (0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0), --wstETH + (0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32),--LDO + (0xfdb794692724153d1488ccdbe0c56c252596735f),--Opti LDO + (0x13ad51ed4f1b7e9dc168d8a00cb3f4ddd85efa60),--Arbi LDO + (0x6B175474E89094C44Da98b954EedeAC495271d0F),--DAI + (0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48),--USDC + (0xdAC17F958D2ee523a2206206994597C13D831ec7),--USDT + (0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2),--WETH + (0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0),--MATIC + (0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84),--stETH + (0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0),--wstETH (0x1F32b1c2345538c0c6f582fCB022739c4A194Ebb),-- Opti wstETH - (0x5979D7b546E38E414F7E9822514be443A4800529) --Arbi wstETH + (0x5979D7b546E38E414F7E9822514be443A4800529),--Arbi wstETH + (0xc1CBa3fCea344f92D9239c08C0568f6F2F0ee452),-- Base wstETH + (0x703b52F2b28fEbcB60E1372858AF5b18849FE867),-- zkSync wstETH + (0x26c5e01524d2E6280A48F2c50fF6De7e52E9611C),-- bnb wstETH + (0xB5beDd42000b71FddE22D3eE8a79Bd49A568fC8F),--Linea wstETH + (0x458ed78EB972a369799fb278c0243b25e5242A83),--Mantle wstETH + (0xf610A9dfB7C89644979b4A0f27063E9e7d7Cda32) --Scroll wstETH ) as tokens(address)), multisigs_list AS ( -select * from (values -(0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), -(0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), -(0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager -(0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 -(0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 -(0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 -(0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager -(0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), -(0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), -(0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), -(0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), -(0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig -(0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), -(0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), -(0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), -(0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), -(0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig') -) as list(address, chain, name) + select * from (values + (0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), + (0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), + (0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager + (0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 + (0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 + (0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 + (0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager + (0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), + (0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), + (0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), + (0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), + (0x5A9d695c518e95CD6Ea101f2f25fC2AE18486A61, 'Base', 'LiquidityRewardsMsig'), + (0x65B05f4fCa066316383b0FE196C76C873a4dFD02, 'zkSync', 'LiquidityRewardsMsig'), + (0x5A9d695c518e95CD6Ea101f2f25fC2AE18486A61, 'bnb', 'LiquidityRewardsMsig'), + (0xA8ef4Db842D95DE72433a8b5b8FF40CB7C74C1b6, 'Linea', 'LiquidityRewardsMsig'), + (0x6Ef6cd595b775B9752df83C8b1700235b21FE2f6, 'Mantle', 'LiquidityRewardsMsig'), + (0x7bA516FB4512877C016907D6e70FAE96fbbdf8cD, 'Scroll', 'LiquidityRewardsMsig'), + (0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig + (0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), + (0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), + (0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), + (0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), + (0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig'), + (0x606f77BF3dd6Ed9790D9771C7003f269a385D942, 'Ethereum', 'AllianceMsig') + ) as list(address, chain, name) ), diversifications_addresses AS ( -select * from (values -(0x489f04eeff0ba8441d42736549a1f1d6cca74775, '1round_1'), -(0x689e03565e36b034eccf12d182c3dc38b2bb7d33, '1round_2'), -(0xA9b2F5ce3aAE7374a62313473a74C98baa7fa70E, '2round') -) as list(address, name) + select * from (values + (0x489f04eeff0ba8441d42736549a1f1d6cca74775, '1round_1'), + (0x689e03565e36b034eccf12d182c3dc38b2bb7d33, '1round_2'), + (0xA9b2F5ce3aAE7374a62313473a74C98baa7fa70E, '2round') + ) as list(address, name) ), intermediate_addresses AS ( -select * from (values -(0xe3224542066d3bbc02bc3d70b641be4bc6f40e36, 'Jumpgate(Solana)'), -(0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), -(0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), -(0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), -(0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), -(0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra -(0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') -) as list(address, name) + select * from (values + (0xe3224542066d3bbc02bc3d70b641be4bc6f40e36, 'Jumpgate(Solana)'), + (0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), + (0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), + (0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), + (0x9de443adc5a411e83f1878ef24c3f52c61571e72, 'Base bridge'), + (0x41527B2d03844dB6b0945f25702cB958b6d55989, 'zkSync bridge'), + (0xb948a93827d68a82F6513Ad178964Da487fe2BD9, 'BnB bridge'), + (0x051F1D88f0aF5763fB888eC4378b4D8B29ea3319, 'Linea bridge'), + (0x2D001d79E5aF5F65a939781FE228B267a8Ed468B, 'Mantle bridge'), + (0x6625C6332c9F91F2D27c304E729B86db87A3f504, 'Scroll bridge'), + (0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), + (0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra + (0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') + ) as list(address, name) ), -ethereum_liquidity_incentives_txns AS ( +multichain_liquidity_incentives_txns AS ( -- Ethereum Liq Incentives SELECT evt_block_time, @@ -84,7 +101,8 @@ ethereum_liquidity_incentives_txns AS ( evt_tx_hash, to, "from", - contract_address + contract_address, + 'ethereum' as blockchain FROM {{source('erc20_ethereum','evt_transfer')}} WHERE "from" IN ( SELECT @@ -108,7 +126,8 @@ ethereum_liquidity_incentives_txns AS ( evt_tx_hash, to, "from", - contract_address + contract_address, + 'ethereum' as blockchain FROM {{source('erc20_ethereum','evt_transfer')}} WHERE to IN ( SELECT @@ -133,7 +152,8 @@ ethereum_liquidity_incentives_txns AS ( evt_tx_hash, to, "from", - contract_address + contract_address, + 'optimism' as blockchain FROM {{source('erc20_optimism','evt_transfer')}} WHERE "from" IN ( SELECT @@ -149,7 +169,8 @@ ethereum_liquidity_incentives_txns AS ( evt_tx_hash, to, "from", - contract_address + contract_address, + 'optimism' as blockchain FROM {{source('erc20_optimism','evt_transfer')}} WHERE to IN ( SELECT @@ -168,7 +189,8 @@ ethereum_liquidity_incentives_txns AS ( evt_tx_hash, to, "from", - contract_address + contract_address, + 'arbitrum' as blockchain FROM {{source('erc20_arbitrum','evt_transfer')}} WHERE "from" IN ( SELECT @@ -184,7 +206,8 @@ ethereum_liquidity_incentives_txns AS ( evt_tx_hash, to, "from", - contract_address + contract_address, + 'arbitrum' as blockchain FROM {{source('erc20_arbitrum','evt_transfer')}} WHERE to IN ( SELECT @@ -194,12 +217,229 @@ ethereum_liquidity_incentives_txns AS ( ) and "from" != 0x0000000000000000000000000000000000000000 + UNION ALL + -- Base Incentives + SELECT + evt_block_time, + CAST(value AS DOUBLE) AS value, + evt_tx_hash, + to, + "from", + contract_address, + 'base' as blockchain + FROM {{source('erc20_base','evt_transfer')}} + WHERE "from" IN ( + SELECT + address + FROM multisigs_list + WHERE name IN ('LiquidityRewardsMsig') AND chain = 'Base' + ) + AND to != 0x0000000000000000000000000000000000000000 + UNION ALL + SELECT + evt_block_time, + -CAST(value AS DOUBLE) AS value, + evt_tx_hash, + to, + "from", + contract_address, + 'base' as blockchain + FROM {{source('erc20_base','evt_transfer')}} + WHERE to IN ( + SELECT + address + FROM multisigs_list + WHERE name IN ('LiquidityRewardsMsig') AND chain = 'Base' + ) + and "from" != 0x0000000000000000000000000000000000000000 + + UNION ALL + -- zkSync Incentives + SELECT + evt_block_time, + CAST(value AS DOUBLE) AS value, + evt_tx_hash, + to, + "from", + contract_address, + 'zksync' as blockchain + FROM {{source('erc20_zksync','evt_transfer')}} + WHERE "from" IN ( + SELECT + address + FROM multisigs_list + WHERE name IN ('LiquidityRewardsMsig') AND chain = 'zkSync' + ) + AND to != 0x0000000000000000000000000000000000000000 + UNION ALL + SELECT + evt_block_time, + -CAST(value AS DOUBLE) AS value, + evt_tx_hash, + to, + "from", + contract_address, + 'zksync' as blockchain + FROM {{source('erc20_zksync','evt_transfer')}} + WHERE to IN ( + SELECT + address + FROM multisigs_list + WHERE name IN ('LiquidityRewardsMsig') AND chain = 'zkSync' + ) + and "from" != 0x0000000000000000000000000000000000000000 + + UNION ALL + -- bnb Incentives + SELECT + evt_block_time, + CAST(value AS DOUBLE) AS value, + evt_tx_hash, + to, + "from", + contract_address, + 'bnb' as blockchain + FROM {{source('erc20_bnb','evt_transfer')}} + WHERE "from" IN ( + SELECT + address + FROM multisigs_list + WHERE name IN ('LiquidityRewardsMsig') AND chain = 'bnb' + ) + AND to != 0x0000000000000000000000000000000000000000 + UNION ALL + SELECT + evt_block_time, + -CAST(value AS DOUBLE) AS value, + evt_tx_hash, + to, + "from", + contract_address, + 'bnb' as blockchain + FROM {{source('erc20_bnb','evt_transfer')}} + WHERE to IN ( + SELECT + address + FROM multisigs_list + WHERE name IN ('LiquidityRewardsMsig') AND chain = 'bnb' + ) + and "from" != 0x0000000000000000000000000000000000000000 + + UNION ALL + -- Linea Incentives + SELECT + evt_block_time, + CAST(value AS DOUBLE) AS value, + evt_tx_hash, + to, + "from", + contract_address, + 'linea' as blockchain + FROM {{source('erc20_linea','evt_transfer')}} + WHERE "from" IN ( + SELECT + address + FROM multisigs_list + WHERE name IN ('LiquidityRewardsMsig') AND chain = 'Linea' + ) + AND to != 0x0000000000000000000000000000000000000000 + UNION ALL + SELECT + evt_block_time, + -CAST(value AS DOUBLE) AS value, + evt_tx_hash, + to, + "from", + contract_address, + 'linea' as blockchain + FROM {{source('erc20_linea','evt_transfer')}} + WHERE to IN ( + SELECT + address + FROM multisigs_list + WHERE name IN ('LiquidityRewardsMsig') AND chain = 'Linea' + ) + and "from" != 0x0000000000000000000000000000000000000000 + + UNION ALL + -- Mantle Incentives + SELECT + evt_block_time, + CAST(value AS DOUBLE) AS value, + evt_tx_hash, + to, + "from", + contract_address, + 'mantle' as blockchain + FROM {{source('erc20_mantle','evt_transfer')}} + WHERE "from" IN ( + SELECT + address + FROM multisigs_list + WHERE name IN ('LiquidityRewardsMsig') AND chain = 'Mantle' + ) + AND to != 0x0000000000000000000000000000000000000000 + UNION ALL + SELECT + evt_block_time, + -CAST(value AS DOUBLE) AS value, + evt_tx_hash, + to, + "from", + contract_address, + 'mantle' as blockchain + FROM {{source('erc20_mantle','evt_transfer')}} + WHERE to IN ( + SELECT + address + FROM multisigs_list + WHERE name IN ('LiquidityRewardsMsig') AND chain = 'Mantle' + ) + and "from" != 0x0000000000000000000000000000000000000000 + + UNION ALL + -- Scroll Incentives + SELECT + evt_block_time, + CAST(value AS DOUBLE) AS value, + evt_tx_hash, + to, + "from", + contract_address, + 'scroll' as blockchain + FROM {{source('erc20_scroll','evt_transfer')}} + WHERE "from" IN ( + SELECT + address + FROM multisigs_list + WHERE name IN ('LiquidityRewardsMsig') AND chain = 'Scroll' + ) + AND to != 0x0000000000000000000000000000000000000000 + UNION ALL + SELECT + evt_block_time, + -CAST(value AS DOUBLE) AS value, + evt_tx_hash, + to, + "from", + contract_address, + 'scroll' as blockchain + FROM {{source('erc20_scroll','evt_transfer')}} + WHERE to IN ( + SELECT + address + FROM multisigs_list + WHERE name IN ('LiquidityRewardsMsig') AND chain = 'Scroll' + ) + and "from" != 0x0000000000000000000000000000000000000000 + ) SELECT evt_block_time AS period, evt_tx_hash, + blockchain, value AS amount_token, CASE WHEN contract_address = 0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf THEN 0x5a98fcbea516cf06857215779fd812ca3bef1b32 --anyLDO @@ -207,9 +447,15 @@ ethereum_liquidity_incentives_txns AS ( WHEN contract_address = 0x13ad51ed4f1b7e9dc168d8a00cb3f4ddd85efa60 THEN 0x5a98fcbea516cf06857215779fd812ca3bef1b32 --Arbi LDO WHEN contract_address = 0x1F32b1c2345538c0c6f582fCB022739c4A194Ebb THEN 0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0-- Opti wstETH WHEN contract_address = 0x5979D7b546E38E414F7E9822514be443A4800529 THEN 0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0-- Arbi wstETH + WHEN contract_address = 0xc1CBa3fCea344f92D9239c08C0568f6F2F0ee452 THEN 0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0-- Base wstETH + WHEN contract_address = 0x703b52F2b28fEbcB60E1372858AF5b18849FE867 THEN 0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0-- zkSync wstETH + WHEN contract_address = 0x26c5e01524d2E6280A48F2c50fF6De7e52E9611C THEN 0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0-- bnb wstETH + WHEN contract_address = 0xB5beDd42000b71FddE22D3eE8a79Bd49A568fC8F THEN 0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0-- Linea wstETH + WHEN contract_address = 0x458ed78EB972a369799fb278c0243b25e5242A83 THEN 0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0-- Mantle wstETH + WHEN contract_address = 0xf610A9dfB7C89644979b4A0f27063E9e7d7Cda32 THEN 0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0-- Scroll wstETH ELSE contract_address END AS token - FROM ethereum_liquidity_incentives_txns + FROM multichain_liquidity_incentives_txns WHERE contract_address IN (SELECT address FROM tokens) and value != 0 diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_lox_incentives.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_lox_incentives.sql index b300b7222b0..027b84c2ed8 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_lox_incentives.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_lox_incentives.sql @@ -7,14 +7,12 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["pipistrella", "adcv", "zergil1397", "lido"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} ---https://dune.com/queries/2012051 ---ref{{'lido_accounting_lox_incentives'}} with tokens AS ( -select * from (values + select * from (values (0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32), --LDO (0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf),--anyLDO (0xc3c7d422809852031b44ab29eec9f1eff2a58756), --Poly LDO @@ -32,48 +30,55 @@ select * from (values multisigs_list AS ( -select * from (values -(0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), -(0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), -(0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager -(0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 -(0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 -(0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 -(0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager -(0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), -(0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), -(0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), -(0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), -(0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig -(0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), -(0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), -(0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), -(0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), -(0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig') -) as list(address, chain, name) + select * from (values + (0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), + (0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), + (0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager + (0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 + (0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 + (0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 + (0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager + (0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), + (0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), + (0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), + (0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), + (0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig + (0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), + (0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), + (0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), + (0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), + (0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig'), + (0x606f77BF3dd6Ed9790D9771C7003f269a385D942, 'Ethereum', 'AllianceMsig') + ) as list(address, chain, name) ), diversifications_addresses AS ( -select * from (values -(0x489f04eeff0ba8441d42736549a1f1d6cca74775, '1round_1'), -(0x689e03565e36b034eccf12d182c3dc38b2bb7d33, '1round_2'), -(0xA9b2F5ce3aAE7374a62313473a74C98baa7fa70E, '2round') -) as list(address, name) + select * from (values + (0x489f04eeff0ba8441d42736549a1f1d6cca74775, '1round_1'), + (0x689e03565e36b034eccf12d182c3dc38b2bb7d33, '1round_2'), + (0xA9b2F5ce3aAE7374a62313473a74C98baa7fa70E, '2round') + ) as list(address, name) ), intermediate_addresses AS ( -select * from (values -(0xe3224542066d3bbc02bc3d70b641be4bc6f40e36, 'Jumpgate(Solana)'), -(0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), -(0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), -(0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), -(0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), -(0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra -(0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') -) as list(address, name) + select * from (values + (0xe3224542066d3bbc02bc3d70b641be4bc6f40e36, 'Jumpgate(Solana)'), + (0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), + (0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), + (0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), + (0x9de443adc5a411e83f1878ef24c3f52c61571e72, 'Base bridge'), + (0x41527B2d03844dB6b0945f25702cB958b6d55989, 'zkSync bridge'), + (0xb948a93827d68a82F6513Ad178964Da487fe2BD9, 'BnB bridge'), + (0x051F1D88f0aF5763fB888eC4378b4D8B29ea3319, 'Linea bridge'), + (0x2D001d79E5aF5F65a939781FE228B267a8Ed468B, 'Mantle bridge'), + (0x6625C6332c9F91F2D27c304E729B86db87A3f504, 'Scroll bridge'), + (0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), + (0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra + (0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') + ) as list(address, name) ), @@ -85,7 +90,8 @@ lox_incentives_txns AS ( evt_tx_hash, to, "from", - contract_address + contract_address, + 'polygon' as blockchain FROM {{source('erc20_polygon','evt_transfer')}} WHERE "from" IN ( SELECT @@ -103,7 +109,8 @@ lox_incentives_txns AS ( evt_tx_hash, to, "from", - contract_address + contract_address, + 'polygon' as blockchain FROM {{source('erc20_polygon','evt_transfer')}} WHERE to IN ( SELECT @@ -121,7 +128,8 @@ lox_incentives_txns AS ( evt_tx_hash, to, "from", - contract_address + contract_address, + 'ethereum' as blockchain FROM {{source('erc20_ethereum','evt_transfer')}} WHERE to IN ( SELECT @@ -139,7 +147,8 @@ lox_incentives_txns AS ( evt_tx_hash, to, "from", - contract_address + contract_address, + 'ethereum' as blockchain FROM {{source('erc20_ethereum','evt_transfer')}} WHERE "from" IN ( SELECT @@ -159,7 +168,8 @@ lox_incentives_txns AS ( evt_tx_hash, to, "from", - contract_address + contract_address, + 'ethereum' as blockchain FROM {{source('erc20_ethereum','evt_transfer')}} WHERE "from" IN ( SELECT @@ -180,7 +190,8 @@ lox_incentives_txns AS ( evt_tx_hash, to, "from", - contract_address + contract_address, + 'ethereum' as blockchain FROM {{source('erc20_ethereum','evt_transfer')}} WHERE to IN ( SELECT @@ -202,7 +213,8 @@ lox_incentives_txns AS ( evt_tx_hash, to, "from", - contract_address + contract_address, + 'ethereum' as blockchain FROM {{source('erc20_ethereum','evt_transfer')}} WHERE "from" IN ( SELECT @@ -223,7 +235,8 @@ lox_incentives_txns AS ( evt_tx_hash, to, "from", - contract_address + contract_address, + 'ethereum' as blockchain FROM {{source('erc20_ethereum','evt_transfer')}} WHERE to IN ( SELECT @@ -243,6 +256,7 @@ lox_incentives_txns AS ( SELECT evt_block_time AS period, evt_tx_hash, + blockchain, value AS amount_token, CASE WHEN contract_address = 0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf THEN 0x5a98fcbea516cf06857215779fd812ca3bef1b32 --anyLDO diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_operating_expenses.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_operating_expenses.sql index 75b9374855f..eb754e1264d 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_operating_expenses.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_operating_expenses.sql @@ -7,11 +7,9 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["pipistrella", "adcv", "zergil1397", "lido"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} ---https://dune.com/queries/2012094 ---ref{{'lido_accounting_operating_expenses'}} with tokens AS ( select * from (values @@ -27,79 +25,77 @@ select * from (values multisigs_list AS ( -select * from (values -(0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), -(0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), -(0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager -(0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 -(0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 -(0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 -(0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager -(0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), -(0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), -(0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), -(0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), -(0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig -(0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), -(0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), -(0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), -(0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), -(0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig') -) as list(address, chain, name) + select * from (values + (0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), + (0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), + (0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager + (0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 + (0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 + (0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 + (0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager + (0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), + (0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), + (0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), + (0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), + (0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig + (0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), + (0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), + (0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), + (0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), + (0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig'), + (0x606f77BF3dd6Ed9790D9771C7003f269a385D942, 'Ethereum', 'AllianceMsig') + ) as list(address, chain, name) ), diversifications_addresses AS ( -select * from (values -(0x489f04eeff0ba8441d42736549a1f1d6cca74775, '1round_1'), -(0x689e03565e36b034eccf12d182c3dc38b2bb7d33, '1round_2'), -(0xA9b2F5ce3aAE7374a62313473a74C98baa7fa70E, '2round') -) as list(address, name) + select * from (values + (0x489f04eeff0ba8441d42736549a1f1d6cca74775, '1round_1'), + (0x689e03565e36b034eccf12d182c3dc38b2bb7d33, '1round_2'), + (0xA9b2F5ce3aAE7374a62313473a74C98baa7fa70E, '2round') + ) as list(address, name) ), intermediate_addresses AS ( -select * from (values -(0xe3224542066d3bbc02bc3d70b641be4bc6f40e36, 'Jumpgate(Solana)'), -(0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), -(0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), -(0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), -(0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), -(0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra -(0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') -) as list(address, name) + select * from (values + (0xe3224542066d3bbc02bc3d70b641be4bc6f40e36, 'Jumpgate(Solana)'), + (0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), + (0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), + (0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), + (0x9de443adc5a411e83f1878ef24c3f52c61571e72, 'Base bridge'), + (0x41527B2d03844dB6b0945f25702cB958b6d55989, 'zkSync bridge'), + (0xb948a93827d68a82F6513Ad178964Da487fe2BD9, 'BnB bridge'), + (0x051F1D88f0aF5763fB888eC4378b4D8B29ea3319, 'Linea bridge'), + (0x2D001d79E5aF5F65a939781FE228B267a8Ed468B, 'Mantle bridge'), + (0x6625C6332c9F91F2D27c304E729B86db87A3f504, 'Scroll bridge'), + (0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), + (0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra + (0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') + ) as list(address, name) ), ldo_referral_payments_addr AS ( -select * from (values -(0x558247e365be655f9144e1a0140d793984372ef3), -(0x6DC9657C2D90D57cADfFB64239242d06e6103E43), -(0xDB2364dD1b1A733A690Bf6fA44d7Dd48ad6707Cd), -(0x586b9b2F8010b284A0197f392156f1A7Eb5e86e9), -(0xC976903918A0AF01366B31d97234C524130fc8B1), -(0x53773e034d9784153471813dacaff53dbbb78e8c), -(0x883f91D6F3090EA26E96211423905F160A9CA01d), -(0xf6502Ea7E9B341702609730583F2BcAB3c1dC041), -(0x82AF9d2Ea81810582657f6DC04B1d7d0D573F616), -(0x351806B55e93A8Bcb47Be3ACAF71584deDEaB324), -(0x9e2b6378ee8ad2A4A95Fe481d63CAba8FB0EBBF9), -(0xaf8aE6955d07776aB690e565Ba6Fbc79B8dE3a5d) --rhino -) as list(address) + select * from (values + (0x558247e365be655f9144e1a0140d793984372ef3), + (0x6DC9657C2D90D57cADfFB64239242d06e6103E43), + (0xDB2364dD1b1A733A690Bf6fA44d7Dd48ad6707Cd), + (0x586b9b2F8010b284A0197f392156f1A7Eb5e86e9), + (0xC976903918A0AF01366B31d97234C524130fc8B1), + (0x53773e034d9784153471813dacaff53dbbb78e8c), + (0x883f91D6F3090EA26E96211423905F160A9CA01d), + (0xf6502Ea7E9B341702609730583F2BcAB3c1dC041), + (0x82AF9d2Ea81810582657f6DC04B1d7d0D573F616), + (0x351806B55e93A8Bcb47Be3ACAF71584deDEaB324), + (0x9e2b6378ee8ad2A4A95Fe481d63CAba8FB0EBBF9), + (0xaf8aE6955d07776aB690e565Ba6Fbc79B8dE3a5d) --rhino + ) as list(address) ), dai_referral_payments_addr AS ( SELECT _recipient AS address FROM {{source('lido_ethereum','AllowedRecipientsRegistry_evt_RecipientAdded')}} - WHERE - ( - NOT EXISTS (SELECT _recipient FROM {{source('lido_ethereum','AllowedRecipientsRegistry_evt_RecipientRemoved')}}) - OR ( - EXISTS (SELECT _recipient FROM {{source('lido_ethereum','AllowedRecipientsRegistry_evt_RecipientRemoved')}}) - AND - _recipient NOT IN (SELECT _recipient FROM {{source('lido_ethereum','AllowedRecipientsRegistry_evt_RecipientRemoved')}}) - ) - ) UNION ALL SELECT 0xaf8aE6955d07776aB690e565Ba6Fbc79B8dE3a5d --rhino ), @@ -118,7 +114,7 @@ operating_expenses_txns AS ( SELECT address FROM multisigs_list - WHERE name IN ('ATCMsig', 'PMLMsig', 'RCCMsig') AND chain = 'Ethereum' + WHERE name IN ('ATCMsig', 'PMLMsig', 'RCCMsig', 'AllianceMsig') AND chain = 'Ethereum' ) AND to NOT IN ( SELECT address FROM multisigs_list @@ -146,7 +142,7 @@ operating_expenses_txns AS ( SELECT address FROM multisigs_list - WHERE name IN ('ATCMsig', 'PMLMsig', 'RCCMsig') AND chain = 'Ethereum' + WHERE name IN ('ATCMsig', 'PMLMsig', 'RCCMsig', 'AllianceMsig') AND chain = 'Ethereum' ) AND tr.type='call' AND (tr.call_type NOT IN ('delegatecall', 'callcode', 'staticcall') OR tr.call_type IS NULL) @@ -166,7 +162,7 @@ operating_expenses_txns AS ( SELECT address FROM multisigs_list - WHERE name IN ('ATCMsig', 'PMLMsig', 'RCCMsig') AND chain = 'Ethereum' + WHERE name IN ('ATCMsig', 'PMLMsig', 'RCCMsig', 'AllianceMsig') AND chain = 'Ethereum' ) AND "from" NOT IN ( SELECT address FROM multisigs_list @@ -194,7 +190,7 @@ operating_expenses_txns AS ( SELECT address FROM multisigs_list - WHERE name IN ('ATCMsig', 'PMLMsig', 'RCCMsig') AND chain = 'Ethereum' + WHERE name IN ('ATCMsig', 'PMLMsig', 'RCCMsig', 'AllianceMsig') AND chain = 'Ethereum' ) AND tr.type='call' AND (tr.call_type NOT IN ('delegatecall', 'callcode', 'staticcall') OR tr.call_type IS NULL) diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_other_expenses.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_other_expenses.sql index 288a999e1c1..94de08f13e9 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_other_expenses.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_other_expenses.sql @@ -7,16 +7,13 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["pipistrella", "adcv", "zergil1397", "lido"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} ---https://dune.com/queries/2012205 ---ref{{'lido_accounting_other_expenses'}} - with tokens AS ( -select * from (values + select * from (values (0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32), --LDO (0x6B175474E89094C44Da98b954EedeAC495271d0F), --DAI (0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48), --USDC @@ -48,7 +45,8 @@ multisigs_list AS ( (0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), (0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), (0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), - (0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig') + (0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig'), + (0x606f77BF3dd6Ed9790D9771C7003f269a385D942, 'Ethereum', 'AllianceMsig') ) as list(address, chain, name) ), @@ -67,6 +65,12 @@ intermediate_addresses AS ( (0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), (0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), (0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), + (0x9de443adc5a411e83f1878ef24c3f52c61571e72, 'Base bridge'), + (0x41527B2d03844dB6b0945f25702cB958b6d55989, 'zkSync bridge'), + (0xb948a93827d68a82F6513Ad178964Da487fe2BD9, 'BnB bridge'), + (0x051F1D88f0aF5763fB888eC4378b4D8B29ea3319, 'Linea bridge'), + (0x2D001d79E5aF5F65a939781FE228B267a8Ed468B, 'Mantle bridge'), + (0x6625C6332c9F91F2D27c304E729B86db87A3f504, 'Scroll bridge'), (0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), (0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra (0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_other_income.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_other_income.sql index 255876b67f4..a044fb62a62 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_other_income.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_other_income.sql @@ -7,14 +7,12 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["pipistrella", "adcv", "zergil1397", "lido"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} ---https://dune.com/queries/2011910 ---ref{{'lido_accounting_other_income'}} with tokens AS ( -select * from (values + select * from (values (0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32), --LDO (0x6B175474E89094C44Da98b954EedeAC495271d0F), --DAI (0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48), --USDC @@ -23,69 +21,76 @@ select * from (values (0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0), --MATIC (0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84), --stETH (0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0) --wstETH -) as tokens(address)), + ) as tokens(address)), multisigs_list AS ( -select * from (values -(0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), -(0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), -(0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager -(0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 -(0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 -(0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 -(0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager -(0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), -(0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), -(0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), -(0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), -(0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig -(0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), -(0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), -(0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), -(0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), -(0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig') -) as list(address, chain, name) + select * from (values + (0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), + (0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), + (0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager + (0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 + (0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 + (0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 + (0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager + (0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), + (0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), + (0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), + (0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), + (0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig + (0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), + (0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), + (0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), + (0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), + (0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig'), + (0x606f77BF3dd6Ed9790D9771C7003f269a385D942, 'Ethereum', 'AllianceMsig') + ) as list(address, chain, name) ), diversifications_addresses AS ( -select * from (values -(0x489f04eeff0ba8441d42736549a1f1d6cca74775, '1round_1'), -(0x689e03565e36b034eccf12d182c3dc38b2bb7d33, '1round_2'), -(0xA9b2F5ce3aAE7374a62313473a74C98baa7fa70E, '2round') -) as list(address, name) + select * from (values + (0x489f04eeff0ba8441d42736549a1f1d6cca74775, '1round_1'), + (0x689e03565e36b034eccf12d182c3dc38b2bb7d33, '1round_2'), + (0xA9b2F5ce3aAE7374a62313473a74C98baa7fa70E, '2round') + ) as list(address, name) ), intermediate_addresses AS ( -select * from (values -(0xe3224542066d3bbc02bc3d70b641be4bc6f40e36, 'Jumpgate(Solana)'), -(0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), -(0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), -(0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), -(0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), -(0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra -(0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') -) as list(address, name) + select * from (values + (0xe3224542066d3bbc02bc3d70b641be4bc6f40e36, 'Jumpgate(Solana)'), + (0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), + (0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), + (0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), + (0x9de443adc5a411e83f1878ef24c3f52c61571e72, 'Base bridge'), + (0x41527B2d03844dB6b0945f25702cB958b6d55989, 'zkSync bridge'), + (0xb948a93827d68a82F6513Ad178964Da487fe2BD9, 'BnB bridge'), + (0x051F1D88f0aF5763fB888eC4378b4D8B29ea3319, 'Linea bridge'), + (0x2D001d79E5aF5F65a939781FE228B267a8Ed468B, 'Mantle bridge'), + (0x6625C6332c9F91F2D27c304E729B86db87A3f504, 'Scroll bridge'), + (0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), + (0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra + (0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') + ) as list(address, name) ), ldo_referral_payments_addr AS ( -select * from (values -(0x558247e365be655f9144e1a0140d793984372ef3), -(0x6DC9657C2D90D57cADfFB64239242d06e6103E43), -(0xDB2364dD1b1A733A690Bf6fA44d7Dd48ad6707Cd), -(0x586b9b2F8010b284A0197f392156f1A7Eb5e86e9), -(0xC976903918A0AF01366B31d97234C524130fc8B1), -(0x53773e034d9784153471813dacaff53dbbb78e8c), -(0x883f91D6F3090EA26E96211423905F160A9CA01d), -(0xf6502Ea7E9B341702609730583F2BcAB3c1dC041), -(0x82AF9d2Ea81810582657f6DC04B1d7d0D573F616), -(0x351806B55e93A8Bcb47Be3ACAF71584deDEaB324), -(0x9e2b6378ee8ad2A4A95Fe481d63CAba8FB0EBBF9), -(0xaf8aE6955d07776aB690e565Ba6Fbc79B8dE3a5d) --rhino -) as list(address) + select * from (values + (0x558247e365be655f9144e1a0140d793984372ef3), + (0x6DC9657C2D90D57cADfFB64239242d06e6103E43), + (0xDB2364dD1b1A733A690Bf6fA44d7Dd48ad6707Cd), + (0x586b9b2F8010b284A0197f392156f1A7Eb5e86e9), + (0xC976903918A0AF01366B31d97234C524130fc8B1), + (0x53773e034d9784153471813dacaff53dbbb78e8c), + (0x883f91D6F3090EA26E96211423905F160A9CA01d), + (0xf6502Ea7E9B341702609730583F2BcAB3c1dC041), + (0x82AF9d2Ea81810582657f6DC04B1d7d0D573F616), + (0x351806B55e93A8Bcb47Be3ACAF71584deDEaB324), + (0x9e2b6378ee8ad2A4A95Fe481d63CAba8FB0EBBF9), + (0xaf8aE6955d07776aB690e565Ba6Fbc79B8dE3a5d) --rhino + ) as list(address) ), @@ -136,7 +141,8 @@ other_income_txns AS ( evt_block_time, CAST(value AS DOUBLE) AS value, evt_tx_hash, - contract_address + contract_address, + 'ethereum' as blockchain FROM {{source('erc20_ethereum','evt_transfer')}} WHERE contract_address IN (SELECT address FROM tokens) AND to IN ( @@ -166,7 +172,8 @@ other_income_txns AS ( t.evt_block_time as period, CAST(t.value AS DOUBLE) AS token_amount, t.evt_tx_hash, - t.contract_address + t.contract_address, + 'ethereum' as blockchain FROM {{source('erc20_ethereum','evt_transfer')}} t join {{source('lido_ethereum','steth_evt_Submitted')}} s on t.evt_tx_hash = s.evt_tx_hash WHERE t.contract_address = 0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84 @@ -198,7 +205,8 @@ stsol_income AS ( i.period AS period, '7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj' AS token, COALESCE(delta,0) AS amount_token, - tx_id as evt_tx_hash + tx_id as evt_tx_hash, + 'solana' as blockchain FROM stsol_income_txs i ) @@ -208,7 +216,8 @@ SELECT * from ( evt_block_time AS period, contract_address AS token, value AS amount_token, - evt_tx_hash + evt_tx_hash, + blockchain FROM other_income_txns UNION ALL @@ -217,7 +226,8 @@ SELECT * from ( block_time AS time, 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 AS token, CAST(tr.value AS DOUBLE), - tx_hash + tx_hash, + 'ethereum' as blockchain FROM {{source('ethereum','traces')}} tr WHERE tr.success = True AND tr.to in ( @@ -239,7 +249,8 @@ SELECT * from ( period, from_base64('7dHbWXmci3dT8UFYWYZweBLXgycu7Y3iL6trKn1Y7ARj') AS token, amount_token, - from_base64(evt_tx_hash) + from_base64(evt_tx_hash), + blockchain FROM stsol_income ) WHERE amount_token != 0 diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_revenue.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_revenue.sql index eab910a900a..aac612319c9 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_revenue.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_revenue.sql @@ -7,22 +7,18 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["pipistrella", "adcv", "zergil1397", "lido"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} ---https://dune.com/queries/2011922 ---ref{{'lido_accounting_revenue'}} - -with -addresses AS ( -select * from (values -(0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Aragon'), -(0x55032650b14df07b85bF18A3a3eC8E0Af2e028d5, 'NO (Curated)'), -(0xaE7B191A31f627b4eB1d4DaC64eaB9976995b433, 'NO (DVT)'), -(0xdA7dE2ECdDfccC6c3AF10108Db212ACBBf9EA83F, 'NO (CSM)'), -(0x8B3f33234ABD88493c0Cd28De33D583B70beDe35, 'InsuranceFund') -) as list(address, name) +with addresses AS ( + select * from (values + (0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Aragon'), + (0x55032650b14df07b85bF18A3a3eC8E0Af2e028d5, 'NO (Curated)'), + (0xaE7B191A31f627b4eB1d4DaC64eaB9976995b433, 'NO (DVT)'), + (0xdA7dE2ECdDfccC6c3AF10108Db212ACBBf9EA83F, 'NO (CSM)'), + (0x8B3f33234ABD88493c0Cd28De33D583B70beDe35, 'InsuranceFund') + ) as list(address, name) ), oracle_txns AS ( diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_steth_referral_payment.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_steth_referral_payment.sql index 494e934de80..6bb2fddbe3c 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_steth_referral_payment.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_steth_referral_payment.sql @@ -11,36 +11,34 @@ ) }} ---https://dune.com/queries/2348586 ---ref{{'lido_accounting_dai_referral_payment'}} - with tokens AS ( -select * from (values - (0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84) --stETH -) as tokens(address)), + select * from (values + (0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84) --stETH + ) as tokens(address)), multisigs_list AS ( -select * from (values -(0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), -(0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), -(0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager -(0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 -(0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 -(0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 -(0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager -(0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), -(0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), -(0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), -(0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), -(0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig -(0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), -(0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), -(0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), -(0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), -(0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig') -) as list(address, chain, name) + select * from (values + (0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), + (0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), + (0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager + (0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 + (0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 + (0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 + (0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager + (0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), + (0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), + (0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), + (0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), + (0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig + (0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), + (0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), + (0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), + (0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), + (0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig'), + (0x606f77BF3dd6Ed9790D9771C7003f269a385D942, 'Ethereum', 'AllianceMsig') + ) as list(address, chain, name) ), diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_trp_expenses.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_trp_expenses.sql index 6521769f9fc..a8ede0f307a 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_trp_expenses.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_trp_expenses.sql @@ -7,14 +7,12 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["pipistrella", "adcv", "zergil1397", "lido"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} ---https://dune.com/queries/2011914 ---ref{{'lido_accounting_trp_expenses'}} with tokens AS ( -select * from (values + select * from (values (0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32), --LDO (0x6B175474E89094C44Da98b954EedeAC495271d0F), --DAI (0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48), --USDC @@ -23,45 +21,34 @@ select * from (values (0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0), --MATIC (0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84), --stETH (0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0) --wstETH -) as tokens(address)), + ) as tokens(address)), multisigs_list AS ( -select * from (values -(0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), -(0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), -(0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager -(0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 -(0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 -(0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 -(0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager -(0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager -(0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), -(0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), -(0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), -(0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), -(0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig -(0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), -(0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), -(0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), -(0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), -(0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig') -) as list(address, chain, name) + select * from (values + (0x3e40d73eb977dc6a537af587d48316fee66e9c8c, 'Ethereum', 'Aragon'), + (0x48F300bD3C52c7dA6aAbDE4B683dEB27d38B9ABb, 'Ethereum', 'FinanceOpsMsig'), + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Ethereum', 'LiquidityRewardsMsig'), + (0x753D5167C31fBEB5b49624314d74A957Eb271709, 'Ethereum', 'LiquidityRewardMngr'),--Curve Rewards Manager + (0x1dD909cDdF3dbe61aC08112dC0Fdf2Ab949f79D8, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V1 + (0x55c8De1Ac17C1A937293416C9BCe5789CbBf61d1, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V2 + (0x86F6c353A0965eB069cD7f4f91C1aFEf8C725551, 'Ethereum', 'LiquidityRewardMngr'), --Balancer Rewards Manager V3 + (0xf5436129Cf9d8fa2a1cb6e591347155276550635, 'Ethereum', 'LiquidityRewardMngr'),--1inch Reward Manager + (0xE5576eB1dD4aA524D67Cf9a32C8742540252b6F4, 'Ethereum', 'LiquidityRewardMngr'), --Sushi Reward Manager + (0x87D93d9B2C672bf9c9642d853a8682546a5012B5, 'Polygon', 'LiquidityRewardsMsig'), + (0x9cd7477521B7d7E7F9e2F091D2eA0084e8AaA290, 'Ethereum', 'PolygonTeamRewardsMsig'), + (0x5033823f27c5f977707b58f0351adcd732c955dd, 'Optimism', 'LiquidityRewardsMsig'), + (0x8c2b8595ea1b627427efe4f29a64b145df439d16, 'Arbitrum', 'LiquidityRewardsMsig'), + (0x13c6ef8d45afbccf15ec0701567cc9fad2b63ce8, 'Ethereum', 'ReferralRewardsMsig'),--Solana Ref Prog Msig + (0x12a43b049A7D330cB8aEAB5113032D18AE9a9030, 'Ethereum', 'LegoMsig'), + (0x9B1cebF7616f2BC73b47D226f90b01a7c9F86956, 'Ethereum', 'ATCMsig'), + (0x17F6b2C738a63a8D3A113a228cfd0b373244633D, 'Ethereum', 'PMLMsig'), + (0xde06d17db9295fa8c4082d4f73ff81592a3ac437, 'Ethereum', 'RCCMsig'), + (0x834560f580764bc2e0b16925f8bf229bb00cb759, 'Ethereum', 'TRPMsig'), + (0x606f77BF3dd6Ed9790D9771C7003f269a385D942, 'Ethereum', 'AllianceMsig') + ) as list(address, chain, name) ), -intermediate_addresses AS ( -select * from (values -(0xe3224542066d3bbc02bc3d70b641be4bc6f40e36, 'Jumpgate(Solana)'), -(0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf, 'Polygon bridge'), -(0xa3a7b6f88361f48403514059f1f16c8e78d60eec, 'Arbitrum bridge'), -(0x99c9fc46f92e8a1c0dec1b1747d010903e884be1, 'Optimism bridge'), -(0x0914d4ccc4154ca864637b0b653bc5fd5e1d3ecf, 'AnySwap bridge (Polkadot, Kusama)'), -(0x3ee18b2214aff97000d974cf647e7c347e8fa585, 'Wormhole bridge'), --Solana, Terra -(0x9ee91F9f426fA633d227f7a9b000E28b9dfd8599, 'stMatic Contract') -) as list(address, name) -), - trp_expenses_txns AS ( SELECT diff --git a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_withdrawals.sql b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_withdrawals.sql index 41dee557429..9b2a9c9852b 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_withdrawals.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/lido/accounting/ethereum/lido_accounting_ethereum_withdrawals.sql @@ -7,11 +7,10 @@ post_hook='{{ expose_spells(\'["ethereum"]\', "project", "lido_accounting", - \'["gregshestakovlido", "ppclunghe", "xadcv"]\') }}' + \'["pipistrella", "adcv", "zergil1397"]\') }}' ) }} ---ref{{'lido_accounting_ethereum_withdrawals'}} with withdrawals as ( select block_time as time From ad6a89252dec5c933990578e8e0e7b21210a5b37 Mon Sep 17 00:00:00 2001 From: crStiv Date: Sat, 25 Jan 2025 20:43:17 +0100 Subject: [PATCH 08/21] Update tokens_ethereum_erc20.sql (#7531) Co-authored-by: jeff-dude <102681548+jeff-dude@users.noreply.github.com> --- .../tokens/models/tokens/ethereum/tokens_ethereum_erc20.sql | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dbt_subprojects/tokens/models/tokens/ethereum/tokens_ethereum_erc20.sql b/dbt_subprojects/tokens/models/tokens/ethereum/tokens_ethereum_erc20.sql index 7ddf9d6fe82..f543d8590e0 100644 --- a/dbt_subprojects/tokens/models/tokens/ethereum/tokens_ethereum_erc20.sql +++ b/dbt_subprojects/tokens/models/tokens/ethereum/tokens_ethereum_erc20.sql @@ -4739,6 +4739,9 @@ FROM (VALUES , ( 0x9Ba021B0a9b958B5E75cE9f6dff97C7eE52cb3E6, 'apxETH', 18) , ( 0xa4f6b2cdcb67bf8f48baa459a333d2667aa4b100, 'shezETH', 8) , ( 0x7F4B66FF703336CfC35b901144614496Ae0b0D27, 'shezUSD', 18) + , ( 0x163f8C2467924be0ae7B5347228CABF260318753, 'WLD', 18) + , ( 0x5283D291DBCF85356A21bA090E6db59121208b44, 'BLUR', 18) + , ( 0x0D8775F648430679A709E98d2b0Cb6250d2887EF, 'BAT', 18) , ( 0xa7b66dda0d7c7c1e43d3130491216172993d163d, 'EVS', 6) , ( 0x2371e134e3455e0593363cbf89d3b6cf53740618, 'gtWETH', 18) , ( 0x5F9D59db355b4A60501544637b00e94082cA575b, 'waEthUSDe', 18) From bef9f4cc638e4b96019dd7b5a7e88f2556ff883f Mon Sep 17 00:00:00 2001 From: viniabussafi <131974393+viniabussafi@users.noreply.github.com> Date: Sat, 25 Jan 2025 19:43:27 +0000 Subject: [PATCH 09/21] automate erc4626 token mapping for balancer_v3 on ethereum (#7536) * automate erc4626 token mapping for balancer_v3 * update metamorpho sources --------- Co-authored-by: jeff-dude <102681548+jeff-dude@users.noreply.github.com> --- ...ncer_v3_ethereum_erc4626_token_mapping.sql | 53 +++++++++---------- .../tokens/ethereum/tokens_ethereum_erc20.sql | 1 + .../aave/ethereum/aave_ethereum_sources.yml | 4 ++ .../ethereum/morpho_ethereum_sources.yml | 3 +- 4 files changed, 33 insertions(+), 28 deletions(-) diff --git a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/ethereum/balancer_v3_ethereum_erc4626_token_mapping.sql b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/ethereum/balancer_v3_ethereum_erc4626_token_mapping.sql index adaf6faadd0..58d3e18d37d 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/ethereum/balancer_v3_ethereum_erc4626_token_mapping.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/ethereum/balancer_v3_ethereum_erc4626_token_mapping.sql @@ -27,21 +27,21 @@ AND b.underlying = t.contract_address UNION SELECT - erc4626_token, - erc4626_token_name, - erc4626_token_symbol, - underlying_token, - underlying_token_symbol, - decimals -FROM (VALUES - (0xd4fa2d31b7968e448877f69a96de69f5de8cd23e, 'Static Aave Ethereum USDC', 'WaEthUSDC', 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48, 'USDC', 6), - (0x7bc3485026ac48b6cf9baf0a377477fff5703af8, 'Static Aave Ethereum USDT', 'WaEthUSDT', 0xdac17f958d2ee523a2206206994597c13d831ec7, 'USDT', 6), - (0x0bfc9d54fc184518a81162f8fb99c2eaca081202, 'Static Aave Ethereum WETH', 'WaEthWETH', 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2, 'WETH', 18), - (0x0fe906e030a44ef24ca8c7dc7b7c53a6c4f00ce9, 'Static Aave Ethereum Lido WETH', 'waEthLidoWETH', 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2, 'WETH', 18), - (0x775f661b0bd1739349b9a2a3ef60be277c5d2d29, 'Static Aave Ethereum Lido wstETH', 'waEthLidowstETH', 0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0, 'wstETH', 18), - (0x5F9D59db355b4A60501544637b00e94082cA575b, 'Static Aave Ethereum USDe', 'waEthUSDe', 0x4c9EDD5852cd905f086C759E8383e09bff1E68B3, 'USDe', 18), - (0xC71Ea051a5F82c67ADcF634c36FFE6334793D24C, 'Static Aave Ethereum Lido GHO', 'waEthLidoGHO', 0x40D16FC0246aD3160Ccc09B8D0D3A2cD28aE6C2f, 'GHO', 18) - ) AS temp_table (erc4626_token, erc4626_token_name, erc4626_token_symbol, underlying_token, underlying_token_symbol, decimals) + b.stataToken AS erc4626_token, + t2.symbol AS erc4626_token_name, + t2.symbol AS erc4626_token_symbol, + b.underlying AS underlying_token, + t1.symbol AS underlying_token_symbol, + t2.decimals AS decimals +FROM {{ source('aave_ethereum', 'StataTokenV2_evt_Initialized') }} a +JOIN {{ source('aave_ethereum', 'StataTokenFactory_evt_StataTokenCreated') }} b +ON b.stataToken = a.contract_address +JOIN {{ source('tokens', 'erc20') }} t1 +ON t1.blockchain = 'ethereum' +AND b.underlying = t1.contract_address +JOIN {{ source('tokens', 'erc20') }} t2 +ON t2.blockchain = 'ethereum' +AND b.stataToken = t2.contract_address ), morpho_tokens AS( @@ -59,18 +59,17 @@ AND a.asset = t.contract_address UNION -SELECT - erc4626_token, - erc4626_token_name, - erc4626_token_symbol, - underlying_token, - underlying_token_symbol, - decimals -FROM (VALUES - (0x7204b7dbf9412567835633b6f00c3edc3a8d6330, 'CoinShift USDC', 'csUSDC', 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48, 'USDC', 18), - (0xbeefc011e94f43b8b7b455ebab290c7ab4e216f1, 'CoinShift USDL', 'csUSDL', 0xbdC7c08592Ee4aa51D06C27Ee23D5087D65aDbcD, 'wUSDL', 18), - (0x1e6ffa4e9F63d10B8820A3ab52566Af881Dab53c, 'Gauntlet WETH Ecosystem', 'gtWETHe', 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2, 'WETH', 18) - ) AS temp_table (erc4626_token, erc4626_token_name, erc4626_token_symbol, underlying_token, underlying_token_symbol, decimals) +SELECT DISTINCT + a.metaMorpho AS erc4626_token, + a.name AS erc4626_token_name, + a.symbol AS erc4626_token_symbol, + a.asset AS underlying_token, + t.symbol AS underlying_token_symbol, + 18 AS decimals +FROM {{ source('metamorpho_factory_ethereum', 'MetaMorphoV1_1Factory_evt_CreateMetaMorpho') }} a +JOIN {{ source('tokens', 'erc20') }} t +ON t.blockchain = 'ethereum' +AND a.asset = t.contract_address ) diff --git a/dbt_subprojects/tokens/models/tokens/ethereum/tokens_ethereum_erc20.sql b/dbt_subprojects/tokens/models/tokens/ethereum/tokens_ethereum_erc20.sql index f543d8590e0..4534bd9c613 100644 --- a/dbt_subprojects/tokens/models/tokens/ethereum/tokens_ethereum_erc20.sql +++ b/dbt_subprojects/tokens/models/tokens/ethereum/tokens_ethereum_erc20.sql @@ -4751,4 +4751,5 @@ FROM (VALUES , ( 0xc4441c2be5d8fa8126822b9929ca0b81ea0de38e, 'USUAL', 18) , ( 0xC71Ea051a5F82c67ADcF634c36FFE6334793D24C, 'waEthLidoGHO', 18) , ( 0x1e6ffa4e9F63d10B8820A3ab52566Af881Dab53c, 'gtWETHe', 18) + , ( 0x7751e2f4b8ae93ef6b79d86419d42fe3295a4559, 'wUSDL', 18) ) AS temp_table (contract_address, symbol, decimals) diff --git a/sources/aave/ethereum/aave_ethereum_sources.yml b/sources/aave/ethereum/aave_ethereum_sources.yml index 77bc29c1866..fb3df52606c 100644 --- a/sources/aave/ethereum/aave_ethereum_sources.yml +++ b/sources/aave/ethereum/aave_ethereum_sources.yml @@ -122,6 +122,10 @@ sources: - name: StaticATokenFactory_evt_StaticTokenCreated + - name: StataTokenV2_evt_Initialized + + - name: StataTokenFactory_evt_StataTokenCreated + - name: aave_v3_ethereum description: "Decoded contracts for Aave v3 on Ethereum" tables: diff --git a/sources/morpho/ethereum/morpho_ethereum_sources.yml b/sources/morpho/ethereum/morpho_ethereum_sources.yml index 112164e10bb..a6f6a533555 100644 --- a/sources/morpho/ethereum/morpho_ethereum_sources.yml +++ b/sources/morpho/ethereum/morpho_ethereum_sources.yml @@ -5,4 +5,5 @@ sources: description: "Decoded contracts for Morpho on Ethereum" tables: - - name: MetaMorphoFactory_evt_CreateMetaMorpho \ No newline at end of file + - name: MetaMorphoFactory_evt_CreateMetaMorpho + - name: MetaMorphoV1_1Factory_evt_CreateMetaMorpho \ No newline at end of file From c82bcee6a0a463eb51a86a7a8b8f9ffbb319db16 Mon Sep 17 00:00:00 2001 From: viniabussafi <131974393+viniabussafi@users.noreply.github.com> Date: Sat, 25 Jan 2025 19:43:37 +0000 Subject: [PATCH 10/21] init sonic erc4626 token mapping (#7538) * init sonic erc4626 token mapping * remove gnosis change * fix schema * ntegrate into consolidated tables * add extra tokens --------- Co-authored-by: jeff-dude <102681548+jeff-dude@users.noreply.github.com> --- .../balancer/erc4626_tokens/_schema.yml | 4 +- .../balancer_v3_erc4626_token_mapping.sql | 3 +- .../balancer_v3_erc4626_token_prices.sql | 3 +- .../balancer/erc4626_tokens/sonic/_schema.yml | 65 ++++++++++++++++++ ...alancer_v3_sonic_erc4626_token_mapping.sql | 27 ++++++++ ...balancer_v3_sonic_erc4626_token_prices.sql | 66 +++++++++++++++++++ .../prices/sonic/prices_sonic_tokens.sql | 2 + .../tokens/sonic/tokens_sonic_erc20.sql | 4 ++ sources/aave/gnosis/aave_gnosis_sources.yml | 4 ++ 9 files changed, 174 insertions(+), 4 deletions(-) create mode 100644 dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/_schema.yml create mode 100644 dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/balancer_v3_sonic_erc4626_token_mapping.sql create mode 100644 dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/balancer_v3_sonic_erc4626_token_prices.sql diff --git a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/_schema.yml b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/_schema.yml index 15203c33c6f..bbdf3030356 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/_schema.yml +++ b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/_schema.yml @@ -3,7 +3,7 @@ version: 2 models: - name: balancer_v3_erc4626_token_mapping meta: - blockchain: ethereum, gnosis + blockchain: ethereum, gnosis, sonic project: balancer contributors: viniabussafi config: @@ -32,7 +32,7 @@ models: - name: balancer_v3_erc4626_token_prices meta: - blockchain: ethereum, gnosis + blockchain: ethereum, gnosis, sonic project: balancer contributors: viniabussafi config: diff --git a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/balancer_v3_erc4626_token_mapping.sql b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/balancer_v3_erc4626_token_mapping.sql index 00f666a601e..0e11e3e9d17 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/balancer_v3_erc4626_token_mapping.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/balancer_v3_erc4626_token_mapping.sql @@ -10,7 +10,8 @@ {% set balancer_models = [ ref('balancer_v3_ethereum_erc4626_token_mapping'), - ref('balancer_v3_gnosis_erc4626_token_mapping') + ref('balancer_v3_gnosis_erc4626_token_mapping'), + ref('balancer_v3_sonic_erc4626_token_mapping') ] %} SELECT * diff --git a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/balancer_v3_erc4626_token_prices.sql b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/balancer_v3_erc4626_token_prices.sql index 33553280603..be96770a2d7 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/balancer_v3_erc4626_token_prices.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/balancer_v3_erc4626_token_prices.sql @@ -11,7 +11,8 @@ {% set balancer_models = [ ref('balancer_v3_ethereum_erc4626_token_prices'), - ref('balancer_v3_gnosis_erc4626_token_prices') + ref('balancer_v3_gnosis_erc4626_token_prices'), + ref('balancer_v3_sonic_erc4626_token_prices') ] %} SELECT * diff --git a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/_schema.yml b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/_schema.yml new file mode 100644 index 00000000000..a2fb1d1518b --- /dev/null +++ b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/_schema.yml @@ -0,0 +1,65 @@ +version: 2 + +models: + - name: balancer_v3_sonic_erc4626_token_mapping + meta: + blockchain: sonic + project: balancer + contributors: viniabussafi + config: + tags: ['sonic', 'token', 'mapping'] + description: > + Mapping of ERC4626 tokens on sonic, including aTokens and MetaMorpho tokens, and their corresponding underlying tokens. + data_tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - erc4626_token + columns: + - name: blockchain + description: "Blockchain." + - name: erc4626_token + description: "Contract address of the erc4626 token." + - name: erc4626_token_name + description: "Name of the erc4626 token." + - name: erc4626_token_symbol + description: "Symbol of the erc4626 token." + - name: underlying_token + description: "Contract address of the underlying token." + - name: underlying_token_symbol + description: "Symbol of the underlying token." + - name: decimals + description: "Decimal precision of the ERC4626 token." + + - name: balancer_v3_sonic_erc4626_token_prices + meta: + blockchain: sonic + project: balancer + contributors: viniabussafi + config: + tags: ['sonic', 'token', 'prices'] + description: > + Pricing information for ERC4626 tokens on sonic. Prices are derived from the ratio of underlying tokens deposited or withdrawn to shares issued or burned, multiplied by the underlying token price. + data_tests: + - dbt_utils.unique_combination_of_columns: + combination_of_columns: + - minute + - wrapped_token + columns: + - name: minute + description: "Timestamp of the event, truncated to the nearest minute." + - name: blockchain + description: "Blockchain." + - name: wrapped_token + description: "Contract address of the wrapped token." + - name: underlying_token + description: "Contract address of the underlying token." + - name: erc4626_token_symbol + description: "Symbol of the erc4626 token." + - name: underlying_token_symbol + description: "Symbol of the underlying token." + - name: decimals + description: "Decimal precision for the token." + - name: median_price + description: "Median price of the static token, computed over the dataset." + - name: next_change + description: "Timestamp of the next expected pricing change or event affecting the price." diff --git a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/balancer_v3_sonic_erc4626_token_mapping.sql b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/balancer_v3_sonic_erc4626_token_mapping.sql new file mode 100644 index 00000000000..dcf30383699 --- /dev/null +++ b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/balancer_v3_sonic_erc4626_token_mapping.sql @@ -0,0 +1,27 @@ +{{ + config( + schema = 'balancer_v3_sonic', + alias = 'erc4626_token_mapping', + materialized = 'table', + file_format = 'delta' + ) +}} + +WITH wrapped_tokens AS( +SELECT + erc4626_token, + erc4626_token_name, + erc4626_token_symbol, + underlying_token, + underlying_token_symbol, + decimals +FROM (VALUES + (0xA28d4dbcC90C849e3249D642f356D85296a12954, 'Wrapped Avalon Avalon SOLVBTCBBN', 'waSonicSOLVBTCBBN', 0xCC0966D8418d412c599A6421b760a847eB169A8c, 'SolvBTC.BBN', 18), + (0xD31E89Ffb929b38bA60D1c7dBeB68c7712EAAb0a, 'Wrapped Avalon Avalon SOLVBTC', 'waSonicSOLVBTC', 0x541FD749419CA806a8bc7da8ac23D346f2dF8B77, 'SolvBTC', 18) + ) AS temp_table (erc4626_token, erc4626_token_name, erc4626_token_symbol, underlying_token, underlying_token_symbol, decimals) +) + +SELECT DISTINCT + 'sonic' AS blockchain, + * +FROM wrapped_tokens \ No newline at end of file diff --git a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/balancer_v3_sonic_erc4626_token_prices.sql b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/balancer_v3_sonic_erc4626_token_prices.sql new file mode 100644 index 00000000000..e60c2ffb3eb --- /dev/null +++ b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/balancer_v3_sonic_erc4626_token_prices.sql @@ -0,0 +1,66 @@ +{{ config( + schema = 'balancer_v3_sonic', + alias = 'erc4626_token_prices', + materialized = 'incremental', + file_format = 'delta', + incremental_strategy = 'merge', + unique_key = ['minute', 'wrapped_token'], + incremental_predicates = [incremental_predicate('DBT_INTERNAL_DEST.minute')] + ) +}} + + +WITH wrap_unwrap AS( + SELECT + evt_block_time, + wrappedToken, + CAST(depositedUnderlying AS DOUBLE) / CAST(mintedShares AS DOUBLE) AS ratio + FROM {{ source('beethoven_x_v3_sonic', 'Vault_evt_Wrap') }} + {% if is_incremental() %} + WHERE {{ incremental_predicate('evt_block_time') }} + {% endif %} + + UNION ALL + + SELECT + evt_block_time, + wrappedToken, + CAST(withdrawnUnderlying AS DOUBLE) / CAST(burnedShares AS DOUBLE) AS ratio + FROM {{ source('beethoven_x_v3_sonic', 'Vault_evt_Unwrap') }} + {% if is_incremental() %} + WHERE {{ incremental_predicate('evt_block_time') }} + {% endif %} + ), + + + price_join AS( + SELECT + w.evt_block_time, + m.underlying_token, + w.wrappedToken, + m.erc4626_token_symbol, + m.underlying_token_symbol, + m.decimals, + ratio * price AS adjusted_price + FROM wrap_unwrap w + JOIN {{ref('balancer_v3_sonic_erc4626_token_mapping')}} m ON m.erc4626_token = w.wrappedToken + JOIN {{ source('prices', 'usd') }} p ON m.underlying_token = p.contract_address + AND p.blockchain = 'sonic' + AND DATE_TRUNC('minute', w.evt_block_time) = DATE_TRUNC('minute', p.minute) + {% if is_incremental() %} + AND {{ incremental_predicate('p.minute') }} + {% endif %} + ) + +SELECT + p.evt_block_time AS minute, + 'sonic' AS blockchain, + wrappedToken AS wrapped_token, + underlying_token, + erc4626_token_symbol, + underlying_token_symbol, + decimals, + APPROX_PERCENTILE(adjusted_price, 0.5) AS median_price, + LEAD(p.evt_block_time, 1, CURRENT_DATE + INTERVAL '1' day) OVER (PARTITION BY wrappedToken ORDER BY p.evt_block_time) AS next_change +FROM price_join p +GROUP BY 1, 2, 3, 4, 5, 6, 7 diff --git a/dbt_subprojects/tokens/models/prices/sonic/prices_sonic_tokens.sql b/dbt_subprojects/tokens/models/prices/sonic/prices_sonic_tokens.sql index 35eab529e51..42a4cfb2dd3 100644 --- a/dbt_subprojects/tokens/models/prices/sonic/prices_sonic_tokens.sql +++ b/dbt_subprojects/tokens/models/prices/sonic/prices_sonic_tokens.sql @@ -29,4 +29,6 @@ FROM , ('sceth-sonic-eth', 'scETH', 0x3bce5cb273f0f148010bbea2470e7b5df84c7812, 18) , ('sts-staked-sonic', 'stS', 0xe5da20f15420ad15de0fa650600afc998bbe3955, 18) , ('ag-silver', 'AG', 0x005851f943ee2957b1748957f26319e4f9edebc1, 18) + , ('solvbtc-solv-protocol-solvbtc', 'SOLVBTC', 0x541FD749419CA806a8bc7da8ac23D346f2dF8B77, 18) + , ('solvbtcbbn-solv-protocol-solvbtcbbn', 'SOLVBTCBBN', 0xCC0966D8418d412c599A6421b760a847eB169A8c, 18) ) as temp (token_id, symbol, contract_address, decimals) diff --git a/dbt_subprojects/tokens/models/tokens/sonic/tokens_sonic_erc20.sql b/dbt_subprojects/tokens/models/tokens/sonic/tokens_sonic_erc20.sql index 97f271392dc..d0d0be22177 100644 --- a/dbt_subprojects/tokens/models/tokens/sonic/tokens_sonic_erc20.sql +++ b/dbt_subprojects/tokens/models/tokens/sonic/tokens_sonic_erc20.sql @@ -42,4 +42,8 @@ FROM (VALUES , (0x455d5f11Fea33A8fa9D3e285930b478B6bF85265, 'stkscETH', 18) , (0x541FD749419CA806a8bc7da8ac23D346f2dF8B77, 'SolvBTC', 18) , (0xCC0966D8418d412c599A6421b760a847eB169A8c, 'solvBTC.bbn', 18) + , (0xA28d4dbcC90C849e3249D642f356D85296a12954, 'waSonicSOLVBTCBBN', 18) + , (0x773CDA0CADe2A3d86E6D4e30699d40bB95174ff2, 'waSonicSOLVBTC', 18) + , (0x0e65f5a7cb56641e31bc5c9d53388db7ac7eacae, 'atS', 18) + , (0xcf3fe6edfee9c7fdf7d53dc58f4efe66fe110981, 'BUNNY', 18) ) as temp (contract_address, symbol, decimals) diff --git a/sources/aave/gnosis/aave_gnosis_sources.yml b/sources/aave/gnosis/aave_gnosis_sources.yml index f5e9101db8c..57f7a425e62 100644 --- a/sources/aave/gnosis/aave_gnosis_sources.yml +++ b/sources/aave/gnosis/aave_gnosis_sources.yml @@ -5,3 +5,7 @@ sources: description: "Decoded contracts for Aave v3 on Gnosis" tables: - name: AToken_evt_Initialized + + - name: StataTokenV2_evt_Initialized + + - name: StataTokenV2Factory_evt_StataTokenCreated \ No newline at end of file From 447a93112bc5ddf731e7213c49315c60025428c1 Mon Sep 17 00:00:00 2001 From: Ragnar Date: Sat, 25 Jan 2025 20:43:48 +0100 Subject: [PATCH 11/21] Update addresses_optimism_grants_funding.sql (#7530) Co-authored-by: jeff-dude <102681548+jeff-dude@users.noreply.github.com> --- .../addresses/optimism/addresses_optimism_grants_funding.sql | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dbt_subprojects/daily_spellbook/models/addresses/optimism/addresses_optimism_grants_funding.sql b/dbt_subprojects/daily_spellbook/models/addresses/optimism/addresses_optimism_grants_funding.sql index e6d1f11bc86..e73b60f3190 100644 --- a/dbt_subprojects/daily_spellbook/models/addresses/optimism/addresses_optimism_grants_funding.sql +++ b/dbt_subprojects/daily_spellbook/models/addresses/optimism/addresses_optimism_grants_funding.sql @@ -251,7 +251,7 @@ FROM (VALUES ,('Project', 0x850a146D7478dAAa98Fc26Fd85e6A24e50846A9d, 'viaPrize', 'Season 4') ,('Project', 0x4ABa01FB8E1f6BFE80c56Deb367f19F35Df0f4aE, 'Beefy - Universal Zap', 'Season 4') ,('Project', 0xB646C68578835F44d7C5b3F44ed51174FD1A89DE, 'DRPC - a more affordable, cost-efficient, and scalable RPC solution for Optimism', 'Season 4') --- ,('Project', TBD , 'Immunefi Bug Bounty Program for Protocols building on Optimism', 'Season 4') +,('Project', 0x2501c477d0a35545a387aa4a3eee4292a9a8b3f0, 'Immunefi Bug Bounty Program for Protocols building on Optimism', 'Season 4') ,('Project', 0x82d2242257115351899894eF384f779b5ba8c695, 'Kwenta Referral Program', 'Season 4') ,('Project', 0xBBEa9BA18e457303D666b6bd27AdE10221E3635f, 'Lemon Cash Grant Proposal', 'Season 4') ,('Project', 0xD4C00FE7657791C2A43025dE483F05E49A5f76A6, 'LYRA V2', 'Season 4') @@ -261,7 +261,7 @@ FROM (VALUES ,('Project', 0x707f310DD0325f48Fe06e1D44Cb5fdb522EDf723, 'MultiBaas historical data', 'Season 4') ,('Project', 0x811Cc10d5a80B037dCcbC467C33736Ce7e6690fB, 'seal: UI for smart contracts', 'Season 4') ,('Project', 0x5A973117Dd273676bf4D14313b80562DC8973ba9, '[RFG-3] Sherlock Audits', 'Season 4') --- ,('Project', TBD , '[RFG-3] Trail of Bits Security Reviews', 'Season 4') +,('Project', 0x5A973117Dd273676bf4D14313b80562DC8973ba9, '[RFG-3] Trail of Bits Security Reviews', 'Season 4') ,('Project', 0xB6B9E9e56AB5a4AF927faa802ac93786352f3af9, 'Cantina.xyx and Spearbit Labs: RFG-3', 'Season 4') ,('Project', 0x697008C9CcA249eB5AbE9583f041A18A850453A4, 'LlamaNodes | High-Performant & Cost-Effective RPCs', 'Season 4') ,('Project', 0x4a364125054B47b669af9D16cc65dCE6C6Fbd573, 'FHE x OP', 'Season 4') From b612468b978671450441e152df300dcf8f45be3d Mon Sep 17 00:00:00 2001 From: agaperste Date: Sat, 25 Jan 2025 14:51:33 -0500 Subject: [PATCH 12/21] fixing worldchain's native token (#7551) * fixing worldchain's native token * update wrapped address for worldchain --------- Co-authored-by: jeff-dude <102681548+jeff-dude@users.noreply.github.com> --- dbt_subprojects/daily_spellbook/models/evms/evms_info.sql | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dbt_subprojects/daily_spellbook/models/evms/evms_info.sql b/dbt_subprojects/daily_spellbook/models/evms/evms_info.sql index dbf58c2914a..2f9c8cad6ab 100644 --- a/dbt_subprojects/daily_spellbook/models/evms/evms_info.sql +++ b/dbt_subprojects/daily_spellbook/models/evms/evms_info.sql @@ -33,7 +33,7 @@ ]\', "sector", "evms", - \'["hildobby", "hosuke", "jeff-dude"]\') }}') + \'["hildobby", "hosuke", "jeff-dude", "agaperste"]\') }}') }} SELECT chain_id @@ -90,7 +90,7 @@ FROM ( , (11155111, 'sepolia', 'Sepolia', 'Testnet', 'Testnet', 'tETH', 0x7b79995e5f793a07bc00c21412e50ecae098e7f9, 'https://sepolia.etherscan.io/', timestamp '2015-07-30 15:26:13', NULL, NULL, NULL, true) , (167000, 'taiko', 'Taiko', 'Layer 2', 'Optimistic Rollup', 'ETH', 0xa51894664a773981c6c112c43ce576f315d5b1b6, 'https://taikoscan.network/', timestamp '2024-03-29 07:39:12', 'OP Stack', 'Ethereum Blobs', 'Ethereum', false) , (1329, 'sei', 'Sei Network', 'Layer 1', NULL, 'SEI', 0xE30feDd158A2e3b13e9badaeABaFc5516e95e8C7, 'https://seitrace.com/?chain=pacific-1', timestamp '2024-05-27 13:14', NULL, NULL, NULL, true) - , (480, 'worldchain', 'World Chain', 'Layer 2', 'Optimistic Rollup', 'WLD', 0x2cFc85d8E48F8EAB294be644d9E25C3030863003, 'https://worldchain-mainnet.explorer.alchemy.com/', timestamp '2024-06-25 17:14', 'OP Stack', 'Ethereum Blobs', 'Ethereum', true) + , (480, 'worldchain', 'World Chain', 'Layer 2', 'Optimistic Rollup', 'ETH', 0x4200000000000000000000000000000000000006, 'https://worldchain-mainnet.explorer.alchemy.com/', timestamp '2024-06-25 17:14', 'OP Stack', 'Ethereum Blobs', 'Ethereum', true) , (728126428, 'tron', 'TRON', 'Layer 1', null, 'TRX', from_tron_address('TNUC9Qb1rRpS5CbWLmNMxXBjyFoydXjWFR'), 'https://tronscan.org/', timestamp '2024-06-25 17:14', NULL, NULL, NULL, true) , (1101001, 'b3', 'B3', 'Layer 2', 'Optimistic Rollup', 'ETH', 0x4200000000000000000000000000000000000006, 'https://explorer.b3.fun/', timestamp '2024-03-14 12:00', 'OP Stack', 'Ethereum Blobs', 'Ethereum', true) , (5000, 'mantle', 'Mantle', 'Layer 2', 'Optimistic Rollup', 'MNT', 0x78c1b0c915c4faa5fffa6cabf0219da63d7f4cb8, 'https://mantlescan.xyz/', timestamp '2023-07-02 18:21', 'Optimistic Virtual Machine', 'Ethereum', 'Ethereum', true) From 2b1dda9896ebb93531679763690eab0bd4a7c7ce Mon Sep 17 00:00:00 2001 From: tomfutago <35136350+tomfutago@users.noreply.github.com> Date: Mon, 27 Jan 2025 16:30:14 +0000 Subject: [PATCH 13/21] chore: add SwapOperator contract (#7568) --- .../capital_pool/nexusmutual_ethereum_capital_pool_totals.sql | 1 - .../nexusmutual_ethereum_capital_pool_transfers.sql | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/dbt_subprojects/daily_spellbook/models/nexusmutual/ethereum/capital_pool/nexusmutual_ethereum_capital_pool_totals.sql b/dbt_subprojects/daily_spellbook/models/nexusmutual/ethereum/capital_pool/nexusmutual_ethereum_capital_pool_totals.sql index 8e517af1809..c0bbf2369a4 100644 --- a/dbt_subprojects/daily_spellbook/models/nexusmutual/ethereum/capital_pool/nexusmutual_ethereum_capital_pool_totals.sql +++ b/dbt_subprojects/daily_spellbook/models/nexusmutual/ethereum/capital_pool/nexusmutual_ethereum_capital_pool_totals.sql @@ -19,7 +19,6 @@ with transfer_combined as ( select * from {{ ref('nexusmutual_ethereum_capital_pool_transfers') }} where block_time >= timestamp '2019-05-23' - and 1=1 -- dummy condition to trigger re-run ), lido_oracle as ( diff --git a/dbt_subprojects/daily_spellbook/models/nexusmutual/ethereum/capital_pool/nexusmutual_ethereum_capital_pool_transfers.sql b/dbt_subprojects/daily_spellbook/models/nexusmutual/ethereum/capital_pool/nexusmutual_ethereum_capital_pool_transfers.sql index 2ae148320a4..04875493320 100644 --- a/dbt_subprojects/daily_spellbook/models/nexusmutual/ethereum/capital_pool/nexusmutual_ethereum_capital_pool_transfers.sql +++ b/dbt_subprojects/daily_spellbook/models/nexusmutual/ethereum/capital_pool/nexusmutual_ethereum_capital_pool_transfers.sql @@ -28,7 +28,8 @@ nexusmutual_contracts (contract_address) as ( (0x7cbe5682be6b648cc1100c76d4f6c96997f753d6), --Pool2, deployed: May-23-2019 (0xcafea8321b5109d22c53ac019d7a449c947701fb), --MCR, deployed: May-25-2021 (0xcafea92739e411a4D95bbc2275CA61dE6993C9a7), --MCR, deployed: Nov-21-2023 - (0x51ad1265C8702c9e96Ea61Fe4088C2e22eD4418e) --Advisory Board multisig + (0x51ad1265C8702c9e96Ea61Fe4088C2e22eD4418e), --Advisory Board multisig + (0xcafeaed98d7Fce8F355C03c9F3507B90a974f37e) --SwapOperator ), transfer_in as ( @@ -122,4 +123,3 @@ from transfer_nxmty_in union all select block_time, block_number, block_date, transfer_type, symbol, amount, contract_address, unique_key, tx_hash from transfer_nxmty_out -where 1=1 -- dummy condition to trigger re-run From 43c99c41645d62df37227809cf961277027a15f0 Mon Sep 17 00:00:00 2001 From: bram-vdberg Date: Mon, 27 Jan 2025 17:30:25 +0100 Subject: [PATCH 14/21] Remove duplicate entries for Laita solver (#7567) --- .../cow_protocol/arbitrum/cow_protocol_arbitrum_solvers.sql | 2 -- 1 file changed, 2 deletions(-) diff --git a/dbt_subprojects/hourly_spellbook/models/_project/cow_protocol/arbitrum/cow_protocol_arbitrum_solvers.sql b/dbt_subprojects/hourly_spellbook/models/_project/cow_protocol/arbitrum/cow_protocol_arbitrum_solvers.sql index d232ffa6646..177660d8a87 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/cow_protocol/arbitrum/cow_protocol_arbitrum_solvers.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/cow_protocol/arbitrum/cow_protocol_arbitrum_solvers.sql @@ -52,7 +52,6 @@ known_solver_metadata (address, environment, name) as ( (0x0648548f891E1356f197070D009704e574182bfB, 'prod', 'Rizzolver'), (0x23e868881dfe0531358B8FE0cbec43FD860cbF33, 'prod', 'Rizzolver'), (0x2692F7bFCB2e1a8575434b9511804266D9aeb628, 'prod', 'Velvet'), - (0x0148538e6cA813D41eA5988008Cdc9B72d4e65A7, 'prod', 'Laita'), (0x1FA2FF499b327f53cD9a82BcAFE36093563E32e4, 'prod', 'Apollo'), (0x0148538e6cA813D41eA5988008Cdc9B72d4e65A7, 'prod', 'Laita'), (0x9C75aae1Bd2f96D7B4E67e8C5344f3304382276E, 'prod', 'Enso'), @@ -61,7 +60,6 @@ known_solver_metadata (address, environment, name) as ( (0x6bf97aFe2D2C790999cDEd2a8523009eB8a0823f, 'prod', 'Portus'), (0xBB765c920f86e2A2654c4B82deB5BC2E092fF93b, 'barn', 'Portus'), (0x5E06F88D28603f5bB106bD5C8AD93ce2E902d24b, 'barn', 'Apollo'), - (0x034F6Aca83F1900b0157b0123F514A29456eeA59, 'barn', 'Laita'), (0x669Be18D403Be353C1B9EBC87225313Ec2560BF5, 'barn', 'Velvet'), (0x20dC1014E946Cf511Ee535D908eC9a1d75Dd66ce, 'barn', 'Naive'), (0x2e6822f4Ab355E386d1A4fd34947ACE0F6f344a7, 'barn', 'Baseline'), From 06b223b43657716997dd5a78a488f5a77b991f68 Mon Sep 17 00:00:00 2001 From: viniabussafi <131974393+viniabussafi@users.noreply.github.com> Date: Mon, 27 Jan 2025 16:30:35 +0000 Subject: [PATCH 15/21] automate erc4626 mapping on gnosis and add more tokens on sonic (#7566) * automate erc4626 mapping on gnosis and add more tokens on sonic * replace address --- ...lancer_v3_gnosis_erc4626_token_mapping.sql | 29 ++++++++++--------- ...alancer_v3_sonic_erc4626_token_mapping.sql | 5 +++- .../tokens/sonic/tokens_sonic_erc20.sql | 3 ++ sources/aave/gnosis/aave_gnosis_sources.yml | 2 +- 4 files changed, 23 insertions(+), 16 deletions(-) diff --git a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/gnosis/balancer_v3_gnosis_erc4626_token_mapping.sql b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/gnosis/balancer_v3_gnosis_erc4626_token_mapping.sql index 66d94189050..e23f6862e1b 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/gnosis/balancer_v3_gnosis_erc4626_token_mapping.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/gnosis/balancer_v3_gnosis_erc4626_token_mapping.sql @@ -8,21 +8,22 @@ }} WITH aave_tokens AS( - SELECT - erc4626_token, - erc4626_token_name, - erc4626_token_symbol, - underlying_token, - underlying_token_symbol, - decimals -FROM (VALUES - (0x7c16F0185A26Db0AE7a9377f23BC18ea7ce5d644, 'Static Aave Gnosis GNO', 'WaGnoGNO', 0x9C58BAcC331c9aa871AFD802DB6379a98e80CEdb, 'GNO', 18), - (0x773CDA0CADe2A3d86E6D4e30699d40bB95174ff2, 'Static Aave Gnosis wstETH', 'WaGnowstETH', 0x6c76971f98945ae98dd7d4dfca8711ebea946ea6, 'wstETH', 18), - (0x57f664882F762FA37903FC864e2B633D384B411A, 'Static Aave Gnosis WETH', 'WaGnoWETH', 0x6a023ccd1ff6f2045c3309768ead9e68f978f6e1, 'WETH', 18), - (0x51350d88c1bd32Cc6A79368c9Fb70373Fb71F375, 'Static Aave Gnosis USDC', 'waGnoUSDCe', 0x2a22f9c3b484c3629090FeED35F17Ff8F88f76F0, 'USDC', 6) - ) AS temp_table (erc4626_token, erc4626_token_name, erc4626_token_symbol, underlying_token, underlying_token_symbol, decimals) -) + b.output_0 AS erc4626_token, + t2.symbol AS erc4626_token_name, + t2.symbol AS erc4626_token_symbol, + BYTEARRAY_SUBSTRING(b.salt, 13, 24) AS underlying_token, + t1.symbol AS underlying_token_symbol, + t2.decimals AS decimals +FROM {{ source('aave_v3_gnosis', 'StataTokenV2_evt_Initialized') }} a +JOIN {{ source('aave_v3_gnosis', 'StataTokenV2Factory_call_createDeterministic') }} b +ON b.output_0 = a.contract_address +JOIN {{ source('tokens', 'erc20') }} t1 +ON t1.blockchain = 'gnosis' +AND BYTEARRAY_SUBSTRING(b.salt, 13, 36) = t1.contract_address +JOIN {{ source('tokens', 'erc20') }} t2 +ON t2.blockchain = 'gnosis' +AND b.output_0 = t2.contract_address) SELECT 'gnosis' AS blockchain, diff --git a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/balancer_v3_sonic_erc4626_token_mapping.sql b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/balancer_v3_sonic_erc4626_token_mapping.sql index dcf30383699..ed733183874 100644 --- a/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/balancer_v3_sonic_erc4626_token_mapping.sql +++ b/dbt_subprojects/hourly_spellbook/models/_project/balancer/erc4626_tokens/sonic/balancer_v3_sonic_erc4626_token_mapping.sql @@ -17,7 +17,10 @@ SELECT decimals FROM (VALUES (0xA28d4dbcC90C849e3249D642f356D85296a12954, 'Wrapped Avalon Avalon SOLVBTCBBN', 'waSonicSOLVBTCBBN', 0xCC0966D8418d412c599A6421b760a847eB169A8c, 'SolvBTC.BBN', 18), - (0xD31E89Ffb929b38bA60D1c7dBeB68c7712EAAb0a, 'Wrapped Avalon Avalon SOLVBTC', 'waSonicSOLVBTC', 0x541FD749419CA806a8bc7da8ac23D346f2dF8B77, 'SolvBTC', 18) + (0xD31E89Ffb929b38bA60D1c7dBeB68c7712EAAb0a, 'Wrapped Avalon Avalon SOLVBTC', 'waSonicSOLVBTC', 0x541FD749419CA806a8bc7da8ac23D346f2dF8B77, 'SolvBTC', 18), + (0x52Fc9E0a68b6a4C9b57b9D1d99fB71449A99DCd8, 'Silo Finance Borrowable SolvBTC.BBN Deposit', 'bSolvBTC.BBN-13', 0xCC0966D8418d412c599A6421b760a847eB169A8c, 'SolvBTC.BBN', 18), + (0x87178fe8698C7eDa8aA207083C3d66aEa569aB98, 'Silo Finance Borrowable SolvBTC Deposit', 'bSolvBTC-13', 0x541FD749419CA806a8bc7da8ac23D346f2dF8B77, 'SolvBTC', 18), + (0x7870ddFd5ACA4E977B2287e9A212bcbe8FC4135a, 'Beefy Wrapped SiloV2 USDC.e', 'BeefySiloV2USDC.e', 0x29219dd400f2Bf60E5a23d13Be72B486D4038894, 'USDC.e', 6) ) AS temp_table (erc4626_token, erc4626_token_name, erc4626_token_symbol, underlying_token, underlying_token_symbol, decimals) ) diff --git a/dbt_subprojects/tokens/models/tokens/sonic/tokens_sonic_erc20.sql b/dbt_subprojects/tokens/models/tokens/sonic/tokens_sonic_erc20.sql index d0d0be22177..f25d91110a6 100644 --- a/dbt_subprojects/tokens/models/tokens/sonic/tokens_sonic_erc20.sql +++ b/dbt_subprojects/tokens/models/tokens/sonic/tokens_sonic_erc20.sql @@ -46,4 +46,7 @@ FROM (VALUES , (0x773CDA0CADe2A3d86E6D4e30699d40bB95174ff2, 'waSonicSOLVBTC', 18) , (0x0e65f5a7cb56641e31bc5c9d53388db7ac7eacae, 'atS', 18) , (0xcf3fe6edfee9c7fdf7d53dc58f4efe66fe110981, 'BUNNY', 18) + , (0x52Fc9E0a68b6a4C9b57b9D1d99fB71449A99DCd8, 'bSolvBTC.BBN-13', 18) + , (0xD31E89Ffb929b38bA60D1c7dBeB68c7712EAAb0a, 'bSolvBTC-13', 18) + , (0x7870ddFd5ACA4E977B2287e9A212bcbe8FC4135a, 'BeefySiloV2USDC.e', 6) ) as temp (contract_address, symbol, decimals) diff --git a/sources/aave/gnosis/aave_gnosis_sources.yml b/sources/aave/gnosis/aave_gnosis_sources.yml index 57f7a425e62..1da2175265e 100644 --- a/sources/aave/gnosis/aave_gnosis_sources.yml +++ b/sources/aave/gnosis/aave_gnosis_sources.yml @@ -8,4 +8,4 @@ sources: - name: StataTokenV2_evt_Initialized - - name: StataTokenV2Factory_evt_StataTokenCreated \ No newline at end of file + - name: StataTokenV2Factory_call_createDeterministic \ No newline at end of file From c20684d294fc4d4615edcdb87c1a8d1c2929d7c1 Mon Sep 17 00:00:00 2001 From: Dmitry <98899785+mdqst@users.noreply.github.com> Date: Mon, 27 Jan 2025 19:30:45 +0300 Subject: [PATCH 16/21] Adding Token for Arbitum Nova (#7561) * Adding Token for the Nova * Update tokens_nova_erc20.sql --- .../tokens/models/tokens/nova/tokens_nova_erc20.sql | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/dbt_subprojects/tokens/models/tokens/nova/tokens_nova_erc20.sql b/dbt_subprojects/tokens/models/tokens/nova/tokens_nova_erc20.sql index 4d8929f619f..1acf52e6578 100644 --- a/dbt_subprojects/tokens/models/tokens/nova/tokens_nova_erc20.sql +++ b/dbt_subprojects/tokens/models/tokens/nova/tokens_nova_erc20.sql @@ -17,4 +17,5 @@ FROM (VALUES , (0x1d05e4e72cD994cdF976181CfB0707345763564d, 'WBTC', 8) , (0x722E8BdD2ce80A4422E880164f2079488e115365, 'WETH', 18) , (0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1, 'DAI', 18) -) AS temp_table (contract_address, symbol, decimals) \ No newline at end of file + , (0xe3dbc4f88eaa632ddf9708732e2832eeaa6688ab, 'AIUS', 18) +) AS temp_table (contract_address, symbol, decimals) From c92dfd804186145b802f1dab71a209bd78c430fa Mon Sep 17 00:00:00 2001 From: agaperste Date: Mon, 27 Jan 2025 11:34:17 -0500 Subject: [PATCH 17/21] add UNIBOT token price to Ethereum (#7553) --- .../tokens/models/prices/ethereum/prices_ethereum_tokens.sql | 1 + 1 file changed, 1 insertion(+) diff --git a/dbt_subprojects/tokens/models/prices/ethereum/prices_ethereum_tokens.sql b/dbt_subprojects/tokens/models/prices/ethereum/prices_ethereum_tokens.sql index f98e58db451..ac7674f0fc9 100644 --- a/dbt_subprojects/tokens/models/prices/ethereum/prices_ethereum_tokens.sql +++ b/dbt_subprojects/tokens/models/prices/ethereum/prices_ethereum_tokens.sql @@ -1874,6 +1874,7 @@ FROM ('apw-spectra','ethereum', 'APW', 0x4104b135dbc9609fc1a9490e61369036497660c8, 18), ('wagmi5-wagmi', 'ethereum', 'WAGMI', 0x92CC36D66e9d739D50673d1f27929a371FB83a67, 18), ('deusd-elixir-deusd','ethereum', 'DEUSD', 0x15700b564ca08d9439c58ca5053166e8317aa138, 18), + ('unibot-unibot','ethereum', 'UNIBOT', 0xf819d9cb1c2a819fd991781a822de3ca8607c3c9, 18), ('morpho-morpho','ethereum', 'MORPHO', 0x58d97b57bb95320f9a05dc918aef65434969c2b2, 18) ) as temp (token_id, blockchain, symbol, contract_address, decimals) From 7691cb7e88c8cf2b62f8776f17e90649263bb03b Mon Sep 17 00:00:00 2001 From: Jacob Sharples <45126111+JacobSharples@users.noreply.github.com> Date: Mon, 27 Jan 2025 11:36:55 -0500 Subject: [PATCH 18/21] Update prices_solana_tokens.sql (#7547) Co-authored-by: Huang Geyang --- .../prices/solana/prices_solana_tokens.sql | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/dbt_subprojects/tokens/models/prices/solana/prices_solana_tokens.sql b/dbt_subprojects/tokens/models/prices/solana/prices_solana_tokens.sql index cff67f6840b..f8dec67cbaf 100644 --- a/dbt_subprojects/tokens/models/prices/solana/prices_solana_tokens.sql +++ b/dbt_subprojects/tokens/models/prices/solana/prices_solana_tokens.sql @@ -718,5 +718,19 @@ FROM ('tank-agenttank', 'solana', 'TANK', 'GAMwtMB6onAvBNBQJCJFuxoaqfPH8uCQ2dewNMVVpump', 6), ('pengu-pudgy-penguins', 'solana', 'PENGU', '2zMMhcVQEXDtdE6vsFS7S7D5oUodfJHE8vd1gnBouauv', 6), ('trump-official-trump', 'solana', 'TRUMP', '6p6xgHyF7AeE6TZkSmFsko444wqoP15icUSqi2jfGiPN', 6), - ('melania-melania-meme','solana', 'MELANIA', 'FUAfBo2jgks6gB4Z4LfZkqSZgzNucisEHqnNebaRxM1P', 6) + ('melania-melania-meme','solana', 'MELANIA', 'FUAfBo2jgks6gB4Z4LfZkqSZgzNucisEHqnNebaRxM1P', 6), + ('usds-usds', 'solana', 'USDS', 'USDSwr9ApdHk5bvJKMjzff41FfuX8bSxdKcR81vTwcA', 6), + ('fartcoin-fartcoin', 'solana', 'FARTCOIN', '9BB6NFEcjBCtnNLFko2FqVQBq8HHM13kCyYcdQbgpump', 6), + ('smole-smolecoin', 'solana', 'SMOLE', '9Ttyez3xiruyj6cqaR495hbBkJU6SUWdV6AmQ9MvbyyS', 6), + ('grass-grass', 'solana', 'GRASS', 'Grass7B4RdKfBCjTKgSqnXkqjwiGvQyFbuSCUJr3XXjs', 9), + ('ai16z-ai16z', 'solana', 'AI16Z', 'HeLp6NuQkmYB4pYWo2zYs22mESHXPQYzXbB8n4V98jwC', 9), + ('zerebro-zerebro', 'solana', 'ZEREBRO', '8x5VqbHA8D7NkD52uNuS5nnt3PwA8pLD34ymskeSo2Wn', 6), + ('swarms-swarms', 'solana', 'SWARMS', '74SBV4zDXxTRgv1pEMoECskKBkZHc2yGPnc7GYVepump', 6), + ('arcsol-ai-rig-complex', 'solana', 'ARC', '61V8vBaqAGMpgDQi4JcAwo1dmBGHsyhzodcPqnEVpump', 6), + ('act3-act-i-the-ai-prophecy', 'solana', 'ACT', 'GJAFwWjJ3vnTsrQVabjBVK2TYB1YtRCQXRDfDgUnpump',6), + ('llm-large-language-model', 'solana', 'LLM', '98mb39tPFKQJ4Bif8iVg9mYb9wsfPZgpgN1sxoVTpump', 6), + ('nap-snap', 'solana', '$NAP', '4G86CMxGsMdLETrYnavMFKPhQzKTvDBYGMRAdVtr72nu', 6), + ('vine-vine-coin', 'solana', 'VINE', '6AJcP7wuLwmRYLBNbi825wgguaPsWzPBEHcHndpRpump', 6), + ('pippin-pippin', 'solana', 'PIPPIN','Dfh5DzRgSvvCFDoYc2ciTkMrbDfRKybA4SoFbPmApump', 6), + ('chillguy-just-a-chill-guy', 'solana', 'CHILLGUY', 'Df6yfrKC8kZE3KNkrHERKzAetSxbrWeniQfyJY4Jpump', 6) ) as temp (token_id, blockchain, symbol, contract_address, decimals) From de83cb58806f5d0a10f73960e9b153eba7e15abd Mon Sep 17 00:00:00 2001 From: 0x Date: Mon, 27 Jan 2025 19:40:30 +0300 Subject: [PATCH 19/21] Update Blast ERC20 tokens: fix decimals, remove duplicate, add new tokens (#7570) * Update tokens_blast_erc20.sql - remove stablecoin - changed decimals - add new tokens * Apply suggestions from code review Co-authored-by: jeff-dude <102681548+jeff-dude@users.noreply.github.com> --------- Co-authored-by: jeff-dude <102681548+jeff-dude@users.noreply.github.com> --- .../tokens/models/tokens/blast/tokens_blast_erc20.sql | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dbt_subprojects/tokens/models/tokens/blast/tokens_blast_erc20.sql b/dbt_subprojects/tokens/models/tokens/blast/tokens_blast_erc20.sql index a9582132f12..596633fbe03 100644 --- a/dbt_subprojects/tokens/models/tokens/blast/tokens_blast_erc20.sql +++ b/dbt_subprojects/tokens/models/tokens/blast/tokens_blast_erc20.sql @@ -13,8 +13,7 @@ SELECT , decimals FROM (VALUES (0x4300000000000000000000000000000000000004, 'WETH', 18) - , (0x4300000000000000000000000000000000000003, 'USDB', 18) - , (0x20fe91f17ec9080e3cac2d688b4ecb48c5ac3a9c, 'YES', 6) + , (0x20fe91f17ec9080e3cac2d688b4ecb48c5ac3a9c, 'YES', 18) , (0x491e6de43b55c8eae702edc263e32339da42f58c, 'ESE', 18) , (0x5ffd9ebd27f2fcab044c0f0a26a45cb62fa29c06, 'PAC', 18) , (0x2416092f143378750bb29b79ed961ab195cceea5, 'ezETH', 18) @@ -22,4 +21,5 @@ FROM (VALUES , (0x010392305558d58e1Cb0Eec5529a65bf3545f82e, 'MACHI', 18) , (0x373318cccC1da7934929d8af23eA17641522206B, 'pUSDB-WETH LP', 18) , (0x1a49351bdB4BE48C0009b661765D01ed58E8C2d8, 'YES', 18) + , (0x58538e6A46E07434d7E7375Bc268D3cb839C0133, 'ENA', 18) ) AS temp_table (contract_address, symbol, decimals) From de54ed6db4fabf915a9b3fbea31eabf407642321 Mon Sep 17 00:00:00 2001 From: jeff-dude <102681548+jeff-dude@users.noreply.github.com> Date: Mon, 27 Jan 2025 14:21:51 -0500 Subject: [PATCH 20/21] add support for native token metadata in dex pipeline (#7552) * add support for native token metadata * add native address env var --- dbt_subprojects/dex/dbt_project.yml | 1 + .../models/enrich_balancer_v3_dex_trades.sql | 22 ++++++++++++++++-- .../macros/models/enrich_curve_dex_trades.sql | 22 ++++++++++++++++-- .../models/enrich_dex_aggregator_trades.sql | 23 ++++++++++++++++--- .../dex/macros/models/enrich_dex_trades.sql | 23 ++++++++++++++++--- 5 files changed, 81 insertions(+), 10 deletions(-) diff --git a/dbt_subprojects/dex/dbt_project.yml b/dbt_subprojects/dex/dbt_project.yml index 5e25bae64bd..43c667a92e0 100644 --- a/dbt_subprojects/dex/dbt_project.yml +++ b/dbt_subprojects/dex/dbt_project.yml @@ -20,6 +20,7 @@ vars: DBT_ENV_CUSTOM_ENV_S3_BUCKET: "{{ env_var('DBT_ENV_CUSTOM_ENV_S3_BUCKET', 'local') }}" DBT_ENV_INCREMENTAL_TIME: "{{ env_var('DBT_ENV_INCREMENTAL_TIME', '1') }}" DBT_ENV_INCREMENTAL_TIME_UNIT: "{{ env_var('DBT_ENV_INCREMENTAL_TIME_UNIT', 'day') }}" + ETH_ERC20_ADDRESS: '0x0000000000000000000000000000000000000000' # These configurations specify where dbt should look for different types of files. # You don't need to change these! diff --git a/dbt_subprojects/dex/macros/models/enrich_balancer_v3_dex_trades.sql b/dbt_subprojects/dex/macros/models/enrich_balancer_v3_dex_trades.sql index 5de22f7bb5f..e2f711d151d 100644 --- a/dbt_subprojects/dex/macros/models/enrich_balancer_v3_dex_trades.sql +++ b/dbt_subprojects/dex/macros/models/enrich_balancer_v3_dex_trades.sql @@ -17,6 +17,24 @@ WITH base_trades as ( {{ incremental_predicate('block_time') }} {% endif %} ) +, tokens_metadata as ( + --erc20 tokens + select + blockchain + , contract_address + , symbol + , decimals + from + {{ tokens_erc20_model }} + union all + --native tokens + select + blockchain + , {{var('ETH_ERC20_ADDRESS')}} as contract_address -- 0x00..00 + , native_token_symbol as symbol + , 18 as decimals + from {{ source('evms','info') }} +) , enrichments AS ( SELECT base_trades.blockchain @@ -48,11 +66,11 @@ WITH base_trades as ( FROM base_trades LEFT JOIN - {{ tokens_erc20_model }} as erc20_bought + tokens_metadata as erc20_bought ON erc20_bought.contract_address = base_trades.token_bought_address AND erc20_bought.blockchain = base_trades.blockchain LEFT JOIN - {{ tokens_erc20_model }} as erc20_sold + tokens_metadata as erc20_sold ON erc20_sold.contract_address = base_trades.token_sold_address AND erc20_sold.blockchain = base_trades.blockchain ) diff --git a/dbt_subprojects/dex/macros/models/enrich_curve_dex_trades.sql b/dbt_subprojects/dex/macros/models/enrich_curve_dex_trades.sql index 8f214e1485d..db63b00dc5f 100644 --- a/dbt_subprojects/dex/macros/models/enrich_curve_dex_trades.sql +++ b/dbt_subprojects/dex/macros/models/enrich_curve_dex_trades.sql @@ -19,6 +19,24 @@ WITH base_trades as ( {{ incremental_predicate('block_time') }} {% endif %} ) +, tokens_metadata as ( + --erc20 tokens + select + blockchain + , contract_address + , symbol + , decimals + from + {{ tokens_erc20_model }} + union all + --native tokens + select + blockchain + , {{var('ETH_ERC20_ADDRESS')}} as contract_address -- 0x00..00 + , native_token_symbol as symbol + , 18 as decimals + from {{ source('evms','info') }} +) , enrichments AS ( SELECT base_trades.blockchain @@ -74,11 +92,11 @@ WITH base_trades as ( AND curve_optimism.tx_hash = base_trades.tx_hash AND curve_optimism.evt_index = base_trades.evt_index LEFT JOIN - {{ tokens_erc20_model }} as erc20_bought + tokens_metadata as erc20_bought ON erc20_bought.contract_address = base_trades.token_bought_address AND erc20_bought.blockchain = base_trades.blockchain LEFT JOIN - {{ tokens_erc20_model }} as erc20_sold + tokens_metadata as erc20_sold ON erc20_sold.contract_address = base_trades.token_sold_address AND erc20_sold.blockchain = base_trades.blockchain ) diff --git a/dbt_subprojects/dex/macros/models/enrich_dex_aggregator_trades.sql b/dbt_subprojects/dex/macros/models/enrich_dex_aggregator_trades.sql index fe88afc97dc..62fcd837aec 100644 --- a/dbt_subprojects/dex/macros/models/enrich_dex_aggregator_trades.sql +++ b/dbt_subprojects/dex/macros/models/enrich_dex_aggregator_trades.sql @@ -17,7 +17,24 @@ WITH base_trades as ( {{ incremental_predicate('block_time') }} {% endif %} ) - +, tokens_metadata as ( + --erc20 tokens + select + blockchain + , contract_address + , symbol + , decimals + from + {{ tokens_erc20_model }} + union all + --native tokens + select + blockchain + , {{var('ETH_ERC20_ADDRESS')}} as contract_address -- 0x00..00 + , native_token_symbol as symbol + , 18 as decimals + from {{ source('evms','info') }} +) , enrichments AS ( SELECT base_trades.blockchain @@ -50,11 +67,11 @@ WITH base_trades as ( FROM base_trades LEFT JOIN - {{ tokens_erc20_model }} as erc20_bought + tokens_metadata as erc20_bought ON erc20_bought.contract_address = base_trades.token_bought_address AND erc20_bought.blockchain = base_trades.blockchain LEFT JOIN - {{ tokens_erc20_model }} as erc20_sold + tokens_metadata as erc20_sold ON erc20_sold.contract_address = base_trades.token_sold_address AND erc20_sold.blockchain = base_trades.blockchain ) diff --git a/dbt_subprojects/dex/macros/models/enrich_dex_trades.sql b/dbt_subprojects/dex/macros/models/enrich_dex_trades.sql index a5df6199091..7c7dd20734a 100644 --- a/dbt_subprojects/dex/macros/models/enrich_dex_trades.sql +++ b/dbt_subprojects/dex/macros/models/enrich_dex_trades.sql @@ -17,7 +17,24 @@ WITH base_trades as ( {{ incremental_predicate('block_time') }} {% endif %} ) - +, tokens_metadata as ( + --erc20 tokens + select + blockchain + , contract_address + , symbol + , decimals + from + {{ tokens_erc20_model }} + union all + --native tokens + select + blockchain + , {{var('ETH_ERC20_ADDRESS')}} as contract_address -- 0x00..00 + , native_token_symbol as symbol + , 18 as decimals + from {{ source('evms','info') }} +) , enrichments AS ( SELECT base_trades.blockchain @@ -49,11 +66,11 @@ WITH base_trades as ( FROM base_trades LEFT JOIN - {{ tokens_erc20_model }} as erc20_bought + tokens_metadata as erc20_bought ON erc20_bought.contract_address = base_trades.token_bought_address AND erc20_bought.blockchain = base_trades.blockchain LEFT JOIN - {{ tokens_erc20_model }} as erc20_sold + tokens_metadata as erc20_sold ON erc20_sold.contract_address = base_trades.token_sold_address AND erc20_sold.blockchain = base_trades.blockchain ) From 9fbf0dfb20b4905b08772ce10f4de45fc9ee9dcb Mon Sep 17 00:00:00 2001 From: agaperste Date: Mon, 27 Jan 2025 14:22:02 -0500 Subject: [PATCH 21/21] Update v4's "maker" (token seller) to be the virtual pool id, to facilitate hooked pool metrics calculation (#7571) --- .../dex/macros/models/_project/uniswap_compatible_trades.sql | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/dbt_subprojects/dex/macros/models/_project/uniswap_compatible_trades.sql b/dbt_subprojects/dex/macros/models/_project/uniswap_compatible_trades.sql index c3a635672bd..d8bd6f87f73 100644 --- a/dbt_subprojects/dex/macros/models/_project/uniswap_compatible_trades.sql +++ b/dbt_subprojects/dex/macros/models/_project/uniswap_compatible_trades.sql @@ -127,7 +127,7 @@ FROM , PoolManager_evt_Swap = null , PoolManager_evt_Initialize = null , taker_column_name = null - , maker_column_name = null + , maker_column_name = 'id' , swap_optional_columns = ['fee'] , initialize_optional_columns = ['hooks'] , pair_column_name = 'id' @@ -139,6 +139,7 @@ WITH dexs AS t.evt_block_number AS block_number , t.evt_block_time AS block_time , {% if taker_column_name -%} t.{{ taker_column_name }} {% else -%} cast(null as varbinary) {% endif -%} as taker + -- In v4, the maker (i.e. what sold the token) is the pool's virtual address. We also pass the pool ID, making it easier to join with Initialize() and retrieve hooked pool metrics. , {% if maker_column_name -%} t.{{ maker_column_name }} {% else -%} cast(null as varbinary) {% endif -%} as maker -- in v4, when amount is negative, then user are selling the token (so things are done from the perspective of the user instead of the pool) , CASE WHEN t.amount0 < INT256 '0' THEN abs(t.amount1) ELSE abs(t.amount0) END AS token_bought_amount_raw