# Request: deployer (tx.from of the pool-creation tx) per pool, all fees (analyst1, 10 Oct)

What: for every pool in /opt/sw/v3live.db `pools` (8,717+; `creator` column is empty today) and every new pool from now on, fill `creator` = tx.from of `created_tx` (the EOA that paid for creation, not the position manager). Also log all liquidity `add` events (liq table has only 78 add rows vs 11,032 removes) with signer = tx.from.
Period: all pools since 6 Oct plus a backfill of the v3 pool-creation events 12 Sep-6 Oct if cheap (creation tx hash -> eth_getTransactionByHash; ~1 call per pool, free rpcpool is enough: I did 900 in 2 minutes).
Format: update v3live.db pools.creator in place (or a side table deployer(pool, deployer, created_t)) and keep it live; the same field in the v4 feed if possible.
Test I run on it: (1) A1-NOREPEAT: deployer with >=1 earlier pool in the last 7 days -> skip. Sample test: 900 pools: deployer 2+ pools mean 0.45 (n=21, 81 % pulled) vs 1.61; kill if on the full 8.7k set the gap is <0.3x or the filter removes >50 % of the winners. (2) Deployer trades its own pool in the first 300 s (buy 1.17, sell 0.74 vs 1.65 never): kill if the spread is <0.25x in either half. (3) Deployer fan-out: number of pools per deployer per day as a fleet score.
Why live matters: if it holds, the live detector can drop repeat deployers at entry with no extra call.
