Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add EIP-5164: Cross-Chain Execution #5164

Merged
merged 24 commits into from
Sep 22, 2022
Merged

Add EIP-5164: Cross-Chain Execution #5164

merged 24 commits into from
Sep 22, 2022

Conversation

asselstine
Copy link
Contributor

@asselstine asselstine commented Jun 15, 2022

The initial draft for the Cross-Chain Execution EIP! 🎉 🎉

Once an EIP number is assigned, I will create a corresponding topic in Ethereum Magicians.

Note: the EIP was born out of a conversation on Ethereum Magicians.

@eth-bot
Copy link
Collaborator

eth-bot commented Jun 15, 2022

A critical exception has occurred:
Message: pr 5164 is already merged; quitting
(cc @alita-moore, @mryalamanchi)

EIPS/eip-X.md Outdated Show resolved Hide resolved
EIPS/eip-X.md Outdated Show resolved Hide resolved
EIPS/eip-X.md Outdated Show resolved Hide resolved
EIPS/eip-X.md Outdated Show resolved Hide resolved
EIPS/eip-X.md Outdated Show resolved Hide resolved
EIPS/eip-X.md Outdated Show resolved Hide resolved
EIPS/eip-X.md Outdated Show resolved Hide resolved
EIPS/eip-X.md Outdated Show resolved Hide resolved
EIPS/eip-X.md Outdated Show resolved Hide resolved
EIPS/eip-X.md Outdated Show resolved Hide resolved
@asselstine
Copy link
Contributor Author

Thanks @MicahZoltu! I will review and update.

@asselstine asselstine changed the title Cross-Chain Execution EIP-5164: Cross-Chain Execution Jun 17, 2022
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
- Supports public bridges
- Make `relayCalls` payable
- Add gas limit and caller
- Added EIP feedback
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
Copy link
Contributor

@SamWilsn SamWilsn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is looking good! Just need to clear up the last three comments and get eipw to run (#5310, cc. @MicahZoltu & @lightclient)

## Abstract

This specification defines a cross-chain execution interface for EVM-based blockchains. Users of this spec will be able to have contracts on one chain call contracts on another chain. The specification is agnostic of the transport layer, so that implementations can choose how they relay the execution.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It'd be nice if the abstract gave a tad more of a technical overview, and a hint of how the cross-chain communication works.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm getting ready to turn my attention back to this. I will add more background!

@github-actions
Copy link

The commit a641fed (as a parent of 18a613e) contains errors. Please inspect the Run Summary for details.

auto-merge was automatically disabled July 28, 2022 20:07

Head branch was pushed to by a user without write access

@eth-bot eth-bot enabled auto-merge (squash) July 28, 2022 20:07
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
@PierrickGT
Copy link
Contributor

The executor parameter passed to the relayCalls function has been removed in the following commit:
a478089#diff-41efe0617f861cc7330b025ecc86d55fe777d3c503208d83dca04258de4f5f41R55

We have realized during the implementation of this EIP that bridges most often communicate with only one executor contract on the receiving chain.
So it is pretty superfluous to pass this address all the time to the relayCalls function.

Applications can decide to set the executor address either through the constructor or via a setter function.

EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
EIPS/eip-5164.md Outdated Show resolved Hide resolved
PierrickGT and others added 9 commits September 22, 2022 17:46
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Copy link
Member

@Pandapip1 Pandapip1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is okay for a draft

@eth-bot eth-bot enabled auto-merge (squash) September 22, 2022 23:00
@eth-bot eth-bot merged commit e14d58a into ethereum:master Sep 22, 2022
nachomazzara pushed a commit to nachomazzara/EIPs that referenced this pull request Jan 13, 2023
* Added Cross-Chain Execution EIP

* Integrated pull request review changes for EIP 5164

* Added discussion-to link

* Updated EIP-5164 according to discussion

- Supports public bridges
- Make `relayCalls` payable
- Add gas limit and caller
- Added EIP feedback

* Latest Pull Request changes

* Changed ERC->EIP

* EIP-5164: Fixed up for EIPW bot

* EIP-5164: add ReceiverAware specification

* EIP-5164: fix EIP-N linting

* EIP-5164: improve CrossChainExecutor description

* EIP-5164: improve ExecutorAware description

Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>

* EIP-5164: remove executor from relayCalls

* EIP-5164: reword RelayCalls requirements

Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>

* EIP-5164: reword RelayedCalls requirements

Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>

* EIP-5164: reword GasLimitTooHigh requirements

Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>

* EIP-5164: reword Authentication requirements

Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>

* EIP-5164: reword Authentication requirements

Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>

* EIP-5164: reword CallFailure requirements

Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>

* EIP-5164: reword ExecutedCalls requirements

Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>

* EIP-5164: reword Security Considerations

Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>

* EIP-5164: update rationale

Co-authored-by: Pierrick Turelier <pierrick@turelier.com>
Co-authored-by: Pandapip1 <45835846+Pandapip1@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c-new Creates a brand new proposal s-draft This EIP is a Draft t-erc
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants