IOTA Protocol Weekly - May 26, 2026

May 26, 2026: Protocol v27 ships on testnet with new consensus features, GraphQL updates, and CLI changes.

IOTA Staking Team 3 min read
IOTA protocol update
Share:

Protocol v1.24.0-beta is live on testnet, introducing version 27. This is a prerelease, so don’t expect mainnet compatibility yet. Changes span consensus, indexer, GraphQL, CLI, and gRPC components. Here’s what shipped.

Protocol v27 Features

  • Consensus Block Restrictions: Feature flag added via PR #11382. When enabled, block verifiers and proposers enforce caps and constraints on block-header fields. This bounds block-header size relative to committee size.
  • Sponsor-First Authenticator Flow: PR #11508 modifies transaction handling. If a transaction has both MoveAuthenticator for sender and sponsor, only the sponsor’s Authenticator Function runs during pre-consensus. Two new AuthContext fields—sender_auth_digest and sponsor_auth_digest—store digests of signature fields.

Indexer Changes

  • Deprecated CLI Removed: PR #11511 eliminates the old iota-indexer CLI. Worker flags like --fullnode-sync-worker won’t work anymore. Use subcommands (indexer, json-rpc-service, analytical-worker) instead.
  • Checkpointed Objects Table: PR #11105 adds a checkpointed_objects table for consistent views. Migration copies rows from objects, which could take minutes on large databases. Plan downtime.
  • Filtered Checkpoints: PR #11573 updates iota-data-ingestion-core to support filters for fullnode remote sources (RemoteUrl::Fullnode). Filters can be configured via CheckpointReaderConfigExt::with_fullnode_transaction_filter. Check module docs for details.
  • Pruning Support: PR #11563 introduces pruning for objects_backward_history. Retention aligns with epochs_to_keep settings.

GraphQL Updates

  • Consistent Views via Backward History: PR #11563 switches consistent views to objects_backward_history. The lookback window is configurable (--backward-history-max-lookback or BACKWARD_HISTORY_MAX_LOOKBACK). Default is 9000 checkpoints (~30 minutes). Pagination cursors created pre-migration won’t work unless you run an old instance for 30 minutes post-migration.
  • DryRunTransactionBlock Fix: PR #11583 resolves errors when txMeta input exceeds query limits.
  • ObjectKind Deprecation: PR #11620 deprecates WRAPPED_OR_DELETED objects. These now behave as non-existent and will be removed in v1.26. Update logic accordingly.
  • Upcoming Changes: Next release (v1.25) removes TransactionBlockFilter.signAddress and AddressTransactionBlockRelationship.SIGN. Use sentAddress and SENT instead.

CLI Updates

  • Move Authenticator as Gas Sponsor: PR #11306 adds CLI support for Move authenticator sponsorship.
  • Upgrade Control: PR #10714 enables fine-grained upgrade control in iota client ptb.

gRPC Changes

  • Repo Migration: PR #11157 moves iota-grpc-types and iota-grpc-client crates to the IOTA Rust SDK repo.
  • Transaction Execution Timeout Fix: PR #11621 fixes execute_transactions hanging for the full checkpoint_inclusion_timeout_ms after checkpointing.

Who Should Care

  • Node Operators: Plan downtime for indexer migrations and adjust pruning settings. Deprecated CLI removal means script updates.
  • Developers: Refactor GraphQL logic for pagination cursors and upcoming TransactionBlockFilter changes.
  • Stakers: Protocol v27 optimizations impact transaction handling, especially for sponsored transactions.

That’s the rundown. Test thoroughly before deploying on mainnet. Full release notes: v1.24.0-beta.

Sources: v1.24.0-beta, v1.24.0-alpha, v1.23.2

I

Written by IOTA Staking Team

Expert in IOTA staking, blockchain technology, and DeFi strategies. Providing actionable insights to help you maximize your staking rewards.

Share this article:

Related Articles

```