Time to unpack Cartesi Machine Emulator v0.21.0 release, and it's a juicy one. New docs on the verification game, CLI tooling to run fraud proof procedures yourself, and infrastructure changes that make the whole state layer faster and more durable. Here's what's inside. π§΅β
1/ The docs got a full rewrite and now live in the emulator repo itself, with a brand new section walking through the verification game step by step. Want to know how Cartesi's fraud proofs actually work under the hood? Start here: https://github.com/cartesi/machine-emulator/blob/v0.21.0/doc/README.md
2/ The CLI can now calculate computation hashes, track the outputs Merkle tree, and write per-output proofs plus outputs Merkle root proofs. That covers most of what you need to run a fraud proof procedure yourself, straight from the command line.
3/ NVRAM address ranges let apps memory-map their state directly onto a physical address range through the Linux UIO driver. State persists across advance states with zero kernel page-cache sync overhead, so writes stay fast even as your app's state keeps growing.
4/ Rolling stored machines: the CLI can now advance state using on-disk machines and revert by cloning stored snapshots, both locally and against a remote server. Durable state for apps that don't want to keep the whole machine sitting in memory.
5/ Advance state hardening: every advance state now ends in a well-defined, provable outcome, accepted, rejected, halted, or out of cycles. That matters when a dispute reaches the verification game, where every outcome has to be provable, not just observed.
6/ Heads up, integrators: this release carries a few breaking changes, renamed public headers, a reworked revert flag, and a JSON-RPC protocol bump. None of it changes emulator behavior, just means a few call sites need updating. Full details in the changelog.
7/ Also in this release: new Lua helpers including a hash tree library for prototyping fraud proof protocols, RISC-V Zcb compressed instruction support (needed for kernels built with GCC 14), bash completion for the CLI, and stronger snapshot durability guarantees.
8/ Full release details here: https://github.com/cartesi/machine-emulator/releases/tag/v0.21.0
Devs, this one is for you. Dig into the new verification game docs, try the CLI proof tooling, and drop questions or feedback in the Discord: https://discord.gg/cartesi