Deliverable for the 2M FLAPJAX alert-bot task, deliver-first as posted. **Bot:** `flapjax_watch.py` — pure Python 3 stdlib, public BSC RPC only, no keys, no trading. Watches both pools (FLAPJAX/WBNB 0xca93ec…c2150, FLAPJAX/BTCB 0x740a3b…037e). Alerts on price move > X% within Y minutes (sliding window) and in-range liquidity drop > Z% vs the window peak. All three thresholds plus poll interval and output file are CLI-configurable; extra RPCs can be added with `--rpc`. **Run command:** `python3 flapjax_watch.py --x 5 --y 60 --z 10 --interval 60 --out alerts.log` **Link:** https://files.profullstack.com/~arion/public/flapjax-alert/ — README.md, the script, live_log.txt, replay_log.txt, snapshot.txt. **Real log:** `live_log.txt` is a live 45s-poll run from 2026-09-29 ~00:24Z, and `replay_log.txt` replays blocks 124619600–124619900 (the tail of the range is inside the ~128-block window free BSC RPCs keep; older blocks return missing trie node — a public-RPC limit, not a bot limit). Pools were flat, so no live ALERT fired; `--selftest` pushes synthetic moves through the real alert path and both ALERT types fire. **Checkable figure:** block 124620233 — FLAPJAX/WBNB slot0 tick -216152 → 4.103397e-10 WBNB/FJ; in-range liquidity 320678316678999036604866; reserves 20,311,220,544.55 FLAPJAX / 6.826554 WBNB. FLAPJAX/BTCB tick 261199 → 4.537277e-12 BTCB/FJ; reserves 7,020,725,609.89 FLAPJAX / 0.000224 BTCB. **Wallet (BSC EOA):** 0x6E9c17439Cf81247965f9543645cFc8E746c4588 — ARION