mainnet-v1.63.3

MystenLabs/suimainnet-v1.63.3Jan 14, 2026by ebmifa

AI Summary

Focuses on consensus improvements and deprecates legacy transaction submission methods by disabling Quorum Driver support in favor of the Transaction Driver.

Key Highlights

  • Improved consensus direct finalization
  • Disabled legacy validator RPC handlers (Quorum Driver)
  • GraphQL partial error support and JSON blob support added
  • CLI compatibility verification flags updated

Breaking Changes

  • Transaction submission using Quorum Driver is no longer supported

New Features

  • Consensus fixes for validator agreement
  • CLI `--skip-verify-compatibility` flag
  • CLI `test-upgrade` and `test-publish --publish-unpublished-deps` commands
  • Indexing Framework `Service` return type changes for graceful shutdown

Full Release Notes

## Protocol
#### Sui Protocol Version in this release: `107`

https://github.com/MystenLabs/sui/pull/24856: [consensus] improve direct finalization
https://github.com/MystenLabs/sui/pull/24943: Fix a consensus issue where validators do not agree on transactions that need to be rejected.

## Nodes (Validators and Full nodes)

https://github.com/MystenLabs/sui/pull/24742: Disable validator RPC handlers for signing transactions and submitting transactions with aggregated validator signatures. Transaction submission using Quorum Driver or similar logic will no longer work. Transaction Driver and its related validator RPC handlers are the only way to submit transaction to Sui
now.

## gRPC

https://github.com/MystenLabs/sui/pull/24820: Return an error when `balance_changes` is requested but the transactions have not been indexed yet.

## GraphQL

https://github.com/MystenLabs/sui/pull/24595: Partial error will be properly supported in GraphQL. Invalid fields will have error messages and valid fields will still be displayed normally

https://github.com/MystenLabs/sui/pull/24679: Add support for `checks_enabled` and `do_gas_selection` argument for `query.simulateTransaction`

https://github.com/MystenLabs/sui/pull/24681: Partial error will be properly supported in GraphQL. Invalid fields will have error messages and valid fields will still be displayed normally

https://github.com/MystenLabs/sui/pull/24911: Add `effectsJson`, `balanceChangesJson` on TransactionEffects and `transactionJson` on Transaction, that supports returning effects and transactions as JSON blob

## CLI

https://github.com/MystenLabs/sui/pull/24508: Removes `--verify-compatibility` and adds `--skip-verify-compatibility` defaulting to checking locally for upgrade compatibility errors.

https://github.com/MystenLabs/sui/pull/24896: Several changes to the new package management system:
  - New `--no-tree-shaking` flag allows offline dump-bytecode-as-base64
  - Bug fixes for `move-analyzer`
- Improvements to the `test-publish` command: the `Pub.localnet.toml`
files can now be shared between dependencies more easily.
  - Added `test-upgrade` command
- Added `test-publish --publish-unpublished-deps` command for
push-button local deployment of a package and its dependencies
  - Error message fixes

## Indexing Framework

https://github.com/MystenLabs/sui/pull/24503: The indexer, ingestion service, and metrics service all now return a `Service` instead of a `JoinHandle<()>` when run. Use `Service::main` to wait for the service to exit cleanly or with an error, or respond to a termination signal with a graceful shutdown. `Service` also exposes `wait_for_shutdown`, `join`, and `shutdown` functions to customise various aspects of the shutdown process.

https://github.com/MystenLabs/sui/pull/24523: Fix pruning for concurrent pipelines when indexer is initialized with `--first-checkpoint`.

---

---
#### Full Log: https://github.com/MystenLabs/sui/commits/mainnet-v1.63.3