Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add EIP: Add blob schedule to EL config files #9129

Open
wants to merge 6 commits into
base: master
Choose a base branch
from
Open
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
70 changes: 70 additions & 0 deletions EIPS/eip-7840.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
---
eip: 7840
title: Add blob schedule to EL config files
description: Include a per-fork schedule of max and target blob counts in client configuration files
author: lightclient (@lightclient)
discussions-to: https://ethereum-magicians.org/t/add-blob-schedule-to-execution-client-configuration-files/22182
status: Draft
type: Standards Track
category: Core
created: 2024-12-12
---


## Abstract

Add a new object to client configuration files `blobSchedule` which lists the
target blob count per block and max blob count per block for each fork.

## Motivation

- ensure there is a way to dynamically adjust the target and max blob counts per
block
- avoid complex handshake over engine API

## Specification

Extend the client configuration files with the object `blobSchedule` with the
following shape:

```json
"blobSchedule": {
"cancun": {
"target": 3,
"max": 6
},
"prague": {
"target": 6,
"max": 9
}
}
```

When there is no explicit configuration for the current fork, use the last
specified fork value. If last value is specified, set both to zero.
lightclient marked this conversation as resolved.
Show resolved Hide resolved

## Rationale

Although maintaining the target and max blob just in the consensus client is
desirable, we that the reality is execution clients need these values for
lightclient marked this conversation as resolved.
Show resolved Hide resolved
various core protocol and peripheral activities. For example, the
`eth_feeHistory` RPC method returns a field `blobGasUsedRatio` that does require
the max, even though the core protocol doesn't specifically need such value.
Passing this value over the engine API every block seem overkill so we believe a
configuration value is a good middle ground.

## Backwards Compatibility

No backward compatibility issues found.

## Test Cases

TODO
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

<-- TODO --> tag for tracking via bot


## Security Considerations

Needs discussion.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

<-- TODO --> tag


## Copyright

Copyright and related rights waived via [CC0](../LICENSE.md).
Loading