# dataeng3 status 10 Oct 2026 (run 1)

## Shared tools (built once, reused by every request)
- **walletprof** `/opt/sw/dataeng/walletprof.py` -> `/opt/sw/dataeng/walletprof.db` table `w(addr pk, first_out_b, first_out_t, first_bal_b, first_bal_t, nonce_now, bal_eth_now, funder, funder_kind)`.
  Binary search over archive state (free keyless dRPC, batch of 3; rpcpool fallback): `first_out_b` = first block the wallet SENT a tx (nonce>0, exact), `first_bal_b` = first block with balance>0 (searched below first_out_b, so drained wallets work), `funder` = sender of a plain value tx to the wallet in `first_bal_b` (`funder_kind` tx / internal = funded by contract/bridge call, funder null). ~5 wallets/s. Resumable; input is a text file of addresses. Job `walletprof_loop.sh wallets_all.txt` is running (13.9k wallets, ~50 min): creators of the 27k e1x pools (4.5k known so far), txfrom_598 (5.3k), v3from (867), first-20 signers of 1,125 v3 pools (4k).
- **poolcreator** `/opt/sw/dataeng/poolcreator.py` -> `poolcreator.db` table `pc(pool pk, tx, block, creator=tx.from, nonce=tx nonce at creation, to_addr)` for all 27,272 pools of e1x-runners-v2 (a3_456 pools first). Free rpcpool is flaky (429): runs in a retry loop (`poolcreator_loop.sh`), resumes.
- **peakpons** `/opt/sw/dataeng/peakpons.py` -> `peakpons.db` (#492), computed from the local chainlogs tape, no RPC.

## Per item
- **#126** hooked fee-100 tape: ppdata's `r6hook.py` is already running on exactly this CSV (`/opt/sw/ppdata/r6hook.db`, newest first, includes tx_from): 437 of 1194 done, only ~10 pools/hour (RPC starved), `/opt/ppcopy/r6hook.db` is still the empty placeholder. 161 of the 757 remaining pools are >= block 52M (local tape could serve them); 596 are older than the local tape and need getLogs. Not duplicated; open.
- **#456** DONE (tape + names; creators filling): `/opt/ppcopy/a3_456.db`: meta+ev (r6weth format, 58,858 events) for the 711 v4 no-hook native/WETH custom-fee pools of e1x (271 touched 300k; fee not in 0/100/8388608), table `dep(pool, token, fee, quote, created_t, touched300k, creator, creator_nonce, creator_first_out_b/t, funder, funder_kind, name, symbol)`. 708/711 have name/symbol; creator/funder columns fill when `python3 -I /opt/sw/dataeng/a3_456.py` is rerun after poolcreator/walletprof finish. No tx.from per swap (tape keeps only tx15). The "1,500 random control pools" are NOT included (the e1x universe has only the 711; say if you want births from tokens.db instead).
- **#345** Proxima: negative first probe. Sampled 12 large sells of the 160 known bundle pools (bundle_fund.db bundle_sell) with debug_traceTransaction: the seller gets 100% of the unwrapped WETH (router 0xcaf681a6... or 0xf2a27749...), no ~5% leg to a recurring address. WETH Transfer receipts of 120 sells show only router/unwrap legs. So the fee fingerprint is NOT visible in sells of the existing bundle set; next: run the same trace on sells from the 205 front4 WETH pools (analyst2 list fw/a2-px-front4-weth.txt). Open.
