Proposal “DCG-SUPPLEMENTAL-APR24“ (Completed)Back

Title:Dash Core Group April Supplemental Funding Proposal
Owner:quantumexplorer
One-time payment: 1156 DASH (32337 USD)
Completed payments: 1 totaling in 1156 DASH (0 month remaining)
Payment start/end: 2024-04-10 / 2024-05-09 (added on 2024-04-16)
Votes: 441 Yes / 41 No / 0 Abstain

Proposal description

What does this specific proposal fund?

DCG reserves are slowly getting better but are still low, this proposal aims to speed up recovery of a small buffer, so DCG can be in a more healthy position sooner.

How are things?

We continue to see a stronger and better Platform month by month and week by week. We released a version on Testnet that we invite all community members to try to break.

What is left to do for Evolution/Dash Platform to be released?

We have work pretty much divided into many categories of work. Please understand the time required here are estimates. The work added here is also what we currently know of, and as testing is a dynamic process things might be added to this list as they are discovered. Also please note that some tasks can only be done by certain individuals on the team. Some team members are assigned to lower priority tasks because they are best suited to take on such tasks since putting them on the more complicated tasks would not give good results.

This is also a high level overview of the major items, there are many much smaller items that we are not mentioning here. You can see all the work being done here: https://github.com/dashpay/platform/pulls?q=is%3Apr+is%3Aclosed (and this only the Platform side - not tenderdash, grovedb or the platform client text user interface that you can find in other projects on our github)

Consensus issues discovered:
Making sure that replaying state transitions can not take down the network (2 people for 4 days left of work - most work here already completed) Done
Implement multithread drive query solution (discovered during stress tests) (3 people for 2 weeks left of work) Done
Ask for all core information once for all state transitions in a block (discovered during stress tests) (2 people 3 days)
Bug in data contract queries (1 person 1 day) Done
Bug in race condition between query threads and main consensus threads (1 person 2 day New) Done
Data contract validation fixes (1 person 3 days - discovered during review) Done
Move multiple state transition validation components from mempool validation to consensus validation(1 person 5 days) Done
Found a replay attack on identity create (1 person 3 days) Done

Features left:
Masternode Voting (2 people for 7 days 4 days left of work - currently in progress)

Fine tuning
Verifying all state transitions against potential attacks (2 weeks 2 people) Initial work Done
Making sure that fees are set to values that represent costs to actual Evonode operators (3 weeks 2 people)
Internal code review (All the team 2 weeks)

SDK
Making sure that clients have properly integrated the Dash SDK (3 man/weeks left of work - mostly taken on by mobile team) Done (This task only represented the Dash SDK integration part - Mobile features will take longer)

Testing
Additional stress tests (2 people 1 week) Initial work Done (might have another round of stress tests right before release)
Additional mechanisms for better testing (1 person 3 weeks - in progress -  1 week left)
Final testing of protocol upgrades (2 people 3 days)
Chain halt mitigation process (2 people 3 days)

Might be needed
State Sync (2 people 4 weeks - in progress - 2 weeks left) - We hope to be able to release without this, however Core Team is helping on this. 
Query fees (2 people 2 weeks) - We currently do not charge state transitions for lookup queries, since this is vastly inferior to other state transition costs we believe we can release without this feature. Not needed for release.
Dapi rewritten in Rust (2 people 3 weeks) - Dapi is currently written in Javascript, it's only 14k lines of code (which is mostly boilerplate). Since it was never an expensive part of the system this was kept in Javascript, however it might prove too unreliable. Currently though we see it working well enough for release. We strongly no longer believe this is needed for release.

How much of an impact do the supplemental proposals have?

A big impact. The supplemental proposals will aid our recovery and put us in a better position for growth sooner.

If you have any questions, please direct them to quantumexplorer at dashcentral.

Requested funding is as follows for the April 25th superblock:
  • 1155 Dash ($32,340 USD @ $28 per Dash)
  •     1 Dash Proposal fee reimbursement
Total:  1156  Dash

Show full description ...

Discussion: Should we fund this proposal?

Submit comment
 
