Repository navigation
3.3.0
MPC 3.3.0
This is our first release for 2026!
The main feature of this release is the ability to use the launcher for non-TEE setups. This enables better local experimentation of TEE-like setups and troubleshooting.
Beyond that, this release features mainly bug fixes, network resiliency improvement and paves the way for more significant non-breaking upgrades of the network layer by allowing MPC nodes to connect to other nodes with higher protocol version numbers.
What's Changed
🚀 Features
-
#1723(@DSharifi): (node) Add web endpoint to collect CPU profiles with
pprof-rs(#1723) -
#1735(@barakeinav1): (launcher) Add ability to use the launcher also for non tee setups. (#1735)
🐛 Bug Fixes
-
#1729(@gilcu3): Ruint unsoundness issue RUSTSEC-2025-0137 (#1729)
-
#1752(@gilcu3): Enable TCP_KEEPALIVE for network connections (#1752)
-
#1764(@kevindeforth): (network) Do not accept incoming connection if previous one is still active (#1764)
-
#1772(@DSharifi): Don't crash MPC node on startup for failed attestation submission (#1772)
💼 Other
-
#1738(@DSharifi): (rust) Add support for Nix build environment (#1738)
-
#1767(@DSharifi): (nix) Add instructions to enable direnv with Nix flake (#1767)
-
#1771(@DSharifi): (nix) Resolve openssl-sys compilation errors in devShell (#1771)
🚜 Refactor
📚 Documentation
-
#1733(@kevindeforth): Update readme to reflect correct test terminology (#1733)
-
#1661(@barakeinav1): Support running two MPC CVMs (Frodo + Sam) on the same physical machine (#1661)
⚡ Performance
-
#1713(@DSharifi): Enable
TCP_NODELAYfor nodes' P2P TCP connections (#1713) -
#1663(@DSharifi): (contract) Contract should not store full attestation submission (#1663)
🧪 Testing
-
#1708(@gilcu3): Improve pytest handling of crate builds (#1708)
-
#1709(@gilcu3): Refactor wait_for_state to avoid self.contract_state() in tight loop (#1709)
⚙️ Miscellaneous Tasks
-
#1715(@DSharifi): Ignore
RUSTSEC-2025-0137in cargo-deny check (#1715) -
#1717(@DSharifi): Use
SocketAddrinstead of custom struct for addresses in configs (#1717) -
#1718(@barakeinav1): Update tee testnet guide (#1718)
-
#1722(@DSharifi): Update rkyv version to fix
RUSTSEC-2026-0001(#1722) -
#1726(@DSharifi): Ignore
RUSTSEC-2026-0002in cargo-deny check (#1726) -
#1739(@kevindeforth): Unify ckd and sign sandbox tests (#1739)
-
#1742(@pbeza): CI check to enforce TODO comment format (#1742)
-
#1756(@gilcu3): Improve log messages for tokio tasks (#1756)
-
#1774(@gilcu3): Update mainnet history contract to 3.2.0 (#1774)
-
#1778(@kevindeforth): Nodes accept peer with same or higher protocol version (#1778)
-
#1780(@gilcu3): Refactor CI tests to group fast tests in a single run (#1780)
-
#1790(@pbeza): Skip
TODOformat checks forCHANGELOG.md(#1790)
Docker images
- nearone/mpc-node:3.3.0
- Manifest digest:
sha256:794e9699657d1e0ca287d2c015caa9041d314e0abb218f7d73facb5f2c4d1f05 - Image ID:
sha256:6e5b08f91752fd7cb10349de45f74272f340fe42a172d2cbc237f3f1d5527a45
- Manifest digest:
- nearone/mpc-node-gcp:3.3.0
- Manifest digest:
sha256:cbded928069c716e96aa3f82fabd4ba934325f36146cf70ac33f48ecb9d7c39b - Image ID:
sha256:0153c197a686541e5a95efa987379f24ffffa3b1bad50fad9df050c363f50715
- Manifest digest:
- nearone/mpc-launcher:3.3.0
- Manifest digest:
sha256:17243e65f47c69a4735c507ea91aefa0bdd761d9a267e28221232d748518bad3 - Image ID:
sha256:0aa010444e4e54f8f2f430f0cb9d784db937f8179cb129c952cae2052792122c
- Manifest digest:
MPC contract
mpc-contract-v3.3.0.wasm: now with embedded ABI (file included in the release attachments)- digest:
sha256:fde328d56a5afa73e8cf56db1e3fed260eca287d784fc1022fbffe9ba3570e76
- digest: