OpenChain messages can be created by user operations. After #1475, they could be grouped with user messages in a fallible transaction. Therefore, OpenChain messages have to be rejectable.
Proposal
Make OpenChain messages "simple" instead of "protected".
Rejecting an OpenChain message is allowed and close the chain immediately.
When closing a chain in the middle of a block, operations or accepted messages are now disallowed right after the chain is closed (not at the next block).
Empty blocks on closed chains are allowed but they have to pay a block fee.
I didn't change the open_chain syscall or the OpenChainoperation but after #1475, we should probably remove the initial transfer entirely. (This transfer is redundant and restricted to chain-to-chain accounts)
Motivation
OpenChain
messages can be created by user operations. After #1475, they could be grouped with user messages in a fallible transaction. Therefore,OpenChain
messages have to be rejectable.Proposal
OpenChain
messages "simple" instead of "protected".OpenChain
message is allowed and close the chain immediately.I didn't change the
open_chain
syscall or theOpenChain
operation but after #1475, we should probably remove the initial transfer entirely. (This transfer is redundant and restricted to chain-to-chain accounts)Test Plan
CI
Release Plan