Skip to content

Share the simulators' payment and disallow-list helpers from helix-common - #529

Open
0w3n-d wants to merge 1 commit into
od/builder-sim-role-step1from
od/sim-shared-payment-helpers-step2
Open

Share the simulators' payment and disallow-list helpers from helix-common#529
0w3n-d wants to merge 1 commit into
od/builder-sim-role-step1from
od/sim-shared-payment-helpers-step2

Conversation

@0w3n-d

@0w3n-d 0w3n-d commented Aug 28, 2026

Copy link
Copy Markdown
Collaborator

Issue: #527 (step 2 of 10)

Base branch: od/builder-sim-role-step1 (#528, step 1). Retarget to develop
once that merges.

What this PR does

Moves two groups of reth-free helpers out of the reth simulator into
helix-common, so the ethrex simulator uses the same code rather than a second
copy:

  • blacklist: the disallow list's parsing and its digest.
  • payment: Safe multiSend payment recognition, and its sol! block.

Drops helix-simulator's now-unused sha2 dependency.

Behavior is unchanged. Every function moves verbatim, and
ValidationApi::parse_disallow_list becomes a call to the free function.

What this PR deliberately does not do

No ethrex code. The payment half waited on the #500 stack, which has now
merged.

Tests

Both test modules move unchanged: blacklist::blacklist_tests (3) and
payment::multisend_payment_tests (6). The address list loads all three entries
in both 0x-prefixed and bare form; an unchanged list reports no new digest
regardless of DashSet iteration order; an amended list reports a new one; a
multiSend payload's entries to the recipient are summed, and a non-delegatecall
operation, an absent recipient, unrelated calldata and a truncated payload each
yield zero.

just fmt-check, just test and cargo clippy --all-features --no-deps -- -D warnings
are clean. cargo clippy -p helix-common reports 8 pre-existing errors in
beacon/, config.rs and http/, none in the added file.

Reviewer checklist

  • CI (lint, unit-test) is green
  • Matches the linked issue/step
  • No unexplained scope creep or unrelated files touched

@0w3n-d
0w3n-d force-pushed the od/sim-shared-payment-helpers-step2 branch from cac4f3b to 9bc8569 Compare August 28, 2026 13:01
@0w3n-d
0w3n-d changed the base branch from develop to od/builder-sim-role-step1 August 28, 2026 13:01
@0w3n-d
0w3n-d force-pushed the od/sim-shared-payment-helpers-step2 branch from 9bc8569 to 36f4e17 Compare August 28, 2026 13:08
…mmon

The disallow list's parsing and digest, and the Safe multiSend payment
recognition, carry no reth types. Move them so the ethrex simulator uses
the same code. The functions and their tests move verbatim.

Step 2 of #527.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@0w3n-d
0w3n-d force-pushed the od/sim-shared-payment-helpers-step2 branch from 36f4e17 to 9165a12 Compare August 29, 2026 14:03
@0w3n-d 0w3n-d changed the title Share the simulators' disallow-list helpers from helix-common Share the simulators' payment and disallow-list helpers from helix-common Aug 29, 2026
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.

2 participants