specs
specs copied to clipboard
Adding returnedMessages primitive into L2ToL2CrossDomainMessenger
Description
Adds a way for the L2ToL2CrossDomainMessenger
to "send-back" failed messages.
These failed messages are stored on the origin domain's L2ToL2CrossDomainMessenger
.
This enables smart contracts to handle "failed" messages.
e.g. a future L2toL2StandardBridge
will be able to safely recover stuck funds by validating that a message was indeed NOT successful on the other domain.
For this proposal, we've also prepared a detailed Notion document, found here, that goes through the rationale and need of the returnedMessages
mapping and accompanying functionality and required modifications.
We've also prepared an example of the technical PR
We believe this would be an important primitive for Interop and the canonical bridge.
Would love to hear your thoughts and any feedback you might have on this proposal :)
Tests
N/A
Additional context
https://defi-wonderland.notion.site/L2-L2-Stuck-Messages-71a4cdb5a06c48fb94d0b98d89c46a03 previous PR: https://github.com/ethereum-optimism/specs/pull/184
Metadata
N/A
This proposal was developed as an internal research project at @defi-wonderland lead by @0xng.