Skip to content

Releases: JohnBasrai/mempool-vortex

v0.2.0 – MEV Simulation Pipeline (Tech Preview)

27 Sep 23:08

Choose a tag to compare

This version simulates an end-to-end MEV pipeline in Rust, including tx classification, bundle construction, and multi-relay submission logic (Flashbots, bloXroute, Eden). It is not production-ready, but demonstrates architectural design and understanding of MEV systems.

🚀 Overview

This release introduces the first complete MEV execution pipeline, enabling simulation of arbitrage, sandwich, and liquidation strategies using live mempool data — all in Rust.


✨ Features

  • 🧠 MEV Opportunity Detection
    Detects and classifies mempool transactions into MEV strategies:

    • Arbitrage across AMMs (Uniswap V2/V3)
    • Sandwich attacks
    • Liquidation triggers
  • 📦 Bundle Simulation & Submission
    Constructs and simulates MEV bundles for:

    • Flashbots
    • bloXroute
    • Eden
  • 🧪 Simulation Mode
    Use --simulate to test bundle construction without on-chain submission.

  • 🎮 CLI Enhancements

    • --addr-style short|full for address formatting
    • --color auto|always|never for log control
    • --max-tx to cap transaction processing
  • 🔍 Live Mempool Listener
    Parses and logs tx details in real-time using a structured pipeline.

  • 🛠️ Scaffolding
    Foundation for config loading, metrics collection, and integration testing.


🐛 Fixes

  • Fixed: AddrStyle move issue causing async logger panic.
  • Cleaned startup logic for better .env fallback handling.

🧭 Roadmap

Planned for future releases:

  • Integration test suite
  • Config file support
  • Relay authentication (live submission)
  • Strategy risk/profit constraints
  • Prometheus-compatible metrics

📦 Installation

Clone and run:

cargo run -- --simulate --max-tx 25

Ensure .env contains:

ETH_RPC_URL=wss://<your-sepolia-or-mainnet-endpoint>

🧪 Example Output

🔍 tx: from=0xabc…1234 → to=0xdef…5678, value=0.42 ETH, gas_price=10.2 gwei
📦 [Sim] MEV opportunity detected: arbitrage
⏱️ Bundle created: UUID=...
✅ Simulated submission to relays [Flashbots, bloXroute]

⚠️ Known Limitations

This release includes a number of compiler warnings related to unused fields, enums, and functions. These reflect planned but incomplete features (e.g. full relay support, metrics, configuration loading).

This release was intentionally tagged with warnings as a temporary stabilization point, allowing future implementation and cleanup work to proceed incrementally from a known-good baseline.

The following areas are known to produce warnings:

  • Unused fields in MEVBundle and RelayConfig
  • Placeholder methods in MEVMetrics and Config
  • Enum variants (CompoundSupply, AaveBorrow) not yet constructed
  • Unused function: validate_bundle()

Cleanup and implementation work is tracked in follow-up issues.


Released under MIT.