June 2022 Development Recap for The Blockchain OS.
What’s new for the Cartesi Machine, Cartesi Rollups, and Noether?
Looking for the latest developments on the components of The Blockchain OS? You’re in the right place! As outlined in our roadmap article, we’re moving towards more regular and frequent updates to keep our community in the loop on the progress we’re making to get The Blockchain OS to the production level — to where a beautiful and diverse DApp ecosystem can flourish and grow.
Not too familiar with the components of The Blockchain OS? Make sure you take a read through these introductory articles to get you up to speed before you dive in:
The Cartesi Machine
The Cartesi Machine is Cartesi’s deterministic virtual machine that emulates a RISC-V architecture and can run a full-fledged Linux OS. It is a groundbreaking technology that offers a runtime for decentralized applications built with mainstream software.
The Microarchitecture
- We were able to fully compile the main emulator’s interpreter to the microarchitecture and then we can currently execute the macro emulator into the microarchitecture.
Self-Hosted Distributions
- Experimentation with Gentoo self-hosted distribution and Alpine Linux were temporarily paused for our team to concentrate all energy on the new Cartesi Rollups 0.3.0 release and the microarchitecture work fronts.
New Features’ Documentation
- We finished the documentation for the high-level components: command line utility and the Lua binding to the C++ low-level API. The next step is to start documentation for the low-level components and explain things like how the devices work.
Infrastructure for Rollups
The Machine Emulator team did a great job enabling a lot of improvements for Cartesi Rollups progress and also some fixes to make it more stable:
- Improved exception handling on server-manager (Changes on GRPC interfaces).
- Improved how Rollups DApps are initialized so we can handle when they stop (New rollup init).
- Improved Cartesi Machine interactive console.
- Fixed some low-level bugs on the Cartesi Machine.
- Started the update for the docker images to Ubuntu 22.04 (WIP).
- Reduced toolchain image size.
- Improved the machine store/load config.
- Cartesi ASCII logo is now optional when running the machine.
- Started the development of the Echo DApp using the Lua programming language.
Cartesi Rollups
Cartesi Rollups is Cartesi’s optimistic rollup layer-2 system relying on the Cartesi Machine to allow developers to create scalable decentralized applications with mainstream software components. It consists of on-chain and off-chain components that allow the blockchain to provide data availability, order input data, bridge tokens between layer-1 and layer-2, and serve as a referee in case of disputes.
Road to Mainnet
Cartesi Rollups 0.3 was launched this month, and with that, we’ve reached Milestone II in our Road to Mainnet roadmap!
- Cartesi Rollups 0.3 is the result of a huge effort to better structure a Cartesi Rollups DApp project.
Let’s recap what Milestone II now enables our developers to do:
- It is possible to run a client to interact with the Echo Python DApp which is already deployed to the Cartesi Testnet Alpha Infrastructure. When we reach Milestone III, every community developer will be able to request their DApp to be deployed to that infrastructure.
- Developers can follow a clear set of instructions to deploy Cartesi Rollups DApps on their own.
We finished the first set of automated integration tests on top of one of our examples. This will help us to continue evolving our solution with the safety and quality we want to provide for our community.
Examples? We have them!
- Check our new Simple Echo coded in Rust to onboard the crab lovers!
- The ERC-20 deposits example demonstrates how to parse ERC-20 deposits sent from the Portal. You can start thinking about the tokenomics of your Cartesi Rollups DApp.
- The Calculator DApp will illustrate how to incorporate a simple Python dependency into a Cartesi Rollups DApp.
- We also refactored the SQLite example to show how to use the exception handling endpoint.
DApp Validator Nodes
- Our Cartesi Testnet Infrastructure (Testnet blockchain network + AWS) has entered the alpha stage! We deployed our Echo DApp there and made it available for our community members to give it a try. Have you tried it? Let us know what you think over in our Discord community!
Rollups Enhancements
- We reached a draft version for the new HTTP API for the DApp’s frontend and we started testing it using an internal reference DApp that exercises all features exposed by the API.
Support for Computational Oracles
- We temporarily paused the discussions on how to move our Computational Oracle forward to keep our team concentrated on the Cartesi Rollups and Microarchitecture work fronts.
Arbitration for Rollups
We developed new libraries in order to have a better and more modular design:
- Memory, Word, and Merkle.
- SpliceMachine, SpliceOutputs, and SpliceUtils.
- EpochHashSplit.
- AccessProof.
- Some existing libraries were refactored: GameClock and MemoryManager.
- We developed a Lua script that automatically generates Solidity enum libraries.
- The MemoryManager received some tests.
Automatic Voucher Execution Incentivized by CTSI
- ⚠ It is important to mention that this feature depends on the scheduler component.
- Please refer to the status update for the Scheduler activity.
Transaction Sequencer Incentivized by CTSI
- ⚠ It is important to mention that this feature depends on the scheduler component.
- Please refer to the status update for the Scheduler activity.
Noether
Noether is Cartesi’s side chain for data availability. It is the part of Cartesi’s solution that will enable blockchain applications to use much more data than would be possible with Ethereum or other base layers.
Noether Version 2.0: Upgrade from PoS to PoS 2.0
- We have been working to improve the PoS 2.0 smart contracts modularity in order to better communicate with other components/solutions that depend on it (i.e. The Scheduler).
The Scheduler
- We temporarily paused the development of the Scheduler to concentrate our efforts on the work on PoS.
Explorer
- Newly released version of explorer to improve hardware wallet users' experience.
- Once the wallet is connected and the user navigates through the menu, now they are not required to reconnect the Ledger wallet.
- The new Staking feature is in its final tuning to be reviewed and prepared for a release.
- Continue the development of the new revamped UI for the creation and management of private nodes and pools.
Contribute to The Blockchain OS
Interested in developing with us? We’re always looking for collaborative team players! Feel free to contact us on Discord, check our current career openings, or send your resume along with an introduction to our HR e-mail: hr@cartesi.io.
About Cartesi
The Blockchain OS is a decentralized layer-2 infrastructure that supports Linux and mainstream software components. For the first time, developers can code scalable smart contracts with rich software tools, libraries, and the services they’re used to, bridging the gap between mainstream software and blockchain.
Cartesi is enabling millions of new startups and their developers to use The Blockchain OS and bring Linux applications on board. With a groundbreaking virtual machine, optimistic rollups, and side-chains, Cartesi paves the way for developers of all kinds, to build the next generation of blockchain apps.
Welcome to The Blockchain OS, home to what’s next.
Follow Cartesi across official channels:
Telegram Announcements | Telegram | Discord (Development Community)| Reddit | Twitter | Facebook | Instagram | Youtube | Github | Cartesi Improvement Proposal (CIP) | Website