alchemyplatform / rundler

An ERC-4337 Bundler in Rust
GNU Lesser General Public License v3.0
286 stars 43 forks source link

Fix replacement underpriced forget bug #811

Closed dancoombs closed 1 month ago

dancoombs commented 1 month ago

Proposed Changes

dancoombs commented 1 month ago

TODO: add a unit test for this

codecov[bot] commented 1 month ago

Codecov Report

Attention: Patch coverage is 57.44681% with 20 lines in your changes missing coverage. Please review.

Project coverage is 58.00%. Comparing base (2a0e8be) to head (0043adf). Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
crates/builder/src/bundle_sender.rs 60.97% 16 Missing :warning:
bin/rundler/src/cli/metrics.rs 0.00% 2 Missing :warning:
crates/sim/src/simulation/v0_6/tracer.rs 0.00% 1 Missing :warning:
crates/sim/src/simulation/v0_7/tracer.rs 0.00% 1 Missing :warning:
Additional details and impacted files [![Impacted file tree graph](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/graphs/tree.svg?width=650&height=150&src=pr&token=FQKCPQJU2X&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform)](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | [Files with missing lines](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | Coverage Δ | | |---|---|---| | [crates/builder/src/transaction\_tracker.rs](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811?src=pr&el=tree&filepath=crates%2Fbuilder%2Fsrc%2Ftransaction_tracker.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform#diff-Y3JhdGVzL2J1aWxkZXIvc3JjL3RyYW5zYWN0aW9uX3RyYWNrZXIucnM=) | `75.54% <100.00%> (-3.83%)` | :arrow_down: | | [crates/types/src/timestamp.rs](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811?src=pr&el=tree&filepath=crates%2Ftypes%2Fsrc%2Ftimestamp.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform#diff-Y3JhdGVzL3R5cGVzL3NyYy90aW1lc3RhbXAucnM=) | `98.10% <100.00%> (ø)` | | | [crates/sim/src/simulation/v0\_6/tracer.rs](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811?src=pr&el=tree&filepath=crates%2Fsim%2Fsrc%2Fsimulation%2Fv0_6%2Ftracer.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform#diff-Y3JhdGVzL3NpbS9zcmMvc2ltdWxhdGlvbi92MF82L3RyYWNlci5ycw==) | `0.00% <0.00%> (ø)` | | | [crates/sim/src/simulation/v0\_7/tracer.rs](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811?src=pr&el=tree&filepath=crates%2Fsim%2Fsrc%2Fsimulation%2Fv0_7%2Ftracer.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform#diff-Y3JhdGVzL3NpbS9zcmMvc2ltdWxhdGlvbi92MF83L3RyYWNlci5ycw==) | `0.00% <0.00%> (ø)` | | | [bin/rundler/src/cli/metrics.rs](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811?src=pr&el=tree&filepath=bin%2Frundler%2Fsrc%2Fcli%2Fmetrics.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform#diff-YmluL3J1bmRsZXIvc3JjL2NsaS9tZXRyaWNzLnJz) | `0.00% <0.00%> (ø)` | | | [crates/builder/src/bundle\_sender.rs](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811?src=pr&el=tree&filepath=crates%2Fbuilder%2Fsrc%2Fbundle_sender.rs&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform#diff-Y3JhdGVzL2J1aWxkZXIvc3JjL2J1bmRsZV9zZW5kZXIucnM=) | `72.41% <60.97%> (+2.60%)` | :arrow_up: | ... and [49 files with indirect coverage changes](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | [Flag](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | Coverage Δ | | |---|---|---| | [unit-tests](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | `58.00% <57.44%> (+0.49%)` | :arrow_up: | Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform#carryforward-flags-in-the-pull-request-comment) to find out more. | [Components](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/components?src=pr&el=components&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | Coverage Δ | | |---|---|---| | [rundler binary](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | `0.00% <0.00%> (ø)` | | | [builder](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | `61.25% <61.90%> (+0.67%)` | :arrow_up: | | [dev](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | `0.00% <ø> (ø)` | | | [pool](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | `65.53% <ø> (+1.07%)` | :arrow_up: | | [provider](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | `18.50% <ø> (+2.39%)` | :arrow_up: | | [rpc](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | `25.34% <ø> (-0.12%)` | :arrow_down: | | [sim](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | `78.17% <0.00%> (-0.37%)` | :arrow_down: | | [tasks](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | `∅ <ø> (∅)` | | | [types](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | `66.87% <100.00%> (+0.18%)` | :arrow_up: | | [utils](https://app.codecov.io/gh/alchemyplatform/rundler/pull/811/components?src=pr&el=component&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=alchemyplatform) | `18.28% <ø> (ø)` | |