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: Token Converter #7418

Merged
merged 16 commits into from
Oct 17, 2023
Merged

Add EIP: Token Converter #7418

merged 16 commits into from
Oct 17, 2023

Conversation

Dexaran
Copy link
Contributor

@Dexaran Dexaran commented Jul 27, 2023

No description provided.

@Dexaran Dexaran requested a review from eth-bot as a code owner July 27, 2023 16:28
@github-actions github-actions bot added c-new Creates a brand new proposal s-draft This EIP is a Draft t-erc labels Jul 27, 2023
@eth-bot
Copy link
Collaborator

eth-bot commented Jul 27, 2023

✅ All reviewers have approved.

@eth-bot eth-bot changed the title Create eip-draft_token_standard_converter.md Add EIP: Token Standard Converter Jul 27, 2023
@eth-bot eth-bot added e-consensus Waiting on editor consensus e-review Waiting on editor to review labels Jul 27, 2023
@eth-bot eth-bot changed the title Add EIP: Token Standard Converter Add EIP: Token Converter Jul 27, 2023
@eth-bot eth-bot changed the title Add EIP: Token Converter Add EIP: Token Standard Converter Jul 27, 2023
@eth-bot eth-bot changed the title Add EIP: Token Standard Converter Add EIP: Token Converter Jul 27, 2023
@github-actions
Copy link

The commit bd534f7 (as a parent of 8967ed1) contains errors.
Please inspect the Run Summary for details.

@github-actions github-actions bot added the w-ci Waiting on CI to pass label Jul 27, 2023
@github-actions github-actions bot removed the w-ci Waiting on CI to pass label Jul 27, 2023
@Dexaran
Copy link
Contributor Author

Dexaran commented Jul 27, 2023

I am proposing a cross-standard operability for tokens i.e. a method of transforming ERC-20 tokens to ERC-223 and back to ERC-20

EIP was originally named "Token Standard Converter"

Description "Smart-contract service that converts token of one standard to another"

The Walidator told me "standard" is considered a bad word here and I renamed it to "Smart-contract service that converts token of one ERC version to another" but the original name is more intuitive for token developers, I think

EIPS/eip-0.md Outdated
@@ -0,0 +1,239 @@
---
eip: 0
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
eip: 0
eip: 7417

Assigning EIP number using first PR #7417, please also update the filename.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Sure
Done

@sgitt-vassky
Copy link

It can be better to rename this eip to Interoperability of erc-20 and erc-223

because it focuses on this two standards not tokens in general and 'token converter' name does not explain anything tbh


## Abstract

There are multiple token standards on Ethereum chain currently. This EIP introduces a concept of cross-standard interoperability by creating a service that allows [ERC-20](./eip-20.md) tokens to be upgraded to [ERC-223](./eip-223.md) tokens anytime. [ERC-223](./eip-223.md) tokens can be converted back to [ERC-20](./eip-20.md) version without any restrictions to avoid any problems with backwards compatibility and allow different standards to co-exist and become interoperable and interchangeable.
Copy link
Contributor

Choose a reason for hiding this comment

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

I'd like to see a short technical summary of how this proposal implements the conversion. Do users deposit the ERC-20 and receive a new ERC-223 token? Is the whole contract converted at once? Just one sentence should be enough.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Added the description Dexaran@ebef0f9

EIPS/eip-7417.md Outdated Show resolved Hide resolved
The idea is to record the contract address here after the deployment of the contract for everyone to publicly access and use.

## Specification

Copy link
Contributor

Choose a reason for hiding this comment

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

EIPs, generally, are for standards that require multiple parties to build compatible implementations.

From my (admittedly quick) read, it sounds like there will be exactly one Token Converter and any ERC-20 contract can upgrade using it.

So I have to ask, who are the multiple implementers that need to interoperate? Couldn't you just deploy this service, and anyone could use it? If so, I don't think this proposal needs an EIP.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

  1. This is a ERC. An Ethereum Request for Comments. I want to get comments. Mainly on whether I need to create a contract that also converts ERC-223 origins to ERC-20, or this is not needed at all, or this must be a separate service.
  2. One single on-chain service that performs some task for the whole ecosystem can have an EIP. ENS has its own EIP for example https://eips.ethereum.org/EIPS/eip-137
  3. This is supposed to be one contract that will upgrade all ERC-20 tokens but there can be multiple UI implementations and multiple implementations of smart-contracts that interact with this Token Converter. As the developer who has built the only existing decentralized exchange that operates with both ERC-20 and ERC-223 tokens (this one https://github.com/Dexaran/SOY-Contracts) at the same time I think it's a much more secure way to formally describe the features of the Token Converter in a EIP so that every other third party service developer would know where to look.
  4. The issue of trust. I was planning to add the Token Converter address to the EIP in order to avoid potential scams that may pretend they are Token Converter but in fact simply steal tokens.

Copy link
Member

Choose a reason for hiding this comment

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

From my (admittedly quick) read, it sounds like there will be exactly one Token Converter and any ERC-20 contract can upgrade using it.

There is precedent for this being an ERC-category EIP. I forget the EIP number, but there was one that used its EIP number repeating as the r, v, and s values to create an instance of a contract at a predetermined address across all chains.

@Dexaran
Copy link
Contributor Author

Dexaran commented Sep 22, 2023

@SamWilsn @Pandapip1 can we merge it? Or what is expected from my side?

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.

The styling definitely deviates a lot from most new EIPs, but that can be fixed and doesn't block this EIP. I'll submit a PR to modernize this once this it's merged. If I forget, @Dexaran please ping me.

@eth-bot eth-bot enabled auto-merge (squash) October 16, 2023 19:53
Copy link
Collaborator

@eth-bot eth-bot left a comment

Choose a reason for hiding this comment

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

All Reviewers Have Approved; Performing Automatic Merge...

Copy link
Collaborator

@eth-bot eth-bot left a comment

Choose a reason for hiding this comment

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

All Reviewers Have Approved; Performing Automatic Merge...

@Dexaran
Copy link
Contributor Author

Dexaran commented Oct 17, 2023

@Pandapip1 the PR was not auto-merged for some reason.

@eth-bot eth-bot merged commit a33ae85 into ethereum:master Oct 17, 2023
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 e-consensus Waiting on editor consensus e-review Waiting on editor to review s-draft This EIP is a Draft t-erc
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants