fix(op-e2e): price L2 transactions from eth_gasPrice - #2
Merged
Merged
Conversation
The node no longer serves eth_feeHistory (FISCO-BCOS/FISCO-BCOS#5593 removed it; the implementation waits on its own follow-up PR), and cast's EIP-1559 fee suggestion calls that method on every `cast send`. The L2 sends in the withdraw, l2_tx_scenarios and xdm legs therefore failed with -32601 before broadcasting. --legacy prices those transactions from eth_gasPrice, which every lane of the node implements. rpc_matrix's R2b feeHistory assertions become a printed SKIP when the method is absent (the same treatment eth_config already gets), so the tier keeps its teeth wherever the method is served and the nighty full run does not red on a deferred method.
ywy2090
added a commit
to ywy2090/FISCO-BCOS
that referenced
this pull request
Sep 15, 2026
…acy exclusions * The harness pin moves to the commit that prices L2 transactions with --legacy (FISCO-BCOS/op-stack-e2e-tests#2). This node's method set has no eth_feeHistory and cast's fee suggestion calls it on every `cast send`, which is exactly the -32601 the per-PR C2 leg has been failing on; rpc_matrix's R2b assertions become a printed SKIP there. The pin is that PR's branch commit until it lands — replace it with the merge commit then. * ci_opnode_startup_check.sh gains REQUIRE_HARNESS: its missing-harness SKIP (documented, and safe to wire before the toolchain carries op-node) stays the default, but a caller that does check the harness out can now demand a run that measured something. Same shape as run-all.sh's REQUIRE_DEVNET. * .codacy.yml listed no exclusions under a comment describing the C2 e2e tooling it points the analyzer away from; the in-repo entrypoints and helpers are now listed.
ywy2090
added a commit
to ywy2090/FISCO-BCOS
that referenced
this pull request
Sep 15, 2026
…s knobs Round 11 N2: the pin pointed at FISCO-BCOS/op-stack-e2e-tests#2's branch tip, which a rebase or a closed PR takes away — the workflows would then fail deterministically for every later run. Keep it on that repository's default branch and bump it to #2's merge commit when that lands (the --legacy L2 pricing this node needs is #2's subject). Round 11 N3: REQUIRE_HARNESS and REQUIRE_DEVNET were set by nobody, so the "reports green without measuring anything" behaviour they were added for was unchanged; the SKIP lines are the signal and the step names say so. Drop the knobs and say that in the headers instead of leaving a switch no caller sets.
The fee-boundary suite's send_async is invoked without a fee flag for its ordering probes; cast then falls back to its EIP-1559 suggestion and calls eth_feeHistory, which this node does not serve. Default those sends to --legacy (eth_gasPrice), and leave the cases that name their own fee style alone — they are the suite's subject.
The runner's inline L2 sends (the CONTEST=1 contest withdrawal and the MATRIX=1 funding send) carry no fee flag, so cast falls back to its EIP-1559 suggestion and calls eth_feeHistory, which this node does not serve: the nightly leg died with -32601 "Method not found" right after the withdraw phase went green locally. The per-PR smoke (CONTEST=0, MATRIX=0) never reaches either send, which is why only the nightly path showed it. Found while verifying the engine fix that made the withdraw leg pass: the same run reported E2E ALL GREEN for the withdraw+claim lifecycle and then -32601 here.
ywy2090
added a commit
to ywy2090/FISCO-BCOS
that referenced
this pull request
Sep 15, 2026
FISCO-BCOS/op-stack-e2e-tests#2 (--legacy L2 pricing for a node without eth_feeHistory) is merged, so both c2_e2e jobs can pin its merge commit instead of a PR branch tip — the stable revision the review asked for, and it carries the fee-path fixes the per-PR smoke and the nightly legs need.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The node no longer serves
eth_feeHistory: FISCO-BCOS/FISCO-BCOS#5593 removed it and theimplementation waits on its own follow-up PR (preserved on
feat/fee-history-eip1559). cast'sEIP-1559 fee suggestion calls that method on every
cast send, so the L2 sends in the withdraw,l2_tx_scenariosandxdmlegs failed with-32601 Method not foundbefore broadcasting — whichis what the node repo's per-PR C2 leg has been failing on since that removal.
Changes:
withdraw_e2e.sh,l2_tx_scenarios.sh,xdm_e2e.sh: the L2cast sendcalls pass--legacy,which prices them from
eth_gasPrice— implemented on every lane of the node. L1 calls (anvil)are untouched.
rpc_matrix.py: the R2b feeHistory assertions now usecall_optional, so a node that answers-32601gets a printed SKIP (the treatmenteth_configalready gets) instead of a red. Theshape assertions still run wherever the method IS served, so the tier keeps its teeth for the
node's follow-up PR.
Local checks:
bash -non the three scripts,py_compileonrpc_matrix.py,python3 -m unittest discover -s tools/op-e2e/tests(9 tests, OK).The node repo pins this repo by SHA; once this lands there, bump that pin to the merge commit
(it is temporarily pointed at this branch's commit so the per-PR C2 leg can turn green on the fix).