Author: Silas Davis, 7 March 2018
This roadmap post-mortem provides a review of the Q1 2018 Roadmap. The goal is to be a non-judgemental self-appraisal of what was achieved relative to the roadmap including with a focus on the reasons things were or were not achieved, why different things were achieved, and how it should inform future roadmaps.
The Q1 roadmap broke things down into the following buckets:
Bucket | Description |
---|---|
A | Core Burrow and Hyperledger Liaison |
B | Bosmarmot (Burrow ancillary tooling monorepo) |
C | Web3 API support and Ethereum tooling |
I will maintain the same structure as the original document throughout and comment on each section and item.
Work item | Buckets | Completion |
---|---|---|
Publish Bosmarmot | P, A | Done |
Push Hypermarmot | P | Done |
Make EPM tests pass | P | Done |
Reconnect v0 RPC | P, A | Done |
Roadmap capture | P, A | Done |
Keys standalone release | B | Omitted |
Review WIP Hypermarmot PR | A, B, C | Done |
Work item | Buckets | Completion | Notes |
---|---|---|---|
Metropolis opcodes implementation | A | 20% | |
Implement prototype web3 API | C | 0% | deprioritised for Monax and technical reasons blocked collaboration with IBM |
Add Javascript libraries to Bosmarmot | B | 90% | Fixing some tests |
Co-located transaction or local signing | P, B | 0% | pending |
Github issues review/triage | A | 50% | on-going - waiting to close some tickets after testing |
Work on outstanding bugs | A, P | 75% | many fixed |
Assist Fabric/Seth integration | P, A | 100% | as intended but still on-going |
Build early boot/network formation process | P, B | 60% | still needs key gossip but scripts exist |
Provide Kubernetes helm charts | P, B | 100% | and added to k8s libaries |
Provide event firehose | P, B | 30% | logging and events framework ready to handle but need to be connected |
Add building/contributing documentation | B, P | 10% | small amount added but more needed - is coming |
Add deployment documentation | B, A | 0% | |
Add logging documentation | B, A | 50% | more coming |
Add GenesisSpec documentation | B, A | 80% | in tool usage message |
Update RPC documentation | B, C | 0% | may omit |
Reach 50% best practice badge | B, A | 100% | Badge now at 71% |
Work item | Buckets | Github Issues | Completion | Notes |
---|---|---|---|---|
Reintroduce validator bonding | P | 0% | needed this quarter in some form | |
Provide truffle and web3.js tooling compatibility | C | 0% | web3 not complete | |
Complete Web3 compatibility RPC | C | 0% | deprioritised by monax | |
Provide trial HSM integaration | P, A | 20% | objects added PrivValidatorMemory to support - but pending mainline support in Tendermint | |
Reintroduce secp256k1 keys & ECRECOVER | A, B | 50% | re-introduced in monax-keys and dropped GPL dependency ready to be moved to Burrow itself for more comprehensive support | |
Merkle tree replacement | P, A | 20% | planned to move to tendermint/iavl - but need to add some changes |
Future work: All of these remain planned: