Skip to content

feat: upgrade op-reth with reth v1.11.3#197

Draft
Vui-Chee wants to merge 9 commits intomainfrom
vui-chee/upgrade-latest-optimism
Draft

feat: upgrade op-reth with reth v1.11.3#197
Vui-Chee wants to merge 9 commits intomainfrom
vui-chee/upgrade-latest-optimism

Conversation

@Vui-Chee
Copy link
Contributor

@Vui-Chee Vui-Chee commented Mar 13, 2026

Vui-Chee and others added 3 commits March 13, 2026 15:38
- Update paradigmxyz/reth tag from v1.11.0 to v1.11.3
- Bump deps/optimism submodule to 681867a2ed9707a976da302c488440ed76851242
  (op-reth v1.11.3 compatible)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Previously TreeConfig was constructed from scratch with only
persistence_threshold and memory_block_buffer_target, silently
ignoring all other engine flags including --engine.legacy-state-root.

Replace with builder.config().engine.tree_config() which applies all
engine CLI arguments. This fixes the runtime panic:
  "wait_cloned must not be called from a rayon worker thread"

When --engine.legacy-state-root is passed, tree_config() sets
legacy_state_root=true, which causes use_state_root_task() to return
false, selecting StateRootStrategy::Parallel and bypassing
ProofWorkerHandle entirely.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@okx okx deleted a comment from github-actions bot Mar 17, 2026
@okx okx deleted a comment from github-actions bot Mar 17, 2026
@okx okx deleted a comment from github-actions bot Mar 17, 2026
@Vui-Chee
Copy link
Contributor Author

@review

@github-actions
Copy link
Contributor

Code Review: feat: upgrade op-reth with reth v1.11.3

Summary: This PR bumps the upstream reth dependency from v1.11.0 to v1.11.3 (patch release), updates the deps/optimism submodule to a newer op-node commit (targeting op-node v1.16.8 per the PR description), and simplifies the engine tree config initialization in bin/node/src/main.rs to use reth's new tree_config() helper method.


Issues

🟡 Warning — Draft PR: This PR is currently in draft state. Ensure CI passes and the draft is promoted to ready-for-review before merge.

🟡 Warning — Submodule bump unverified: The deps/optimism submodule is updated from 6679f0bd97 to 681867a2ed. The PR description claims this targets op-node v1.16.8, but the commit hash is not independently confirmed here. Before merging, verify:

cd deps/optimism && git log --oneline -1

and confirm it matches the expected op-node v1.16.8 tag or release commit.

🔵 Suggestion — No reth changelog summary: The PR description links to the op-node release but doesn't summarize what changed between reth v1.11.0 and v1.11.3. It would be helpful to add a brief note on the key fixes/changes included in the three patch releases (v1.11.1, v1.11.2, v1.11.3) to help future reviewers understand the motivation and any potential behavioral changes.


Positives

  • Clean mechanical bump: All 44 reth dependency entries in Cargo.toml are updated atomically to v1.11.3 with no mixed versions — no risk of version skew between reth crates.
  • tree_config() refactor is correct and idiomatic: Replacing the manual TreeConfig::default().with_persistence_threshold(...).with_memory_block_buffer_target(...) construction with builder.config().engine.tree_config() is strictly better — it delegates to reth's own config parsing, avoids import of TreeConfig, and will automatically pick up any new fields added to the config in future upgrades.
  • No source-level logic changes beyond the tree config simplification — this keeps the diff minimal and review scope clear.
  • Cargo.lock updated consistently to reflect the new reth commit hash (d6324d63e2).

Verdict

Needs Discussion — The change itself is straightforward and well-executed. The two items to resolve before merging:

  1. Confirm the deps/optimism submodule commit matches the intended op-node v1.16.8 release.
  2. Promote from draft once CI (build + clippy + tests) is green.

Reviewed by Claude Code

* main:
  fix(claude): dup comments @review and unwarranted auth step trigger (#202)
  feat(intercept): add bridge intercept in flashblocks (#177)
  add github token to claude step (#201)
  restore id-token (#200)
  fix: resolve Node compile issue, use nightly formatting, pin Rust to 1.93, and fix Claude 401s (#198)
  feat: integrate legacy migrate tool into bin/tools crate (#196)
  refactor(node): clean up main.rs (#187)
  feat(ci): restrict to PR author as triggerman (#195)
The github-script REST client was silently swallowing API errors
(e.g. auth/permission failures), leaving has_alerts=false and
causing all downstream steps to be skipped with no visible reason.

Switch to gh CLI with GH_TOKEN so failures exit loudly with a
clear error message. Also simplifies the code by doing the JSON
filtering and reshaping in a single jq expression.
The Dependabot REST API returns 404 for GITHUB_TOKEN even with
security-events: read in many org configurations. Switch to
cargo audit --json which uses the same RustSec advisory database
that Dependabot uses for Rust, needs no API permissions, and
provides richer data (installed version, exact patched ranges,
CVSS vector).

Also drop the now-unnecessary security-events: read and
id-token: write permissions from the job.
* main:
  fix(ci): switch from dependabot API to cargo audit
  fix(ci): use gh CLI to fetch dependabot alerts
  feat(claude): let AI sort out security issues (#203)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant