Dash Platform Meetup Edition – Summary
Tags: web3, opensource, blockchain, programming
Published: 2022-09-28 13:08:37

Our Platform team has run a two-week hackathon in Tbilisi, Georgia. We gathered together to work as effectively as we can, solve problems, and leverage synchronous work.

Here's what we achieved. 

{% embed https://www.youtube.com/watch?v=EMmvP6G3NrE %}

## TenderDash
 
**Goals:** Same block execution

**What We Planned**
- Implement same-block execution **_in progress_**
- First pre-release of same-block execution for integration (“alpha” quality) **_Done_**
- P2P investigating the issue mentioned in the post as the reason v0.35/v0.36 was discontinued **_in progress_**
- Backport remaining code from Tendermint 0.36 (master) **_Done_**

## What’s Next

- Stabilization of same-block execution
- Investigate P2P issues

## GroveDB 
**Goals:** Fee continuation

**GroveDB tasks**

**Features**

- Sum Trees **_in progress_**
- Storage Flag system **_in review_**
- Plugged into RS-Drive
- Costs **_in progress_**
- Inserts **_previously done_**

**Updates**
- Just In time updates **_in review_**
- Dealing with returning values **_todo_**
- Deletes **_in review _**(probably needs more work)
- Batches **_in review_**

**Storage Flags**

_5 types of Storage flags :_

- Owned Single Epoch
- Owned Multi Epoch
- Single Epoch
- Multi Epoch
- None

## Update Scenarios
**When an item is updated:**
- **Same Size:** No change in bytes
- **Bigger:**
Might add another epoch and bytes for that epoch, or bytes to the current epoch.
- **Smaller:**
Using LIFO remove bytes from last epochs.

_Then we return all bytes added (this is known to be for the current user making the transition). We also return all bytes removed for each owner ID and the epoch._

## GroveDB Update
**Problem:** When we add a non root value the parent will be modified.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1m4mhnm0lgiwoecuco3n.png)

**Solution:** Client must pay for their ONE parent reference that is not in their node.

**What’s Next**

- Costs and Worst Case Costs
- Continue plugging in our system to RS-Drive
- Delete and Updates making things smaller need to remove costs from epochs
- These returned costs need to be given back to users 

## SDK
**Goals:** Rework chain synchronization process (SPV)

**SDK tasks**
**Reworking chain synchronization process**

- Adapted new logic to existing tests and workflows with platform done **done**
- Intermediary QA and peer review **done**
- Unit tests **done**
- Integration tests **done**

_Tests covering wallet-lib and dapi-client packages_

**What’s Next**

- Testing with platform on testnet
- Consensus rules fine tuning for different networks
- Reorgs

## Protocol
**Goals:** BLS rust bindings

**Protocol tasks**

- Add withdrawal to withdrawal queues in RS Drive **_in progress_**
- Rust binding for bls signatures library **_in progress_**
- Core 18.0.1 compatibility issue fixes in Insight **_done_**
- Platform update to Core 18.1.0-alpha.2 **_done_**
- Multi transaction support in Drive **_in progress_**

**HTTPS for DAPI**

- Move SSL commands to monorepo and make them work with Envoy **_done_**
- Make dashmate setup to obtain certificate **_done_**
- Enable SSL for DAPI client **_done_**
- Implement helper container which will renew certificate automatically **_in progress_**

**_What’s Next_**

- Continue on fee system
- Continue work on withdrawals
- Continue work on BLS Rust Bindings
- Continue work on HTTPS for DAPI
- Same Block Execution integration
- Release Platform v0.23

## Rust Port Update

**What we planned**

- Bring all changes from v23 into the Rust DPP port **_in progress_**
- Make previous JS DPP tests work with Rust DPP binding **_in progress_**
- Integrate Rust DPP into SDK, Drive, DAPI and test suite **_in progress_**

## More detailed progress report

- Porting v23 changes: Previously we’ve finished 10/20, current state is 16/20
- Rust DPP integration: WASM build and bindings are created, smaller data structures are integrated and tested: We’ve added a CI, made some other data structures worked, eliminated bugs and adjusted interface to match existing usages in the platform codebase

## Core Update
v18 status & BLS upgrade

- v18 Hard fork status
LLMQ_60_75 quorums, isdlocks

- BLS upgrade
Basic BLS scheme

- Next releases
v18.1 - Next week

**Asset lock**
Implement new special transactions: Asset Lock and Asset Unlocks (withdrawal) **_done_**
Implement Credit Pool **_in progress_**
Unit tests **_done_**
Functional tests **_in progress_**

## iOS Update

**Quorum Rotation work**
Fix: Core v0.18 Issues **_done_** 
Write tests for verifying quorum rotation members **_done_**

**Dashwallet iOS Front End**

Coinbase integration **_in progress_**
Fixed an issue when when the app locks randomly
Redesigned Navigation Flow of Settings screen

## Should Platform be run on all nodes?🤔

**Masternode Solution**

- Higher Fees
- IBC more work
- Less Chance of Double Sign Attack
- Lower TPS
- More Decentralized
**VS**

**High Performance Masternode Solution**

- Lower Fees
- IBC less work
- Very little chance of a double sign
- Higher TPS
- Less Decentralized

## Identity V2

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p2drq0lax46izlkj6n3d.png)