August 2022 Development Recap for The Blockchain OS.

See the latest updates on the Cartesi Machine, Cartesi Rollups, and Noether.

Cartesi Foundation
Cartesi
6 min readAug 24, 2022

--

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:

For a quick overview on August’s developments, check out the roadmap diagram below to see what’s new for the Cartesi Machine, Cartesi Rollups, and Noether.

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

  • The microarchitecture can now be controlled via the public Cartesi Machine API. It is also available for testing via the command line interface. Old implementations of devices and features that need new implementations were removed from the code. Their replacements will be added later on.

Self-Hosted Distributions

  • Experimentation with Gentoo self-hosted distribution and Alpine Linux were temporarily paused for our team to concentrate all energy on Cartesi Rollups and the microarchitecture work fronts.

New Features’ Documentation

  • The documentation is complete and under team review. We may still add more examples to better illustrate some topics.

Infrastructure for Rollups

Here comes a list of improvements in our Machine emulator and its components to support the Cartesi Rollups progress:

  • Released host-server-manager v0.5.0.
  • Released image-rootfs v0.13.0.
  • Finished the first implementation of the Inspect Server.
  • Finished the echo-js implementation.
  • Started investigating possible improvements to the off-chain microservices architecture.
  • Started investigating support for the RISC-V Hypervisor extension on the emulator.
  • The changes to support running DApps without root privileges are under team review.
  • Started investigating a way to prevent the Linux kernel from reserving memory for DMA transfers when creating Cartesi Machines with more than 128Mi of RAM.
  • Started work on updating the Linux Kernel to the latest LTS version (5.18.14).

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

We launched Cartesi Rollups 0.5.0 and Rollups-Examples 0.8.0 and in doing that we brought the following to our community:

  • Voucher execution (The ERC-20 example was adapted to show how to use the new feature).

This allows full-featured DApps to be developed in which users can deposit and withdraw funds.

  • Notice proof validation — this enables developers to check if a given notice was really emitted by their DApp.
  • A proof of concept for a new endpoint in our HTTP query API allows Inspect State calls that will make it possible for developers to query the state of their DApp’s backend code without sending a conventional input to the blockchain, which costs money.

For end users interacting with Cartesi Rollups DApps, say hello to lower costs!

  • Improved JavaScript Support

JavaScript is already a language supported by the Cartesi Machine but we significantly improved its support by bundling a new JS runtime that includes the fetch API, allowing HTTP requests to be submitted out-of-the-box. We also provided a new reference example for the JS enthusiasts!

DApp Validator Nodes

  • Our Deployment System is almost ready and was used to successfully deploy 7 of our example DApps on Ethereum Goerli Testnet! They are publicly available at our cloud-based Execution Infrastructure and can be accessed by anyone. Click here to check it out!

Rollups Enhancements

  • Taking advantage of feedback collected both internally and externally, we have made significant improvements to our front-end HTTP API implementation using GraphQL, allowing external clients to query epochs, inputs, notices, vouchers, and reports in an easy and flexible way
  • The first implementation of a working front-end HTTP API endpoint for inspecting DApp state.
  • We have successfully exercised layer-2 to layer-1 communication, namely validating notices and executing vouchers in actual DApps

Support for Computational Oracles

  • We temporarily paused the discussions about how to move our Computational Oracle forward to keep our team concentrated on the Cartesi Rollups and Microarchitecture work fronts.

Arbitration for Rollups

  • We discussed and documented the use cases we will support in the form of a machine-state diagram. This will be important in the future to more easily navigate through the code and to create TLA (Temporal Logic of Actions) verification.
  • We will temporarily pause this work front to concentrate our efforts on the work on the Road to Mainet.

Automatic Voucher Execution Incentivized by CTSI

  • ⚠ It is important to mention that this feature depends on the scheduler component.
  • See status update for the Scheduler activity.

Transaction Sequencer Incentivized by CTSI

  • ⚠ It is important to mention that this feature depends on the scheduler component.
  • See 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 started testing our new Noether node (PoS 2.0) on Testnet.
  • We continue working on adapting the backend (subgraph) to the PoS 2.0 changes.

The Scheduler

  • We temporarily paused the development of the Scheduler to concentrate our efforts on the work on PoS.

Explorer

  • We removed the support to the Ropsten network (deprecation scheduled for Q4/2022).
  • We released the new staking page and it is available in production. Check out what’s new:
In the Pool Info tab: Users can see general stats of the pool and a table of activities in a pool (i.e.Deposit / Stake / Unstake / Withdraw )
In the Stake tab, users have more info about the basic requirements to start staking
Also in the Stake tab, users can see their own staking activities
  • We are working out the tickets raised by the design team and will be doing small releases as they get ready.
  • The new node-runners feature is temporarily on hold since we focused on putting the new staking page out.

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

--

--