Skip to content
This repository was archived by the owner on Jan 16, 2026. It is now read-only.

test(node/sync-e2e): adding e2e safe head sync tests#1857

Merged
theochap merged 2 commits intomainfrom
theo/sync-e2e-tests
May 25, 2025
Merged

test(node/sync-e2e): adding e2e safe head sync tests#1857
theochap merged 2 commits intomainfrom
theo/sync-e2e-tests

Conversation

@theochap
Copy link
Copy Markdown
Member

@theochap theochap commented May 24, 2025

Description

This PR adds a test to ensure that nodes sync properly the safe heads and have a consistent view of the state.
For each kona-node, this test:

  • Gathers the node's safe head gossip over 10sec
  • Checks that all the other nodes that have seen all these safe heads have a consistent view with the gossiped safe heads.

For now, we only have positive tests so we're lacking some coverage (what happens with rogue nodes, network failures, reorgs, ...). These cases will come once we adapt the integration testing suite to use in-memory mode.

Note

Adds back the real "large network configuration" to CI now that we have fixed CPU usage of the kona nodes #1853

Related issues

Close #1463

@theochap theochap self-assigned this May 24, 2025
@theochap theochap added the K-feature Kind: feature label May 24, 2025
@theochap theochap requested a review from clabby as a code owner May 24, 2025 02:57
@theochap theochap added the M-tests Meta: Testing related label May 24, 2025
@theochap theochap requested review from emhane and refcell as code owners May 24, 2025 02:57
@theochap theochap added the A-node Area: cl node (eq. Go op-node) handles single-chain consensus label May 24, 2025
@theochap theochap added the A-sync Area: block sync interface label May 24, 2025
@theochap theochap moved this to In Review in Project Tracking May 24, 2025
@theochap theochap linked an issue May 24, 2025 that may be closed by this pull request
@codecov
Copy link
Copy Markdown

codecov bot commented May 24, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 83.7%. Comparing base (88c01b9) to head (a655d34).
Report is 2 commits behind head on main.

✅ All tests successful. No failed tests found.

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

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Copy Markdown
Contributor

@clabby clabby left a comment

Choose a reason for hiding this comment

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

Test looks good! Only curious about the large increase in participants on the network; Could be pretty heavy to run in CI.

@clabby
Copy link
Copy Markdown
Contributor

clabby commented May 25, 2025

Also need to update the serialization tests for the BlockInfo type.

@theochap theochap enabled auto-merge May 25, 2025 03:15
@theochap theochap force-pushed the theo/sync-e2e-tests branch from cf56dd9 to a655d34 Compare May 25, 2025 13:26
@theochap theochap added this pull request to the merge queue May 25, 2025
Merged via the queue into main with commit 43137d7 May 25, 2025
21 of 22 checks passed
@theochap theochap deleted the theo/sync-e2e-tests branch May 25, 2025 14:00
@github-project-automation github-project-automation bot moved this from In Review to Done in Project Tracking May 25, 2025
theochap added a commit to ethereum-optimism/optimism that referenced this pull request Dec 10, 2025
## Description

This PR adds a test to ensure that nodes sync properly the safe heads
and have a consistent view of the state.
For each kona-node, this test:
- Gathers the node's safe head gossip over 10sec
- Checks that all the other nodes that have seen all these safe heads
have a consistent view with the gossiped safe heads.

For now, we only have positive tests so we're lacking some coverage
(what happens with rogue nodes, network failures, reorgs, ...). These
cases will come once we adapt the integration testing suite to use
`in-memory` mode.

## Note

Adds back the real "large network configuration" to CI now that we have
fixed CPU usage of the kona nodes op-rs/kona#1853

## Related issues

Close op-rs/kona#1463
theochap added a commit to ethereum-optimism/optimism that referenced this pull request Jan 14, 2026
## Description

This PR adds a test to ensure that nodes sync properly the safe heads
and have a consistent view of the state.
For each kona-node, this test:
- Gathers the node's safe head gossip over 10sec
- Checks that all the other nodes that have seen all these safe heads
have a consistent view with the gossiped safe heads.

For now, we only have positive tests so we're lacking some coverage
(what happens with rogue nodes, network failures, reorgs, ...). These
cases will come once we adapt the integration testing suite to use
`in-memory` mode.

## Note

Adds back the real "large network configuration" to CI now that we have
fixed CPU usage of the kona nodes #1853

## Related issues

Close #1463
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A-node Area: cl node (eq. Go op-node) handles single-chain consensus A-sync Area: block sync interface K-feature Kind: feature M-tests Meta: Testing related

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Integration tests for safe-block syncing

2 participants