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

fix(node/tests): fix kurtosis ci#2808

Merged
theochap merged 1 commit intomainfrom
theo/fix-kurtosis-ci
Sep 3, 2025
Merged

fix(node/tests): fix kurtosis ci#2808
theochap merged 1 commit intomainfrom
theo/fix-kurtosis-ci

Conversation

@theochap
Copy link
Copy Markdown
Member

@theochap theochap commented Sep 3, 2025

Description

This PR fixes kurtosis jobs in CI

Copilot AI review requested due to automatic review settings September 3, 2025 11:57
@theochap theochap self-assigned this Sep 3, 2025
@theochap theochap added M-tests Meta: Testing related A-node Area: cl node (eq. Go op-node) handles single-chain consensus labels Sep 3, 2025
Copy link
Copy Markdown
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 fixes Kurtosis CI jobs by pinning the Teku consensus layer client to a specific version and downgrading the Kurtosis CLI version.

  • Pins Teku consensus layer client to version 25.7.1 across all test devnet configurations
  • Downgrades Kurtosis CLI from version 1.10.3 to 1.8.1 in mise.toml

Reviewed Changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated no comments.

Show a summary per file
File Description
tests/devnets/simple-supervisor.yaml Adds Teku version pin to fix consensus layer compatibility
tests/devnets/simple-kona.yaml Adds Teku version pin to fix consensus layer compatibility
tests/devnets/simple-kona-sequencer.yaml Adds Teku version pin to fix consensus layer compatibility
tests/devnets/simple-kona-geth.yaml Adds Teku version pin to fix consensus layer compatibility
tests/devnets/simple-kona-conductor.yaml Adds Teku version pin to fix consensus layer compatibility
tests/devnets/preinterop-supervisor.yaml Adds Teku version pin to fix consensus layer compatibility
tests/devnets/large-kona.yaml Adds Teku version pin to fix consensus layer compatibility
tests/devnets/large-kona-sequencer.yaml Adds Teku version pin to fix consensus layer compatibility
tests/devnets/first-kona-conductor.yaml Adds Teku version pin to fix consensus layer compatibility
mise.toml Downgrades Kurtosis CLI version for compatibility

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

@claude
Copy link
Copy Markdown
Contributor

claude bot commented Sep 3, 2025

Claude finished @theochap's task —— View job


PR Review: fix(node/tests): fix kurtosis ci

Reviewing changes that pin Teku consensus client version and downgrade Kurtosis CLI to fix CI issues.

Review Tasks:

  • Analyze mise.toml Kurtosis CLI downgrade
  • Review devnet YAML configuration changes
  • Assess version pinning strategy and approach
  • Check for consistency across all devnet configs
  • Evaluate potential impact on CI stability
  • Provide overall feedback and recommendations

Review Feedback

Code Quality & Best Practices

Positive aspects:

  • Consistent approach: The Teku version pin (consensys/teku:25.7.1) is applied uniformly across all 9 devnet configurations
  • Targeted fix: Changes are minimal and focused specifically on the CI stability issue
  • Backwards compatibility: Version downgrades are generally safer than upgrades for CI stability

Areas for improvement:

  • Missing line termination: Both modified files lack proper line endings (mise.toml:3 and YAML files)
  • Documentation: Consider adding a comment in mise.toml explaining why the Kurtosis CLI version is pinned to 1.8.1

⚠️ Potential Issues

  1. Version drift concern: The dual version pinning approach (Kurtosis CLI downgrade + Teku pin) creates technical debt:

    • Kurtosis CLI: 1.10.31.8.1 (significant downgrade)
    • Risk of missing important bug fixes and features in newer Kurtosis versions
    • Should document when these pins can be updated
  2. Implicit dependencies: The relationship between Kurtosis CLI version and Teku compatibility isn't documented

    • Future maintainers may not understand why these specific versions are required

🔒 Security Considerations

  • Image provenance: Teku image consensys/teku:25.7.1 appears to be from the official Consensys registry ✅
  • Version pinning benefits: Prevents unexpected issues from automatic updates ✅
  • Downgrade risk: Using older Kurtosis CLI (1.8.1) may miss security patches - monitor for CVEs

Performance Considerations

  • Version changes are configuration-only with no performance impact
  • Older Kurtosis CLI may have performance regressions, but stability takes precedence for CI

🧪 Test Coverage

  • Changes affect test infrastructure rather than application code
  • All 9 devnet configurations are updated consistently ✅
  • Consider adding a test that validates version compatibility

📋 Recommendations

  1. Documentation: Add inline comments explaining version choices:

    # Pinned to 1.8.1 due to compatibility issues with Teku 25.7.1 in CI
    "ubi:kurtosis-tech/kurtosis-cli-release-artifacts[exe=kurtosis]" = "1.8.1"
  2. File formatting: Add proper line endings to mise.toml

  3. Future maintenance: Create a follow-up issue to:

    • Test compatibility with newer Kurtosis CLI versions
    • Establish a regular review cycle for version pins
    • Document the upgrade path
  4. CI monitoring: Ensure the fixed CI jobs are monitored for continued stability

🎯 Overall Assessment

This is a well-executed emergency fix that addresses immediate CI stability issues. The approach is conservative and consistent, prioritizing reliability over cutting-edge versions. While it introduces some technical debt through version pinning, this is appropriate for resolving urgent CI failures.

Recommendation: ✅ Approve - The changes effectively address the stated problem with minimal risk.


@theochap theochap enabled auto-merge September 3, 2025 11:58
@codecov
Copy link
Copy Markdown

codecov bot commented Sep 3, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 86.0%. Comparing base (b68d533) to head (c74a96d).
⚠️ Report is 1 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.

@theochap theochap added this pull request to the merge queue Sep 3, 2025
Merged via the queue into main with commit 81734d7 Sep 3, 2025
37 checks passed
@theochap theochap deleted the theo/fix-kurtosis-ci branch September 3, 2025 12:33
theochap added a commit to ethereum-optimism/optimism that referenced this pull request Dec 10, 2025
## Description

This PR fixes kurtosis jobs in CI
theochap added a commit to ethereum-optimism/optimism that referenced this pull request Jan 14, 2026
## Description

This PR fixes kurtosis jobs in CI
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

None yet

Development

Successfully merging this pull request may close these issues.

3 participants