Skip to content

fix(trace): populate base_fee_per_gas in trace_debankBlock output - #12

Merged
recursion128 merged 1 commit into
mainfrom
fix/debank-block-base-fee
Jun 26, 2026
Merged

fix(trace): populate base_fee_per_gas in trace_debankBlock output#12
recursion128 merged 1 commit into
mainfrom
fix/debank-block-base-fee

Conversation

@recursion128

Copy link
Copy Markdown
Contributor

问题

trace_debankBlock 的输出中,DebankBlock.base_fee_per_gasDebankBlockHeader.base_fee_per_gas 两个字段都被硬编码为 None(带 TODO 注释),导致 RPC 始终不返回区块的 base fee。

原注释认为只能通过 Runtime API 获取,但其实数据已经在手边:实现里已经通过 EthApi 取得了 rpc_block(frontier 的 RichBlock),其 inner.base_fee_per_gas: Option<U256> 正是所需的值。

改动

client/rpc/trace/src/lib.rs 两处:

base_fee_per_gas: rpc_block.inner.base_fee_per_gas.map(|f| f.as_u64()),
  • DebankBlock.base_fee_per_gas
  • DebankBlockHeader.base_fee_per_gas

post-EIP1559 区块返回实际 base fee,之前的区块返回 None

测试

  • cargo check -p moonbeam-rpc-trace 通过(exit 0)。

Label

B5-clientnoteworthy(仅客户端 RPC 输出修复,不涉及运行时)

Both DebankBlock and DebankBlockHeader hardcoded base_fee_per_gas to None.
Source it from the RichBlock already fetched via EthApi
(rpc_block.inner.base_fee_per_gas) so the field is correctly returned for
post-EIP1559 blocks.
@recursion128
recursion128 merged commit e515b82 into main Jun 26, 2026
3 checks passed
@recursion128
recursion128 deleted the fix/debank-block-base-fee branch June 26, 2026 14:59
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