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

Comments

feat(node/tests): fully integrate sysgo into testing framework + CI#2731

Merged
theochap merged 9 commits intomainfrom
theo/sysgo-in-ci
Aug 21, 2025
Merged

feat(node/tests): fully integrate sysgo into testing framework + CI#2731
theochap merged 9 commits intomainfrom
theo/sysgo-in-ci

Conversation

@theochap
Copy link
Member

@theochap theochap commented Aug 20, 2025

Description

This PR integrates sysgo inside our testing framework and adds a CI job to ensure all our tests pass with sysgo enabled

Reorganizes the e2e test folders. common contains tests to run both in sysgo and kurtosis. There are a few kurtosis tests we cannot run in sysgo yet such as:

  • CPU monitoring tests (doesn't make sense for in-memory mode)
  • Custom dev websocket tests (cannot access to custom websocket subscriptions through op-node devstack API)

Copilot AI review requested due to automatic review settings August 20, 2025 10:25
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR integrates sysgo into the testing framework and adds CI support for running tests with sysgo enabled. The main purpose is to expand the testing infrastructure to support both the existing Kurtosis-based testing and the new sysgo orchestrator.

  • Refactors testing structure to separate Kurtosis-specific tests from common tests
  • Moves preset configurations to a dedicated package for better organization
  • Updates CI workflows to include sysgo-based testing alongside existing Kurtosis tests

Reviewed Changes

Copilot reviewed 29 out of 32 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
tests/node/sysgo/init_test.go Creates new test entry point for sysgo testing
tests/node/presets/ Moves and enhances preset configurations to dedicated package
tests/node/common/ Refactors common tests to work with both orchestrators
tests/node/kurtosis/ Isolates Kurtosis-specific test functionality
.github/workflows/ Adds new CI workflow for sysgo tests
tests/justfile Updates build scripts to support both testing modes

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

// Get artifacts path
artifactsPath := os.Getenv("OP_DEPLOYER_ARTIFACTS")
if artifactsPath == "" {
panic("OP_DEPLOYER_ARTIFACTS is not set")
Copy link

Copilot AI Aug 20, 2025

Choose a reason for hiding this comment

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

The panic message "OP_DEPLOYER_ARTIFACTS is not set" is not very helpful for users. Consider providing more context about what this environment variable should contain and how to set it properly.

Suggested change
panic("OP_DEPLOYER_ARTIFACTS is not set")
panic("OP_DEPLOYER_ARTIFACTS is not set. Please set the OP_DEPLOYER_ARTIFACTS environment variable to the path of your contract artifacts directory (e.g., export OP_DEPLOYER_ARTIFACTS=/path/to/artifacts). This directory should contain the deployer contract build outputs required for system setup.")

Copilot uses AI. Check for mistakes.
@theochap theochap force-pushed the theo/sysgo-in-ci branch 2 times, most recently from ae1f30f to 14b4ea6 Compare August 20, 2025 10:34
@codecov
Copy link

codecov bot commented Aug 20, 2025

Codecov Report

❌ Patch coverage is 3.22581% with 30 lines in your changes missing coverage. Please review.
✅ Project coverage is 86.0%. Comparing base (4733473) to head (6454971).
⚠️ Report is 4 commits behind head on main.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
crates/node/rpc/src/p2p.rs 0.0% 30 Missing ⚠️

☔ 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.

@theochap theochap self-assigned this Aug 20, 2025
@theochap theochap added M-tests Meta: Testing related A-node Area: cl node (eq. Go op-node) handles single-chain consensus labels Aug 20, 2025
@theochap theochap moved this to In Review in Project Tracking Aug 20, 2025
tests/go.mod Outdated

replace github.com/ethereum/go-ethereum => github.com/ethereum-optimism/op-geth v1.101511.1-dev.1.0.20250608235258-6005dd53e1b5

replace github.com/ethereum-optimism/optimism => github.com/theochap/optimism v0.0.0-20250820102920-644504580093
Copy link
Member Author

Choose a reason for hiding this comment

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

Copy link
Contributor

@emhane emhane left a comment

Choose a reason for hiding this comment

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

@theochap theochap added this pull request to the merge queue Aug 21, 2025
Merged via the queue into main with commit 3d21e87 Aug 21, 2025
34 of 36 checks passed
@theochap theochap deleted the theo/sysgo-in-ci branch August 21, 2025 13:02
@github-project-automation github-project-automation bot moved this from In Review to Done in Project Tracking Aug 21, 2025
theochap added a commit to ethereum-optimism/optimism that referenced this pull request Dec 10, 2025
…p-rs/kona#2731)

## Description

This PR integrates sysgo inside our testing framework and adds a CI job
to ensure all our tests pass with sysgo enabled

Reorganizes the e2e test folders. `common` contains tests to run both in
sysgo and kurtosis. There are a few kurtosis tests we cannot run in
sysgo yet such as:
- CPU monitoring tests (doesn't make sense for in-memory mode)
- Custom dev websocket tests (cannot access to custom websocket
subscriptions through op-node devstack API)
theochap added a commit to ethereum-optimism/optimism that referenced this pull request Jan 14, 2026
…p-rs/kona#2731)

## Description

This PR integrates sysgo inside our testing framework and adds a CI job
to ensure all our tests pass with sysgo enabled

Reorganizes the e2e test folders. `common` contains tests to run both in
sysgo and kurtosis. There are a few kurtosis tests we cannot run in
sysgo yet such as:
- CPU monitoring tests (doesn't make sense for in-memory mode)
- Custom dev websocket tests (cannot access to custom websocket
subscriptions through op-node devstack API)
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 M-tests Meta: Testing related

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants