Areas of focus
Highlights
- ✅ We managed to run a UTxO-HD capable node in legacy mode, maintaining the baseline memory usage while keeping all the ledger state in memory.
- While the legacy mode is not production-ready (it requires further integration and testing), it remains as a plan B should the need arise to release UTxO-HD if our stakeholders so demand it.
- ✅ We pivoted to redesigning the Ledger DB API because:
- This is needed for integrating the LSM-tree backend.
- The redesign opened the possibility of implementing an in-memory backend that would keep the same performance and resource requirements as the baseline version (which needs to be confirmed by benchmarks).
- ✅ We created a more general Ledger DB API.
- 🛠️ We are integrating (into the feature branch) the existing Ledger DB implementations with the new API.
- 🛠️ We are implementing the new in-memory backend.
Assist mainnet node release with initial Conway capabilities, test, benchmark, and improvements to CIP 1694
- ✅ We recognized that Conway introduces a new challenge in the versioning of NTC queries, and we resolved it (see 864 and 4770).
Assist with P2P IOG relay network shut down
- ✅ We created a prototype for the pre-Genesis State Machine for bootstrap peers, which is currently under test (see this PR).
Assist with repo transfer to Intersect
- ✅ We transferred the
ouroboros-consensus
repository to the Intersect GitHub organization.
Support vendors to deliver contracts
- Genesis
- ✅ Interacted with the Consensus team and addressed resulting feedback on past deliverables.
- ✅ Finished implementation of the testing infrastructure of Genesis
- ✅ Started to refine the Proof of Concept demo into an actual implementation of the core components of the Genesis design.
- 💾 LSM-tree implementation. Well Typed:
- ✅ Finished the design of the public facing API.
- ✅ Defined the LSM-tree database file-type formats.
- ✅ Implemented property and model-based tests.
Operation serenity Q4 2023
- 🎉 We welcomed our newest team member @RenateEilers and assisted with her (ongoing) onboarding.
- ✅ We implemented a simplification in the ChainSync mini-protocol that is also a step towards Ouroboros Chronos.
- ✅ We added tests to check Consensus emits valid CBOR, which prevents the generation of invalid binary encoding.
- ✅ We established and implemented an interface between Consensus tooling and P&T tooling, which constitutes a step towards incorporating component level benchmarks in our development process.