Should builder discard failed transactions from bundles when they're specified as reverting transaction hashes?

Calling Searchers and Builders: should Flashbots’ builder discard failed transactions from bundles when they’re specified as reverting transaction hashes?

Context

Flashbots’ builder can accept bundles of transactions, which provide certain guarantees:

  1. All transactions in a bundle must be included in specified order, with no transaction inserted between them
  2. If any transaction reverts, no transaction from the bundle will be included EXCEPT
    a. When request specifies reverting transaction hash(es), the builder can still include the bundle if the specified transaction(s) revert within it

We received a feature suggestion where: If reverting transaction hash is specified in a bundle, and that transaction FAILS, the builder discards the transaction and continues attempt to build block with the given bundle.


Definitions

It’s important to note the distinction between transaction failure and revert:


Summary

Currently the Flashbots builder stops bundle processing on failure - the whole bundle is discarded.

The feature suggestion would allow our builder to continue processing a bundle on transaction failure, provided it’s specified as a transaction that can revert in the request. Failed transactions that can revert are discarded from the bundle.

Searchers & Builders, we’d like to hear from you: should we discard failed transactions from bundles when they’re specified as reverting transaction hashes? Why or why not? Is this feature valuable to the community, or are there negative implications with this change?

Note:

  • Discarding failed transactions is a feature other builders already support, e.g. builder0x69
  • Would appreciate feedback on this feature by Friday 2023-07-29T00:00:00Z and subject to feedback and discussion we’d go live by week of 2023-08-07T00:00:00Z

Look forward to your input and friendly discussion, thank you!


TL;DR

  • We’re considering builder update to discard failed transactions from bundles if their hash is specified in request as canRevert
    Note: Failed is different from reverted, see definitions above
  • Searchers & Builders: Is this feature valuable to the community, or are there negative implications with this change?
    Note: Discarding failed transactions is a feature other builders already support, e.g. builder0x69
  • We’d appreciate feedback on this feature by Friday 2023-07-29T00:00:00Z
    – Subject to feedback and discussion we’d go live by week of 2023-08-07T00:00:00Z

References

1 Like