flashbots / flashbots/rbuilder

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

Aberta
#653 1 comentário 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
Rust
Estrelas
567
Forks
209
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

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
```

Guia de contribuição

Abrir o guia de contribuição

Direção de pesquisa

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.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
rust
Domínio
blockchain
Tipo de issue
Bug
Dificuldade
3/5
Tempo estimado
1-2 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
35/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.