Protocol
Sui Protocol Version in this release: 136
#27791: Adds protocol versions 135 and 136. defer_unpaid_amplification is disabled on mainnet at v134 and on all networks from v135; v135 also applies v134's original_package_id costs and consensus block limits on mainnet. v136 carries the previously pending v135 features.
#27454: Adds TransactionExpiration::Validity, which restricts the transaction to a named set of consensus proposers. Behind the allowed_proposers feature flag, enabled on devnet only; no change on mainnet or testnet.
#27451: New feature flag ptb_tx_context_restrictions (protocol version 135). TxContext in a PTB Move call signature may appear at most once as &mut TxContext or any number of times as &TxContext, never by value, and never in return position. Transactions calling functions that violate these rules now fail up front with the new InvalidTxContext command argument error (previously they failed with borrow-checking, arity, or serialization errors, or in dev-inspect could partially succeed).
#27832: Add additional invariant checks around packages.
#27826: Adds package_arena_size_in_bytes (10MB, matching prior hardcoded behavior) to protocol version 136, bounding the arena a package is loaded into by the Move VM.
Nodes (Validators and Full nodes)
#27599: Full nodes now submit a proposer-restricted transaction only to the validators it names, instead of to any validator. No configuration change is needed; transactions without a proposer set are unaffected.
gRPC
#27598: SimulateTransaction now returns a VALIDITY expiration carrying the validators allowed to propose the transaction, where it previously returned VALID_DURING. Clients that sign and submit the returned transaction unchanged need no action; clients that reconstruct the expiration themselves should carry the new allowed_proposers field through, or the transaction digest will not match.
JSON-RPC
#27557: sui-indexer-alt-jsonrpc no longer accepts --bigtable-instance, --bigtable-project, --bigtable-app-profile-id, or --bigtable-watermark-pipeline. Operators must use --ledger-grpc-url instead.
#27653: --ledger-grpc-url is now required to run sui-indexer-alt-jsonrpc — it no longer falls back to Postgres for key-value lookups (objects, checkpoints, transactions) when unset.
GraphQL
#27557: sui-indexer-alt-graphql no longer accepts --bigtable-instance, --bigtable-project, --bigtable-app-profile-id, or --bigtable-watermark-pipeline. Operators must use --ledger-grpc-url instead.
#27653: --ledger-grpc-url is now required to run sui-indexer-alt-graphql, for the same reason.
#27685: Adds Query.multiGetBalances for fetching balances across multiple addresses in one query.
CLI
#27828: Impacts the dev experience for users clicking on the move coding conventions link. No extra actions.
#27826: sui move test now accepts --package-size <MB> to bound the maximum size of a loaded package during unit tests.