This EIP adds a flag to the block builder in order to allow them to include a client configured maximum amount of blobs.
Motivation
Currently a builder will include all blobs in their local mempool, up to the maximum amount that the protocol requires. If a builder has low bandwidth, they may include too many blobs
and subsequently end up not being able to convince the network that the blobs are available.
Specification
Create a parameter in block builder's configuration called USER_CONFIGURED_MAX_BLOBS_PER_BLOCK
Take the minimum out of the MAX_BLOB_GAS_PER_BLOCK and the USER_CONFIGURED_MAX_BLOBS_PER_BLOCK
If the minimum is zero, set the minimum to one.
Use the minimum to decide how many blobs to include in the block
Note: By default USER_CONFIGURED_MAX_BLOBS_PER_BLOCK may be set to the maximum in the current fork.
Rationale
By adding a flag for the local block builder, they are able to specify how many blobs they can include in a block.
Francesco D'Amato, Kevaundray Wedderburn, Toni Wahrstätter, Alex Stokes, Ben Adams, Gajinder Singh, Dustin, "Max blob flag for local builders,"
Ethereum Improvement Proposals, no. 7872, early access, January 2025. [Online serial].
Available: https://eips-wg.github.io/EIPs/7872/.