Platform & Core Dev Updates Journal – Feb 7
Tags: devjournal, webdev, opensource, web3
Published: 2023-02-14 19:33:49

So, what happened over the last week with Dash Platform? 
Short summary below.

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

---

## TenderDash

### Stabilization
**What We Planned**

Stabilization and Improvements (v1.0)

- fix(config)!: quorum type set to 0 during replay at genesis **_done_**
- conversion of PEM-encoded ED25519 node keys **_done_**
- feat(cmd): derive node key from bip39 mnemonic **_done_**
- build(docker): add abcidump to release image **_done_**
- Seed connectivity issues **_in progress_**

Investigate deadlocks (v1.1)

- refactor: add-vote operation **_done_**
- refactor: DoPrevoteCommand replaced on Prevoter implementation **_done_**
- refactor: consensus peer gossip mechanism **_in review_**
- refactor: add-vote operation **_in review_**
- refactor: consensus state to fix deadlock **_in review_**

**What’s Left before Testing Phase**

- ~~Stabilize same-block execution~~
- ~~Update BLS library~~
- Updated BLS library integration
- Adjust vote extensions for withdrawal transactions
- ~~Improve seed node operations~~
- ~~Drive integration~~

---

## GroveDB
**Tasks:** 

- Sum tree parent costs **_done_**
- Merk Proof Specification draft **_done_**
- GroveDB Proof Specification draft **_in progress_**

---

## Protocol

### Identity v2

**Protocol Tasks 1.**

- Identity v2 **_done_**
- Efficient Root Tree **_done_**
- Balance Tree **_done_**
- Sum Tree Integration **_done_**
- Strategy tests **_done_**
- Total credit balance verification **_done_**
- Calculate expected total credits amount **_done_**
- Efficient Data Serialization **_in progress_**
- Refactor DPP document types **_done_**
- Variant Protocol versions **_done_**

**Protocol Tasks 2.**

- Add support for Core v19-beta.X **_in progress_**
- Create self-contained Dashmate package **_in progress_**
- Use HTTP port for gRPC native **_done_**

**Credit Withdrawals**

- Introduce withdrawals data contract **_in review_**
- Implement the pooling process (type 0 only) for withdrawals  **_in review_**
- Update status of withdrawals after broadcasting **_in review_**
- Add revision logic to IdentityCreditsWithdrawal transition **_in review_**
- Indices from expired withdrawal transactions must be reused **_in review_**

**What’s Left**

Major

- ~~Fee Refunds~~
- Accomplish withdrawals **_in review_**

Minor

- ~~Logging of same block execution~~
- ~~Use block candidate context in State Repository~~
- ~~Deal with situation where fees are higher than Balance~~
- ~~Add Sum Tree feature for Pool trees~~
- Asset Lock and Unlock transactions integration (blocked by dpp integration)
- ~~BLS library rust binding~~ **not for beta 1**
- Masternode block reward distribution
- Withdrawals verification after rust dpp integration

---

## Rust Port Update

**What we planned**

- Merged all Identities and Asset Lock pull requests **_done_**
- Asynchronous State Repository **_done_**
- JSON-Schema missing functionality **_in progress_**
- Documents Transitions **_in progress_** (2 integration tests left)
- Data Contract facade and integration **_in review_**
- V24 backports and removing tech debt **_in progress_**
- Unified error format to rs-dpp **_in progress_**

**What's next**

- Finish v24 backports
- Merge all unmerged PRs that are related to Documents and Data Contracts
- Finish adding missing json-schema features
- Since Identity v2 has been merged as well, we can now start the platform integration (DAPI/Dive/SDK) after finishing the v24 backports

---

## Core Dev

**What’s next?**

- v19.0.0 Release Candidate
- Unlikely v18.2.2 Release w/ minor fixes
- Continued maintenance, backporting and feature development