flyingfishfinding other program_ids using create_pool on pumpFun
    Updated 2025-03-29
    with cte as (
    select
    block_timestamp
    , tx_id
    , instruction
    , instruction_program_id

    from solana.core.fact_events_inner

    where 1 = 1
    and block_timestamp::date > '2025-03-20'
    and (program_id = 'pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA' -- create_pool event and log
    or
    program_id = '6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P' -- migrate event
    )
    and (instruction:data ilike '89qBdnKb%' -- createPool
    or instruction:data ilike 'rLaD5MVJ%' -- create_pool log
    -- migration/graduation called from a different program includes a pumpFun program_id 'Migrate' event
    or instruction:data = 'T5bZvAk4s5f' -- migrate
    )

    /*
    graduations called by a different program_id must have:
    - pumpFun 'Migrate' event
    - pumpFun AMM 'createPool' event
    - pumpFun AMM 'createPool' log
    */
    qualify count(1) over (partition by tx_id order by block_timestamp) = 3
    )

    select
    instruction_program_id
    , block_timestamp
    , tx_id
    , count(1)
    -- , count(distinct tx_id) as pools
    QueryRunArchived: QueryRun has been archived