Skip to content

bump emulator to 0.20#241

Open
mpolitzer wants to merge 1 commit intonext/3.0from
feature/bump-emulator-3
Open

bump emulator to 0.20#241
mpolitzer wants to merge 1 commit intonext/3.0from
feature/bump-emulator-3

Conversation

@mpolitzer
Copy link
Copy Markdown

@mpolitzer mpolitzer commented Feb 12, 2026

chore: update emulator submodule, link omp
chore: update step submodule
chore: update bindings, fix tests
chore: update CHECKPOINT_ADDRESS

  • requires emulator 0.20 release

some functions renamed on solidity step: https://github.com/cartesi/machine-solidity-step/pull/85/changes

Comment thread cartesi-rollups/contracts/test/DaveConsensus.t.sol Outdated
@guidanoli guidanoli moved this to 🏗 In progress in Rollups SDK Feb 24, 2026
@guidanoli guidanoli linked an issue Feb 24, 2026 that may be closed by this pull request
@guidanoli guidanoli added this to the 3.0.0 milestone Feb 24, 2026
@mpolitzer mpolitzer force-pushed the feature/bump-emulator-3 branch from b0d7b16 to b81452f Compare March 4, 2026 13:33
@mpolitzer mpolitzer force-pushed the feature/bump-emulator-3 branch from b81452f to 3bc39aa Compare March 17, 2026 20:43
@edubart
Copy link
Copy Markdown

edubart commented Apr 13, 2026

Emulator 0.20.0 and was released, so I think this can be resumed.

@mpolitzer mpolitzer self-assigned this Apr 13, 2026
@mpolitzer mpolitzer force-pushed the feature/bump-emulator-3 branch from 3bc39aa to 3973462 Compare April 13, 2026 22:39
@mpolitzer mpolitzer marked this pull request as ready for review April 13, 2026 22:40
@mpolitzer mpolitzer force-pushed the feature/bump-emulator-3 branch 2 times, most recently from 7669905 to 9fd1ef5 Compare April 13, 2026 22:42
@mpolitzer mpolitzer requested review from Copilot and guidanoli April 13, 2026 22:48
@mpolitzer mpolitzer requested a review from GCdePaula April 13, 2026 22:50
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR upgrades the Cartesi machine emulator stack to 0.20.0 and updates associated bindings, scripts, and tests to match renamed APIs / changed artifacts (e.g., hash tree root extraction and backing store config changes).

Changes:

  • Bump emulator/tooling versions to 0.20.0 across Docker, CI workflows, workspace metadata, and setup scripts.
  • Update Rust/Lua/Solidity integrations for updated emulator APIs (proof API, address range constants, backing store config, checkpoint/revert naming).
  • Adjust test/program build scripts to new CLI flags and new root-hash artifact (hash_tree.sht).

Reviewed changes

Copilot reviewed 28 out of 30 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
test/programs/justfile Updates downloaded deps and cartesi-machine CLI args; patches honeypot Makefile to new data_filename format.
prt/tests/rollups/test_env.lua Formatting change for long constructor calls.
prt/tests/rollups/test_cases/simple.lua Minor formatting change to input list.
prt/tests/rollups/justfile Switches template machine hash extraction to hash_tree.sht offset-based method.
prt/tests/rollups/dave/node.lua Adds more logging and retry diagnostics around commitment extraction.
prt/tests/common/runners/helpers/patched_commitment.lua Minor whitespace/comment alignment.
prt/measure_constants/Dockerfile Bumps emulator image to 0.20.0.
prt/contracts/src/tournament/libs/Match.sol Formatting-only change to function signature layout.
prt/contracts/src/state-transition/CmioStateTransition.sol Renames checkpoint hash calls to revert root hash calls.
prt/contracts/src/state-transition/CartesiStateTransition.sol Updates comment to reflect renamed revert-root API.
prt/client-rs/core/src/machine/instance.rs Updates proof() calls to new signature including root size constant.
prt/client-lua/cryptography/hash.lua Switches Lua keccak binding to cartesi.keccak256.
prt/client-lua/computation/machine.lua Switches keccak binding to cartesi.keccak256.
machine/rust-bindings/cartesi-machine/src/machine.rs Updates Rust bindings to new C API (create/load/store/proof/address ranges/replace memory range).
machine/rust-bindings/cartesi-machine/src/constants.rs Updates constants to new naming/casts consistent with updated sys bindings.
machine/rust-bindings/cartesi-machine/src/config/machine.rs Introduces BackingStoreConfig and updates config schema fields/defaulting.
machine/rust-bindings/cartesi-machine-sys/build.rs Bumps embedded emulator version and adds OpenMP linker configuration.
machine/rust-bindings/Cargo.toml Bumps workspace version to 0.20.0.
justfile Updates generated-files diff version/hash and parallelizes emulator build.
cartesi-rollups/node/state-manager/src/sql/test_helper.rs Updates machine RAM config to new backing_store schema.
cartesi-rollups/node/state-manager/src/rollups_machine.rs Updates proof call to new signature and imports root size constant.
cartesi-rollups/node/state-manager/src/persistent_state_access.rs Updates machine RAM config to new backing_store schema in tests.
cartesi-rollups/node/blockchain-reader/src/test_utils.rs Reads initial root hash from hash_tree.sht at fixed offset.
cartesi-rollups/node/blockchain-reader/src/lib.rs Updates machine RAM config to new backing_store schema in tests.
cartesi-rollups/contracts/test/DaveConsensus.t.sol Updates constants to new address-range / hash-tree word-size names.
cartesi-rollups/contracts/src/DaveConsensus.sol Updates constants to new address-range / hash-tree word-size names.
.github/workflows/build.yml Bumps installed Cartesi Machine version and generated-files diff URL/hash.
.github/actions/cartesi-machine/action.yml Updates default Cartesi Machine version to 0.20.0.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread machine/rust-bindings/cartesi-machine-sys/build.rs
Comment thread prt/tests/rollups/justfile
Comment thread test/programs/justfile
Comment thread machine/rust-bindings/cartesi-machine-sys/build.rs
@mpolitzer
Copy link
Copy Markdown
Author

mpolitzer commented Apr 14, 2026

Improvements planned for a separate PR: #262

@guidanoli
Copy link
Copy Markdown
Collaborator

@mpolitzer Please make this PR point to next/3.0.

@mpolitzer
Copy link
Copy Markdown
Author

mpolitzer commented Apr 16, 2026

rebase on top of next/3.0 is WIP here: https://github.com/cartesi/dave/tree/feature/bump-emulator-3r (done, removed)
thanks for the help with the rebase! @guidanoli

chore: update emulator submodule, link omp
chore: update step submodule and rename fields
chore: update bindings, fix tests
chore: update CHECKPOINT_ADDRESS
@mpolitzer mpolitzer force-pushed the feature/bump-emulator-3 branch from b74f54b to 19fe91e Compare April 16, 2026 12:51
@mpolitzer mpolitzer marked this pull request as draft April 16, 2026 12:53
@mpolitzer mpolitzer changed the base branch from main to next/3.0 April 16, 2026 12:55
@mpolitzer mpolitzer marked this pull request as ready for review April 16, 2026 12:55
@github-project-automation github-project-automation Bot moved this from In progress to Waiting Merge in Rollups SDK Apr 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Waiting Merge

Development

Successfully merging this pull request may close these issues.

Bump machine emulator SDK from 0.19.0 to 0.20.0

5 participants