Skip to content

feat(spec-specs,test-forks,ci): add the Bogota fork module - #3665

Merged
spencer-tb merged 3 commits into
ethereum:forks/bogotafrom
spencer-tb:feat/bogota-fork-module
Oct 5, 2026
Merged

spencer-tb merged 3 commits into
ethereum:forks/bogotafrom
spencer-tb:feat/bogota-fork-module

Conversation

@spencer-tb

@spencer-tb spencer-tb commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor

Description

Adds the bogota fork module as a copy of Amsterdam with no protocol changes, plus framework support for Bogota and the Amsterdam-to-Bogota transition. Includes automatic EIP mixin discovery, packaging and Hive compatibility, and enables Bogota in CI filling, block validation, coverage, benchmark filling, and execute/consume collection checks.

Related Issues or PRs

N/A.

Checklist

  • Ran fast static checks to avoid CI fails, see Code Standards & Verifying Changes: just static
  • PR title has the form <type>(<area>): <title>, where <type> and <area> come from an appropriate C-<type>, respectively A-<area>, label. The title should match the target squash commit message.

@codecov

codecov Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 97.64858% with 91 lines in your changes missing coverage. Please review.
✅ Project coverage is 94.91%. Comparing base (b38646c) to head (e505a90).

Files with missing lines Patch % Lines
src/ethereum/forks/bogota/fork.py 85.57% 22 Missing and 21 partials ⚠️
...ota/vm/precompiled_contracts/bls12_381/__init__.py 82.41% 8 Missing and 8 partials ⚠️
src/ethereum/forks/bogota/transactions.py 97.26% 5 Missing and 3 partials ⚠️
...forks/bogota/vm/precompiled_contracts/alt_bn128.py 93.61% 3 Missing and 3 partials ⚠️
src/ethereum/forks/bogota/vm/gas.py 98.55% 2 Missing and 3 partials ⚠️
src/ethereum/forks/bogota/exceptions.py 94.28% 2 Missing ⚠️
src/ethereum/forks/bogota/fork_types.py 92.85% 2 Missing ⚠️
src/ethereum/forks/bogota/state_tracker.py 98.92% 1 Missing and 1 partial ⚠️
src/ethereum/forks/bogota/vm/instructions/log.py 93.33% 1 Missing and 1 partial ⚠️
src/ethereum/forks/bogota/vm/interpreter.py 98.65% 1 Missing and 1 partial ⚠️
... and 2 more
Additional details and impacted files
@@               Coverage Diff                @@
##           forks/bogota    #3665      +/-   ##
================================================
+ Coverage         94.62%   94.91%   +0.28%     
================================================
  Files               624      672      +48     
  Lines             36976    40846    +3870     
  Branches           3349     3775     +426     
================================================
+ Hits              34988    38767    +3779     
- Misses             1397     1445      +48     
- Partials            591      634      +43     
Flag Coverage Δ
unittests 94.91% <97.64%> (+0.28%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@spencer-tb
spencer-tb force-pushed the feat/bogota-fork-module branch from 13d21d6 to 061a91d Compare September 28, 2026 14:35
@spencer-tb spencer-tb added A-spec-specs Area: Specification—The Ethereum specification itself (eg. `src/ethereum/*`) C-feat Category: an improvement or new feature A-test-forks Area: execution_testing.forks A-ci Area: Continuous Integration C-hegota labels Sep 28, 2026
@spencer-tb
spencer-tb force-pushed the feat/bogota-fork-module branch from 061a91d to 1645e86 Compare September 28, 2026 14:51
Comment thread src/ethereum/forks/bogota/vm/gas.py Outdated
@spencer-tb
spencer-tb force-pushed the feat/bogota-fork-module branch from 6ab264f to 192d7c2 Compare September 29, 2026 10:52
@spencer-tb
spencer-tb changed the base branch from forks/bogota to forks/amsterdam September 29, 2026 10:52

@danceratopz danceratopz left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Few small CI and doc related suggestions/questions!

Can you bump these, here, too?

class DocsConfig(BaseModel):
"""A class for accessing documentation-related configurations."""
TARGET_FORK: str = "Amsterdam"
"""The target fork for the documentation."""
GENERATE_UNTIL_FORK: str = "Amsterdam"
"""The fork until which documentation should be generated."""

Comment thread src/ethereum/forks/bogota/__init__.py
Comment thread Justfile
Comment thread .github/workflows/test.yaml Outdated

@danceratopz danceratopz left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Target branch is currently forks/amsterdam, we shouldn't merge this work to Amsterdam. We should create forks/bogota and merge that there. We can then bump the default dev branch when we're ready.

@danceratopz

Copy link
Copy Markdown
Member

The branch exists btw (and doesn't contain Bogota yet :-) ):
https://github.com/ethereum/execution-specs/tree/forks/bogota

@spencer-tb
spencer-tb force-pushed the feat/bogota-fork-module branch from b64973f to e505a90 Compare October 5, 2026 21:06

@marioevz marioevz left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM, I diffed both spec folders for Amsterdam and Bogota and they have only the correct changes. Thanks for this.

@spencer-tb
spencer-tb merged commit 82a41d3 into ethereum:forks/bogota Oct 5, 2026
34 checks passed
@marioevz
marioevz deleted the feat/bogota-fork-module branch October 5, 2026 22:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-ci Area: Continuous Integration A-spec-specs Area: Specification—The Ethereum specification itself (eg. `src/ethereum/*`) A-test-forks Area: execution_testing.forks C-feat Category: an improvement or new feature C-hegota

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants