EIPs
EIPs copied to clipboard
Add EIP-5299: Storage scaling pattern
When opening a pull request to submit a new EIP, please use the suggested template: https://github.com/ethereum/EIPs/blob/master/eip-template.md
We have a GitHub bot that automatically merges some PRs. It will merge yours immediately if certain criteria are met:
- The PR edits only existing draft PRs.
- The build passes.
- Your GitHub username or email address is listed in the 'author' header of all affected PRs, inside
. - If matching on email address, the email address is the one publicly listed on your GitHub profile.
Hi! I'm a bot, and I wanted to automerge your PR, but couldn't because of the following issue(s):
(fail) eip-5299.md
| classification |
|---|
newEIPFile |
- File with name EIPS/eip-5299.md is new and new files must be reviewed
- This PR requires review from one of [@lightclient, @axic, @samwilsn, @pandapip1]
(pass) assets/eip-5299/README.md
| classification |
|---|
ambiguous |
- file assets/eip-5299/README.md is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/Diamond.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/Diamond.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/LICENSE
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/LICENSE is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/README.md
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/README.md is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/Diamond.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/Diamond.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/facets/DiamondCutFacet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/facets/DiamondCutFacet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/facets/DiamondLoupeFacet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/facets/DiamondLoupeFacet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/facets/OwnershipFacet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/facets/OwnershipFacet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/facets/Test1Facet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/facets/Test1Facet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/facets/Test2Facet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/facets/Test2Facet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/facets/Test3Facet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/facets/Test3Facet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/facets/Test4Facet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/facets/Test4Facet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/facets/Test5Facet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/facets/Test5Facet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/interfaces/IDiamondCut.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/interfaces/IDiamondCut.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/interfaces/IDiamondLoupe.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/interfaces/IDiamondLoupe.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/interfaces/IERC165.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/interfaces/IERC165.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/interfaces/IERC173.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/interfaces/IERC173.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/libraries/LibDiamond.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/libraries/LibDiamond.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/libraries/LibTest3.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/libraries/LibTest3.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/libraries/LibTest4.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/libraries/LibTest4.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/libraries/LibTest5.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/libraries/LibTest5.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/contracts/upgradeInitializers/DiamondInit.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/contracts/upgradeInitializers/DiamondInit.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/facets/DiamondCutFacet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/facets/DiamondCutFacet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/facets/DiamondLoupeFacet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/facets/DiamondLoupeFacet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/facets/OwnershipFacet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/facets/OwnershipFacet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/facets/Test1Facet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/facets/Test1Facet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/facets/Test2Facet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/facets/Test2Facet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/facets/Test3Facet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/facets/Test3Facet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
(pass) assets/eip-5299/contracts/facets/Test4Facet.sol
| classification |
|---|
ambiguous |
- file assets/eip-5299/contracts/facets/Test4Facet.sol is associated with EIP 5299; because there are also changes being made to EIPS/eip-5299.md all changes to corresponding assets are also allowed
The commit 51e2a31800d848c84da6d185b83afe338fe6860a (as a parent of cd8e60ac91201305c63ff540831d50408c7c8310) contains errors. Please inspect the Run Summary for details.
The commit 2c237c53bc51aa51ab3e63562d77d0140742642d (as a parent of 37cba72fdecd4e7df12b0271cc55df2329799145) contains errors. Please inspect the Run Summary for details.
The commit 6ee522d12d668918c6185833fb0b18d032111f37 (as a parent of 995a195cf10db1710ad27c76867ae89e7aa65d23) contains errors. Please inspect the Run Summary for details.
The commit 7d778bcde6eb17a3202eccc48025ce9a016ca2be (as a parent of 6504415b567050b8b414e6a8605182ecf342b767) contains errors. Please inspect the Run Summary for details.
The commit daa40dec387041f510b052386b7a7da4f96e1297 (as a parent of cc59154a63f5ca3bab5c6bf8989e4acad5d43a71) contains errors. Please inspect the Run Summary for details.
The commit 72171a357f2cc065821c99d2cbc9b3dfc2278317 (as a parent of 48e130dceb65f3a5a59f22ac52a1d7da838f5537) contains errors. Please inspect the Run Summary for details.
The commit b0d16b4b0c82bde60e030d303fc712a7aaa6cb24 (as a parent of 82f42e8de0c7caa0455869efcc53750d6c3a0f1b) contains errors. Please inspect the Run Summary for details.
Hey @Pandapip1 , @lightclient , @axic , @SamWilsn Please review this PR.
This EIP was previously submitted in Ethereum magicians: https://ethereum-magicians.org/t/eip-9000-layer3-scaling-standard/9039
Here's my review so far. This review is incomplete, as I need to leave to go somewhere.
Thanks @Pandapip1 We've amended the suggestions.
The commit 1796897a77410a9b53f0959dcba5c9178bb91e66 (as a parent of 0ed80f22afe2b5c0ee23f1b590895ee56efc2e11) contains errors. Please inspect the Run Summary for details.
The commit 6cc07f30dfefcbeae2d6b38e752281a77368d1fa (as a parent of e2d69fa60c9cbe3acb789472d4b1182743083a3b) contains errors. Please inspect the Run Summary for details.
The commit 1151f735ffbf790c4b2f980be7e2efa2c3b76a2b (as a parent of a5e7f5bab68ad480fec6455d5f5d81dd018174d1) contains errors. Please inspect the Run Summary for details.
The commit 45776827e58de2df295fb0dc90d5d1b6b3e338f0 (as a parent of eac192253962797476d114fbf2a18b4fe14130b5) contains errors. Please inspect the Run Summary for details.
The commit d0fea32bcf9c23df8549a09e01f6e4750a7b8de4 (as a parent of ff130c8f18cc57f2e31573893d93e1668ef7ed2f) contains errors. Please inspect the Run Summary for details.
The commit a8d88b1264054aac44a8ec32664b0362ef5817a1 (as a parent of a2fc105f0d498fe9bbfd84b3a68bff4555ff5aac) contains errors. Please inspect the Run Summary for details.
The commit e08440ad5dbd894416c40bddca6020bd517de477 (as a parent of 894e6b352f5d96badfff21dabbacb115971d1d89) contains errors. Please inspect the Run Summary for details.
The commit b187da39825bd727d5c21ade5a9ae95545836385 (as a parent of f2585415be25200f651152b9596c2c776eadca40) contains errors. Please inspect the Run Summary for details.
The commit 4c8e07805249b0bcbe731ed400fd06fa5f4339c0 (as a parent of b93acacb4711bb5e0744b97deac980e8031fa578) contains errors. Please inspect the Run Summary for details.
This doesn't feel like it needs to be an EIP. Design patterns fall into the category of Good Ideas, which is quite different from Standards. Standards are useful when you have many to many relationships between components of a system that need to communicate, while Good Ideas can be implemented by a project without needing to worry about compatibility with other projects.
A good indicator that something is a Good Idea rather than a Standard is when everything is private, internal, or permissioned (as is the case in this EIP save for one getter). If you do want to standardize the public surface area, then the specification should be trimmed down to only the publicly accessible surface area that all implementations must conform to.
The assets associated with an EIP should not be a full application in general, it should just be enough code so that someone reading the EIP can get an idea of what an implementation might look like. Currently, this EIP includes a huge amount of code when it should maybe include a single contract that implements an interface.
The same goes for test cases. A good set of test cases define input parameters and expected output or other publicly visible results, but they shouldn't (generally) be in the form of a complete executable set of tests. There are sometimes some exceptions to this, but I don't think they apply here.
Deploy scripts definitely shouldn't be part of the EIP, nor should things like hardhat/JS configuration files.
This is a basic restructuring suggestion. Will be updated tomorrow.
The commit 84d1ba371eb3d10c18ec8d885f67f73833f3a1dc (as a parent of 82fe2865d681dd77b53b50e11ce43ffc92e941f2) contains errors. Please inspect the Run Summary for details.
The commit d33a82fbf3103a8313c5a252581dbd391e192a46 (as a parent of e94b27cd2e1f5d87123e5e3995d19e1dde4fc2bd) contains errors. Please inspect the Run Summary for details.
There has been no activity on this pull request for 2 weeks. It will be closed after 3 months of inactivity. If you would like to move this PR forward, please respond to any outstanding feedback or add a comment indicating that you have addressed all required feedback and are ready for a review.
There has been no activity on this pull request for 2 weeks. It will be closed after 3 months of inactivity. If you would like to move this PR forward, please respond to any outstanding feedback or add a comment indicating that you have addressed all required feedback and are ready for a review.
This pull request was closed due to inactivity. If you are still pursuing it, feel free to reopen it and respond to any feedback or request a review in a comment.
Innovation 🚀