Dash Platform Sprint 85 Review – Summary
Tags: web3, opensource, blockchain, programming
Published: 2022-06-30 14:05:54

Hey, welcome to Dash Platform 84th Sprint review. Here's a short summary of what has been done for the last two weeks.
{% embed https://www.youtube.com/watch?v=frnEy2oLJWA&t=96s %}


## TenderDash Goals
_Backports Tendermint master branch and design withdrawal transitions_

**_What We Planned_**

- Pre-release with ABCI++ **_done_**
- Finalize withdrawal transactions using vote-extensions **_done_**
- Tenderdash is ready for a new prerelease that will include vote-extensions
- Validator key verification **_in progress_**
- Pull request is **_ready for review_** (postpone until 14 Jul)

_Bonus_
Actualization PR about integration of go-bindings for BLS  v1 **_in progress_**

**_What’s Next_**

- Finish working on the integration of go-bindings for BLS v1
- Pre-release ABCI++ including improvements for vote-extensions
- Update vote-extension part in ABCI++ spec
- Research: same-block execution - signing current state instead of previous one in ABCI

## GroveDB Goal
_Grovedb Costs, Batches and Multi-query Proofs_

**_GroveDB tasks_**
_Features_

- Multi-query proof generation and verification **_in progress_**
- Proof of path absence **_done_**
- Proof documentation **_in progress_**
- Batches v2 **_in review_** 
- Cost for storage **_in progress_**

**_Costs for storage rationale_**

- On GroveDB level costs were approximate 
- On subtrees (Merk) level costs became more accurate, but don’t represent any possible changes on storage level
- A big part of costs API includes storage operations’ data, if we collect these metrics starting directly from storage usage we’ll have better results and easier maintenance

**_What’s Next_**

- Standardize root tree to AVL tree
- Efficient references
- Finish current tasks

## SDK Sprint Goals
_Rework chain synchronization process (SPV), SDK repository documentation update, Stabilizing dashmate_

**_What We Planned_**

- Update SDK docs **_in progress_**
- Dashmate upgraded to work with Docker Compose v2 **_done_**
- Add flag for faucet wallet storage directory **_done_**
- Investigate dashmate setup issues **_in progress_**

_Wallet synchronization_

- Reworking wallet synchronization process **_in progress_**
- Replace x11 hash JS library with wasm one **_done_**
- React App POC **_done_**
- dash-spv library optimizations **_in progress_**

_**What’s Next**_
_Rework chain synchronization process (SPV)
SDK repository documentation update_

## Protocol Sprint Goals
_Fee calculation, distribution pools, and proofs_

**_What We Planned_**
_Fee calculation_

- Predict worst-case fees for state transition validation **_in progress_**
- Collect operations without execution to calculate fee in RS Drive **_in progress_**
- Fixed non-deterministic fees for data contract cache **_done_**

## GroveDB Batches integration

- Integrate GroveDB batches into RS Drive _**done**_

**_What We Planned_**
_Fee Distribution Pools_

Implementation in review
Integration with JS Drive **in progress**

_Proofs_

- Simplify public key to identity structure and remove getIdentityIdsByPublicKeyHash **_done_**
- Provide proofs from DAPI **_done_**

_Others_

- Allow 1 char document type and property name in DPP
- Log synchronize masternode identities in Drive
- Fixed uncertain transaction rollback

**_What’s Next_**

- Continue on fee system
- Release Platform v0.23
- ABCI++ integration

## Rust Port Update
_Progress_

- This sprint was a little bit different in terms from what we did before: We’ve started the first efforts on the integration of DPP
- Wrote tests to ensure that the binary serialization is in line with the JS implementation
- Ported some code serialization code from RS-Drive over to DPP, so the backend team can check what effort is needed to plug DPP in RS-Drive

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