Add ERC: Consolidated Dynamic Storage (CDS)
Reference implementation: https://github.com/wisecameron/ConsolidatedDynamicStorage/blob/main/contracts/CDSMinimal.sol
File ERCS/erc-7844.md
Requires 1 more reviewers from @g11tech, @samwilsn, @xinbenlv
Will fix all remaining auto check failures tomorrow
Changes in progress:
- Put implementation & specification
- Clarifications regarding entryIndex, memberIndex, safeIndex
- Specification uses RFC 2119
- Low-level diagrams depicting storage layout at various points.
- Clarifications regarding what the system is (ie; a central storage and permisision management contract)
- Specification: making basic permission management compulsory.
- Example use cases
- Optional feature: string alias for memberIndex.
- Clarification regarding intended use(s) of the system.
Note: I believe the remaining errors are not currently fixable because they relate to the absence of my assets directory in the main branch. If this assumption is incorrect, please let me know and I will adjust immediately.
In progress:
- string aliasing
- put implementation
My plan after this upcoming update is to start promoting the ERC more to encourage greater discussion before submitting for the next stage.
Current status: setting up a developer group to start encouraging more discussion. I think this concept has a ton of potential but needs to be thoroughly reviewed and optimized because it's a significantly different approach to storage management.
@SamWilsn Thank you so much for the thorough review, I sincerely appreciate it and will be sure to implement your recommendations, along with some additional points from the EM discussion.
As an aside, to record where this proposal is, I'm currently building out a lot of external infrastructure (ie; builder's docs, contributor program) around this and HoneyBadger (which is an extended ERC-7844 implementation). So there will likely be some delay as I'm setting all of this up, but this proposal is still very active.
I have substantially improved the majority of the proposal - I also have a completely refactored rationale section in the works here. I really appreciate that you guys have let me put this on the backburner for some time -- I needed to step away for a while due to work constraints and just to cool off and let these ideas settle into a more cohesive whole.
The commit f2f6e8e87745a47ae96bf791dcc548dee31c17f7 (as a parent of ce2bdae2eaf78b1ff256b558a7a000fcb8d96cb8) contains errors. Please inspect the Run Summary for details.
Looking good! Still need to remove the bold/italics from the UPPERCASE keywords, and move example code into a reference implementation section.
Hey thank you man!
Update: Been working at a very intense startup since May and haven't had as much time to work on this. I think it has quite a bit of unique merit but I need to simplify the outward image and build some interest around the concept - planning on building out a website, doing community building, and hosting some hackathons to build interest around it. Really pleased to see that the proposal hasn't been closed or anything, I 110% intend to get this moving, it's just quite a commitment to take interest from 0 to 1 and I need to be consistently dedicated to pull it off.