Testnet Alpha (codename: Strive)
- TBC (Transactions, Block & Chain)
- Bech32-encoded address
- Serialization and deserialize of messages on the wire
- Merkle tree
- Actions, transfers, votes, blocks and chain
- Fast and reliable blockchain storage and query using BoltDB
- Block sync from network peers
- Basic framework for script and VM
- Account/state layer built on top of Merkle Patricia tree
- Voting and unvoting for block producer candidates
- New account-based action pool
- Network
- Efficient gossip protocol over TLS
- Broadcast & unicast semantics
- Seeding through network config
- Rate-limit requests per connection
- Peer discovery
- Large-scale simulation and load test
- Consensus
- Framework for plugable consensus
- Standalone and NOOP schemes
- Full implementation of FSM-based Roll-DPoS
- Roll-DPoS simulator
- Initial implementation of random beacon
- Clients
- JSON RPC support
- UI Design and backend implementation of explorer
- Command line console
- Crypto
- libsect283 -- lightweight crypto library, with cgo binding
- libtblsmnt -- Intial BLS signature parameterization and implementation, with cgo binding
- Testing & Integration & Deployment
- Unit test coverage > 60%
- Thorough integration tests
- Dockerization of IoTeX server
- Testnet deployment of 20+ block producer delegates in production
- Action injection and address generation tools
- Enhancement of existing features, performance improvement and code refactoring