IOTA Protocol Weekly - Feb 3, 2026

Feb 3, 2026: Protocol v19 (testnet), ChangeEpochV4, Starfish consensus, and IOTA Names on mainnet. Key updates for stakers and builders.

IOTA Staking Team 3 min read
IOTA protocol update
Share:

Protocol v19 is live on testnet with v1.16.1-beta. This release introduces the ChangeEpochV4 transaction type, Starfish consensus, and updates across nodes, indexers, JSON-RPC, CLI, and the Rust SDK. Meanwhile, IOTA Names has been deployed on mainnet, so start exploring that if you're building name-based features.

Protocol v19 Changes (Testnet)

  • ChangeEpochV4 transaction: This new transaction type can appear in checkpoints as soon as protocol v19 activates. If you're running indexers, upgrade to v1.16.x and bump iota-data-ingestion-core to 1.16.x to avoid disruptions.
  • Starfish consensus: Switched testnet consensus protocol to Starfish. Expect improved scalability and fault tolerance.
  • Gas price feedback: Updated for congestion limit overshoot and enabled on testnet. A separate feedback mechanism for randomness-based transactions is also live.
  • Abstract Accounts: Added move_auth flag and max_auth_gas parameter to enable Abstract Account authentication with configurable gas limits.
  • Misbehavior reporting: New consensus transaction variant supports misbehavior report propagation. Includes validation, scoring metrics, and score-based rewards.
  • Advance epoch rewards: Added score-based reward adjustments tied to validator performance metrics. Enabled on testnet with protocol v18.

IOTA Names (Mainnet)

IOTA Names is now live on mainnet. This enables human-readable names for addresses and other identifiers. If you're building apps that rely on name resolution, start integrating this feature.

Node Updates

  • Scorer component: Introduced to track metrics, reports, and scores for validators. Supports misbehavior detection and scoring.
  • Indexes pruner: Added to the authority store for better storage management.
  • Abstract Account support: Authentication of Abstract Accounts enabled on testnet.

Indexer Updates

  • ChangeEpochV4 support: Indexers must handle this new transaction type. Custom indexers need to update iota-data-ingestion-core to 1.16.x to avoid outages.
  • HistoricalFallbackReader: Experimental client to fetch structured historical data. Useful for queries involving pruned data.

JSON-RPC Updates

  • Error source in dry runs: Dry run transactions now return error source details.
  • Cursor handling: Fixed next_cursor behavior when no next page exists.

CLI Updates

  • New commands:
    • iota keytool tx-digest: Compute digest for base64-encoded transaction bytes.
    • iota keytool sign-raw: Sign raw transaction bytes.
    • iota keytool decode-sig: Decode base64-encoded signatures.
  • Abstract Account support: Commands for adding accounts, signing, and handling account addresses.

Rust SDK Updates

  • MoveAuthenticator: New GenericSignature variant for Abstract Account authentication.
  • Efficient gas selection: Optimized get_owned_objects() for better gas selection without fetching unnecessary data.

Key Takeaways

If you're on testnet, upgrade your nodes, indexers, and dependencies to handle protocol v19 and ChangeEpochV4. Mainnet users should start leveraging IOTA Names for human-readable identifiers. Builders working with Abstract Accounts or misbehavior reporting should review the new flags and APIs. Full details in the release notes.

Sources: v1.16.1-beta, v1.16.0-alpha, v1.15.0

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

```