Since the removal of the only eoa invariant from the interop spec, the CrossL2Inbox no longer needs to be thought of as an inbox. Previously, we enforced an eoa to send a transaction to the CrossL2Inbox with calldepth == 0 by enforcing require(msg.sender == tx.origin). This made the executing message data be in the calldata rather than an event. The nice property here is that you can statically analyze cross chain transactions to check the correctness of an executing message (the identifier references the message). After the removal of the only eoa invariant, now execution is required to check the correctness of an executing message.
Since the CrossL2Inbox is no longer the entrypoint for a cross chain message, should it be renamed? This issue is meant to collect a list of names and we can decide on Aug 16th if we ultimately want to rename the contract.
Since the removal of the only eoa invariant from the interop spec, the
CrossL2Inbox
no longer needs to be thought of as an inbox. Previously, we enforced an eoa to send a transaction to theCrossL2Inbox
with calldepth == 0 by enforcingrequire(msg.sender == tx.origin)
. This made the executing message data be in the calldata rather than an event. The nice property here is that you can statically analyze cross chain transactions to check the correctness of an executing message (the identifier references the message). After the removal of the only eoa invariant, now execution is required to check the correctness of an executing message.Since the
CrossL2Inbox
is no longer the entrypoint for a cross chain message, should it be renamed? This issue is meant to collect a list of names and we can decide on Aug 16th if we ultimately want to rename the contract.