Skip to content

Add the EIP-8141 frame transaction fields to the receipt - #860

Open
AnkushinDaniil wants to merge 1 commit into
ethereum:mainfrom
AnkushinDaniil:daniil/eip8141-receipt
Open

Add the EIP-8141 frame transaction fields to the receipt#860
AnkushinDaniil wants to merge 1 commit into
ethereum:mainfrom
AnkushinDaniil:daniil/eip8141-receipt

Conversation

@AnkushinDaniil

Copy link
Copy Markdown

EIP-8141 replaces the single transaction-level status with a list of per-frame receipts, so a receipt returned over JSON-RPC has to say three things the schema cannot express today: who paid, what each frame did, and what the transaction's status means when the transaction itself has none.

This adds payer and frameReceipts to ReceiptInfo, both only present for frame transactions, and pins status for them: 1 if every frame receipt has status 1, and 0 otherwise. Deriving it from the frame receipts rather than from execution state keeps a node that executed the block and a node that only received the receipt in agreement.

Frame status 2 is the EIP-8141 code for a frame skipped because its atomic batch failed.

The transaction object side of EIP-8141 is not covered here.

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