Goal
Support user-submitted transaction v1 end to end through ER RPC, including execution, fee estimation, ledger persistence, restore/replay, and transaction history.
Why
Follow-up to #1658, which enables v1 for committor-built base-layer settlement transactions. Public ER/RPC handling still accepts only the existing transaction shapes.
The current ledger proto distinguishes legacy messages from a versioned-v0-like shape but cannot represent v1 transaction config without losing information. Public v1 support needs lossless persistence and history reconstruction, not just transaction construction.
Scope
- Define the public RPC acceptance policy for v1 transactions and messages, including validation and sanitization.
- Support v1 messages in
getFeeForMessage.
- Extend ledger proto and conversions to preserve v1 messages and transaction config without falling back to v0.
- Preserve v1 transaction data through restore/replay and transaction/block history APIs.
- Cover transaction submission, simulation, fee estimation, ledger restore, and transaction history.
Keep this separate from committor v1 support: those transactions are validator-built, base-layer-only, and do not require ER ledger persistence.
Goal
Support user-submitted transaction v1 end to end through ER RPC, including execution, fee estimation, ledger persistence, restore/replay, and transaction history.
Why
Follow-up to #1658, which enables v1 for committor-built base-layer settlement transactions. Public ER/RPC handling still accepts only the existing transaction shapes.
The current ledger proto distinguishes legacy messages from a versioned-v0-like shape but cannot represent v1 transaction config without losing information. Public v1 support needs lossless persistence and history reconstruction, not just transaction construction.
Scope
getFeeForMessage.Keep this separate from committor v1 support: those transactions are validator-built, base-layer-only, and do not require ER ledger persistence.