flashbots / flashbots/mev-boost
at what level should cancellations be allowed, if at all?
- Dominant language
- Go
- Stars
- 1.4k
- Forks
- 292
- PR merge metrics
- No merged PRs in 30d
Description
**Description:**
Cancellations are a useful feature that allow individuals to cancel transactions they submitted before they land on chain. This feature is particularly useful for people executing cross-domain arbitrage.
There are 2 possible 'types' of cancellations:
- searchers cancelling their bundles to the builder
- the builder cancelling their block to the relay/proposer
The former is introduced by the builder, in which case this doesn't affect mev-boost code. The latter would concern mev-boost. We focus on this second case.
Naturally, no cancellation is possible after a header has been signed upon by the proposer - aside from a 'brute-force cancellation' where a relay does not reveal the body of a block.
**Questions**
- Does allowing cancellations at the mev-boost level opens up a DoS vector for the relay?
- The DoS here would be a builder submitting blocks, relay checking validity and then receiving cancellation request for it. There is a likely asymmetry between compute needed to cancel a body and re-submit a new one vs checking the validity of a body
- Does allowing cancellations mean bidding is now messed up? please refer to issue #112 for more details here.
- In particular, I worry this means someone could bid very high, scare other builders from participating in a round then cancel right before the end. This feel pretty harmless though but I would like to surface the concern.
Contributor guide
Assessment
This issue has not been assessed yet.