reth icon indicating copy to clipboard operation
reth copied to clipboard

"mev_simBundle" rpc method for enhanced transaction simulation

Open zently opened this issue 1 year ago • 9 comments

Describe the feature

mev_simBundle is a rpc endpoint spec used for simulating a bundle in the virtual environment. First introduced by the flashbot, it is widely recognized as THE BEST way to simulate a bundle (possibly multiple tx)

Currently eth_callBundle works well for similar purpose but mev_simBundle is better in that, it returns transaction logs of the simulated transaction.

Having transaction logs is critical in multiple occasions such as,

  • Pre-validating transaction before sending real transaction (for protection, test)
  • Test / debugging contract
  • Searchers checking whether specific pending transaction yields specific action (e.g. token transfer, swap)

Currently, within "mev.rs" struct for the mev_simBundle is already defined fully, while its implementation is missing in the "bundle.rs".

Additional context

Flashbots document

zently avatar Jul 12 '24 09:07 zently