mirror of
https://github.com/chainstacklabs/pumpfun-bonkfun-bot.git
synced 2026-08-15 16:28:04 +00:00
Extreme-fast mode submits with no RPC calls between detection and buy when the listener parsed the on-chain CreateEvent (geyser/logs/blocks): TokenInfo.state_from_event carries the canonical creator, mayhem/cashback flags and quote_mint, so the pre-buy curve refresh is skipped. The geyser listener now delegates to the event-first parser instead of inlining instruction decoding, which also catches create_v2 transactions that omit the trailing is_cashback_enabled byte. Listeners without event data (pumpportal) keep the refresh, hardened per issue #170: bonding curve derived from the mint instead of the payload's bondingCurveKey, curve and mint read in one slot-consistent getMultipleAccounts (correcting the guessed token program), and an unreadable curve now skips the token within trade.curve_refresh_budget instead of submitting a buy built from guessed accounts. Machine-checked by verify_extreme_fast_zero_rpc.py and verify_pumpportal_buy_path.py; validated live via simulate_bot_buy_path on both geyser and pumpportal paths. Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
bc59a2257d
commit
7bc6f25508
@@ -144,6 +144,9 @@ async def check_examples_call_a_status_check() -> None:
|
||||
Path(__file__).name,
|
||||
# stubs confirm_transaction out; never sends a transaction
|
||||
"simulate_bot_buy_path.py",
|
||||
# offline checks with a stub client; never sends a transaction
|
||||
"verify_pumpportal_buy_path.py",
|
||||
"verify_extreme_fast_zero_rpc.py",
|
||||
# uses the bot's SolanaClient wrapper, which folds meta.err into its
|
||||
# return value; the boolean is read at the call site
|
||||
"cleanup_accounts.py",
|
||||
|
||||
Reference in New Issue
Block a user