1 point,3 months ago
When will DCG release the tools necessary for Dash community members to test the ability of Dash Platform on Testnet to keep producing blocks under heavy load ? (this is related to the open invitation from DCG to Dash community members to test Dash Platform on Testnet and try to break it)
Reply
3 points,3 months ago
Is it fair to say that in four weeks from now Dash Platform on Testnet should have at the very least :

* fixed all currently discovered consensus issues

Note : current issue 'Ask for all core information once for all state transitions in a block (discovered during stress tests)' has been an open issue, since the previous 2 sprint reviews / at least since Feb 2024, maybe longer. For something that needs only 3 days of work by 2 people, this issue seems to keep lingering on the Platform teams todo list.

* obtained the feature-complete status / merged Masternode Voting
* completed a full review (and possibly adjustment) on Platform fees
* completed an internal code code review by all teams
Reply
0 points,3 months ago
No, I do not think all these items will be done within 4 weeks. I believe we will have the first 2 you mentioned will be done, and the last 2 will be in progress.

As you can see here: https://github.com/dashpay/platform/pulls?q=is%3Apr+is%3Aclosed there is a lot of small things being done outside of this list as things have been coming up routinely.
Reply
2 points,3 months ago
Then i have a hard time picturing a possible June release for Dash Platform on Mainnet, which you mentioned on Discord 13th of April 2024 :

''There's no official date for release right now, but Platform is looking pretty good. We have a few time consuming things to do, namely take another look at the prices of different Platform actions, but they are minuscule compared to what we have already achieved. If I would guess I would think we would be releasing in June. In about a month from now I will announce the official release date.''
Reply
2 points,3 months ago
I guess we will know more 13th of May 2024, but your reply does not instill much confidence in me towards seeing a release of Dash Platform materialize on Mainnet in a few months.
Reply
1 point,3 months ago
The way things are going I'm getting more and more confident it will be June. However release means software release, activation is up to Masternode network, and I expect that to take 2 to 3 weeks.
Reply
2 points,2 months ago
I am surprised to see a feat pull request like this one : https://github.com/dashpay/platform/pull/1829 (basic NFT support).

Should your attention not be fully dedicated at solving the consensus issues and finishing Masternode Voting ? According to the Dash Roadmap, NFT support is scheduled for Dash Platform v2.0 (https://www.dash.org/roadmap/).
Reply
2 points,2 months ago
If you keep adding features to Platform that you did not disclose before and which are not even on DCG current todo list and orginally scheduled for a much later phase of Dash Platform, then how will Dash Platform ever get feature-complete on Testnet ?

For all i know that time could have been spend on reviewing / adjusting the Platform fees and continuing work on internal code review.
Reply
1 point,2 months ago
I had a desire to work on it on my own time on the weekend. I personally see it as very high value. I am also a human being and sometimes there are periods when you can feel highly motivated to do something even if that is not in the plan. I had an idea about how this could be done, and felt like doing it. In my opinion if a feature like this can get me going at turbo speed that motivation will end up making finishing Masternode Voting be a breeze. Just check in next week and stop trying to micromanage.
Reply
2 points,2 months ago
Motivation and ambition, this sound really good to me. :)
Thank you for your efforts!
Reply
1 point,2 months ago
Am i to assume that developers that need to check your 5K lines of code will discuss, evaluate, analyze for possible exploits, request changes, be doing this also on their own free time ?

All i really see is continued 'feature creep' in DCG development that has caused Dash Platform delay for years now and some empty words about a DCG todo list that can apparently change whenever a developer feels like it because he feels its important. Why should i trust you, when you are so blatantly deviating from your own todo list / Dash Roadmap ?

I am not trying to micromanage, i am simply a MNO trying to keep you accountable to your own todo list.

Very disappointing to see the CTO of DCG introduce feature creep like this, making it far more easy for other developers to do the same. It is just another example of DCG not have learned anything with regards to their development delays over the years.
Reply
1 point,2 months ago
With regards to your newly introduced feature NFT's : https://www.lawfaremedia.org/article/extremist-nfts-across-blockchains (Dash is actually mentioned there, and not in a good way)
Reply
1 point,2 months ago
DCG is restricting Platform profile picture storage by drastically limiting the number of bytes one can store on platform, due to concerns about 'illegal content' on Platform and yet at the same time you set the door wide open for NFT's storage on Platform that have the same kind of illegal content and which is also immutable.
Reply