flashbots / flashbots/rbuilder

Use `PooledTransactionVariant` instead of `PooledTransaction` to decode txs from their rlp encodings

未关闭
#653 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Rust
星标
567
派生
209
PR 合并指标
30 天内没有已合并 PR

描述

With the Fusaka fork, blobs contain cell proofs instead of just proofs for each blob. An EIP-7594 blob sidecar has been introduced which `PooledTransaction` doesn't decode.
It is suggested to use `PooledTransactionVariant` here: https://github.com/paradigmxyz/reth/blob/3a3bc5f795d01209fe565cce4991e19fc8cb52ee/crates/ethereum/primitives/src/lib.rs#L31-L33 to decode txs from the Fusaka fork.
If not changed, we end up with the following errors when trying to decode blob txs in Fusaka.
```
2025-07-02T13:51:19.138629Z INFO received a tx tx_hash=0xedf2b8b4bd0476510eb92e027dcb15203996230c25cf6efed2be82e952052c44
2025-07-02T13:51:19.141289Z INFO in get_tx_with_blobs
2025-07-02T13:51:19.141309Z INFO in decode_enveloped_with_real_blobs
2025-07-02T13:51:19.141327Z ERROR Failed to decode pooled transaction: RlpError(UnexpectedString)
2025-07-02T13:51:19.141358Z ERROR Failed to get tx from pool tx_hash=0xedf2b8b4bd0476510eb92e027dcb15203996230c25cf6efed2be82e952052c44 err=Failed to decode transaction, error: unexpected string
```

贡献指南

打开贡献指南

调研方向

Start at get_tx_with_blobs and decode_enveloped_with_real_blobs, then compare the PooledTransactionVariant definition in crates/ethereum/primitives/src/lib.rs with the current pooled-transaction decoding path. Done means Fusaka blob transactions using EIP-7594 cell proofs decode successfully without the reported UnexpectedString error.

由索引模型根据 Issue 内容生成。

评估

技术栈
rust
领域
blockchain
Issue 类型
缺陷
难度
3/5
预计耗时
1-2 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。