Skip to content

feat: add revert check to mempool add - #1166

Open
dancoombs wants to merge 4 commits into
mainfrom
danc/revert-check
Open

feat: add revert check to mempool add#1166
dancoombs wants to merge 4 commits into
mainfrom
danc/revert-check

Conversation

@dancoombs

@dancoombs dancoombs commented Jul 2, 2025

Copy link
Copy Markdown
Collaborator

Proposed Changes

  • Removes execution gas limit efficiency check from the mempool, this hasn't been useful
  • Adds a revert check to the mempool. If either execution or postop reverts the UO will be rejected
  • Implement the revert check in the entry point in three ways:
    • using eth_simulateV1 - this should be used on most networks as its much more efficient
    • using debug_traceCall
    • using eth_call - this does not catch postop reverts, but does catch full execution reverts, only useful on monad at the moment.

TODO

  • Switch to using simulateHandleOp and add support for aggregated user ops
  • Lots of testing in difference scenarios
  • Determine correct settings for various networks

@codecov

codecov Bot commented Jul 2, 2025

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 12.64368% with 380 lines in your changes missing coverage. Please review.
✅ Project coverage is 59.61%. Comparing base (9afc64e) to head (cb39493).
⚠️ Report is 68 commits behind head on main.

Files with missing lines Patch % Lines
crates/provider/src/alloy/entry_point/mod.rs 0.00% 102 Missing ⚠️
crates/provider/src/alloy/entry_point/v0_7.rs 0.00% 80 Missing ⚠️
crates/provider/src/alloy/entry_point/v0_6.rs 0.00% 70 Missing ⚠️
crates/builder/src/bundle_proposer.rs 35.48% 40 Missing ⚠️
crates/pool/src/mempool/uo_pool.rs 37.77% 28 Missing ⚠️
crates/pool/src/server/remote/error.rs 0.00% 24 Missing ⚠️
crates/rpc/src/eth/error.rs 0.00% 13 Missing ⚠️
crates/types/src/pool/error.rs 0.00% 7 Missing ⚠️
bin/rundler/src/cli/mod.rs 0.00% 6 Missing ⚠️
crates/utils/src/json_rpc.rs 0.00% 3 Missing ⚠️
... and 5 more
Additional details and impacted files

Impacted file tree graph

Files with missing lines Coverage Δ
crates/builder/src/emit.rs 28.08% <ø> (ø)
crates/pool/src/mempool/mod.rs 100.00% <ø> (ø)
crates/provider/src/traits/entry_point.rs 80.00% <ø> (ø)
crates/provider/src/traits/test_utils.rs 100.00% <100.00%> (ø)
crates/rpc/src/eth/events/common.rs 24.16% <ø> (ø)
crates/types/src/chain.rs 77.20% <100.00%> (+0.34%) ⬆️
bin/rundler/src/cli/builder.rs 0.00% <0.00%> (ø)
bin/rundler/src/cli/pool.rs 0.00% <0.00%> (ø)
crates/builder/src/task.rs 2.68% <0.00%> (-0.01%) ⬇️
crates/builder/src/bundle_sender.rs 77.15% <50.00%> (-0.06%) ⬇️
... and 11 more

... and 1 file with indirect coverage changes

Flag Coverage Δ
unit-tests 59.61% <12.64%> (-0.66%) ⬇️

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

Components Coverage Δ
rundler binary 0.00% <0.00%> (ø)
builder 75.25% <35.82%> (-0.42%) ⬇️
dev ∅ <ø> (∅)
pool 65.50% <24.63%> (-0.55%) ⬇️
provider 22.76% <4.54%> (-1.52%) ⬇️
rpc 28.43% <0.00%> (-0.13%) ⬇️
sim 81.51% <ø> (ø)
tasks ∅ <ø> (∅)
types 70.34% <22.22%> (-0.11%) ⬇️
utils 51.02% <0.00%> (-0.36%) ⬇️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@dancoombs

Copy link
Copy Markdown
Collaborator Author

Looks like we need to update the geth version in the 06 compliance tests

@dancoombs dancoombs changed the title feat: add revert check to mempool entry feat: add revert check to mempool add Jul 8, 2025
@github-actions github-actions Bot added the stale label Aug 8, 2025
@github-actions github-actions Bot closed this Aug 14, 2025
@dancoombs dancoombs reopened this Aug 22, 2025
@dancoombs dancoombs added prevent-stale Prevent an issue from closure due to being stale and removed stale labels Aug 22, 2025
@github-actions github-actions Bot added the stale label Sep 22, 2025
@github-actions github-actions Bot closed this Sep 28, 2025
@dancoombs dancoombs reopened this Sep 29, 2025
@dancoombs dancoombs removed the stale label Sep 29, 2025
@github-actions github-actions Bot added the stale label Oct 30, 2025
@github-actions github-actions Bot closed this Nov 5, 2025
@dancoombs dancoombs reopened this Nov 5, 2025
@dancoombs dancoombs removed the stale label Nov 5, 2025
@dancoombs
dancoombs marked this pull request as ready for review November 21, 2025 02:52
Comment thread bin/rundler/src/cli/pool.rs Outdated
Comment thread crates/pool/src/mempool/uo_pool.rs Outdated
Comment thread crates/provider/src/alloy/entry_point/v0_6.rs
Comment thread crates/provider/src/alloy/entry_point/v0_7.rs
Comment thread docs/cli.md Outdated
@github-actions github-actions Bot added the stale label Dec 27, 2025
@github-actions github-actions Bot closed this Jan 1, 2026
@dancoombs dancoombs reopened this Jan 5, 2026
@dancoombs
dancoombs requested a review from pavelm as a code owner January 5, 2026 21:21
@github-actions github-actions Bot removed the stale label Jan 6, 2026
@github-actions github-actions Bot added stale and removed stale labels Feb 19, 2026
@github-actions github-actions Bot added stale and removed stale labels Mar 22, 2026
@github-actions github-actions Bot added stale and removed stale labels Jul 8, 2026
@github-actions github-actions Bot added stale and removed stale labels Aug 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

prevent-stale Prevent an issue from closure due to being stale

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant