Before upgrading, read the v0.54 Upgrade Guide for breaking changes and migration instructions.
Proof of Authority Module
The Proof of Authority (PoA) module is now available as part of the Cosmos Enterprise offering. PoA lets chains define and manage their validator set by authority rather than by stake, making it well-suited for private networks, consortium chains, and permissioned deployments that need direct control over who participates in consensus. Unlike traditional proof-of-stake, validator membership is not determined by token staking. Validators are explicitly authorized, updated, and removed through on-chain administrative actions. The module also supports token-free operation, letting chains launch and run without issuing a native token, with a clear path to transition to proof-of-stake if needed. The module ships as a production-ready component under Cosmos Enterprise. See the PoA module documentation in the Cosmos Enterprise documentation to learn how to integrate it into your application.Experimental Performance Optimizations
Block-STM: Parallel Transaction Execution
Block-STM brings deterministic parallel transaction execution to Cosmos SDK via optimistic concurrency control. Rather than processing transactions serially, Block-STM executes them concurrently across multiple workers, detects read/write conflicts, and re-executes only the conflicting transactions. The resultingAppHash is identical to serial execution.
Block-STM is integrated directly into the FinalizeBlock phase of BaseApp. When enabled, it can significantly increase block processing throughput on multi-core hardware. The number of parallel workers is configurable and scales with available CPU cores.
Key properties:
- Produces identical results to serial execution, deterministic and safe
- Uses optimistic concurrency control with read/write set tracking on the IAVL storage layer
- Conflict detection and re-execution are handled automatically
- Requires disabling the block gas meter (safe when
ProcessProposalvalidates total gas)
STMRunner and set the bank module as the first EndBlocker. See the Block-STM documentation for full wiring instructions.
Krakatoa: Application-Side Mempool
The Krakatoa mempool is a new architecture that delegates transaction storage, validation, and rechecking entirely to the application. The core benefit is faster block times: by removing ABCI lock contention between mempool operations and consensus,PrepareProposal and FinalizeBlock no longer stall waiting for CheckTx or recheck passes to complete. It spans all three layers of the stack:
CometBFT introduces a new app mempool type that replaces the traditional flood mempool. Instead of holding the ABCI lock for CheckTx and recheck operations, CometBFT forwards transactions to the application via two new ABCI methods (InsertTx and ReapTxs) and never holds the ABCI lock for mempool work. This means high transaction volume no longer delays block building or finalization. See the CometBFT Krakatoa documentation for details.
Cosmos EVM implements the full Krakatoa specification in ExperimentalEVMMempool. It manages two sub-pools (an EVM LegacyPool and a Cosmos RecheckMempool) with fully async insertion via background queues, application-side rechecking, and a non-blocking HeightSync store that lets proposers collect rechecked transactions without waiting for a full recheck pass to complete. This keeps proposals fast even when recheck is still in progress. See the Cosmos EVM Krakatoa documentation for details.
Benefits:
- Faster block times by removing ABCI lock contention between mempool and consensus
- The application owns full control over transaction prioritization, ordering, and block building
- Application-driven rechecking with cancellation support on new block arrival
- Proposers can build blocks from partial recheck results when block time is tight
libp2p: Next-Generation P2P Networking
CometBFT’s libp2p integration replaces the legacycomet-p2p networking layer with go-libp2p, a production-proven peer-to-peer stack used across the broader blockchain ecosystem.
The existing CometBFT actor model (Switch, Peer, Reactor, envelopes) remains unchanged; libp2p replaces only the transport layer beneath those abstractions. The key improvements are:
- QUIC transport instead of TCP, with native stream-oriented message passing and concurrent receive pipelines
- Autoscaled worker pools per reactor, dynamically adjusting between 4-32 workers (8-512 for the mempool reactor) based on throughput, queue pressure, and latency percentiles
- Combined mode (
blocksync.combined_mode = true) lets slower nodes ingest verified blocks via blocksync while consensus is running simultaneously, improving network liveness - In internal benchmarks, libp2p has been a key enabler of over 2,000 TPS throughput results across the stack
Observability: OpenTelemetry
Telemetry
Thetelemetry package has been fully rearchitected around OpenTelemetry. The legacy github.com/hashicorp/go-metrics integration is deprecated, replaced by a unified initialization path for traces, metrics, and logs via the OpenTelemetry declarative configuration spec.
What’s new:
- Drop an
otel.yamlin your node’s config directory (or setOTEL_EXPERIMENTAL_CONFIG_FILE) to enable full observability with zero code changes - Built-in instrumentation for host metrics (CPU, memory, network), Go runtime (goroutines, GC), and disk I/O
- A bridge sink (
metrics-sink = "otel") allows existinggo-metricscalls to flow into the OpenTelemetry meter provider without code changes BaseAppis now instrumented with OpenTelemetry traces out of the box
Log v2
Thecosmossdk.io/log package is updated to v2, adding context-aware logger methods (InfoContext, WarnContext, ErrorContext, DebugContext). These methods extract the active OpenTelemetry trace context from the sdk.Context, allowing logs to be correlated with distributed traces in tools like Grafana Tempo and Loki.
If your OpenTelemetry configuration includes a logger provider, the SDK automatically provisions a MultiLogger that writes to both stdout and the configured provider via otelslog.
See the Log v2 documentation for setup and usage examples.
Other Highlights
Below are some of the other major highlights of this release. For a full list of changes, see the Release Notes.BLS 12-381 Signature Support
Cosmos SDK v0.54 enables full BLS 12-381 signature support (#25471, #24872). BLS signatures are significantly more compact than ed25519 and support efficient signature aggregation, which is foundational for scaling validator sets and threshold signing schemes. CLI commands (init, gentx, collect-gentx) now support BLS key generation.
Store v2
The store package moves tocosmossdk.io/store/v2, a required upgrade for all v0.54 applications. Store v2 is the foundation for both Block-STM parallel execution and the upcoming IAVLX storage engine.
Module Deprecations and Moves
The following modules are no longer actively maintained by Cosmos Labs and have been moved to./contrib:
x/circuit→contrib/x/circuitx/nft→contrib/x/nftx/crisis→contrib/x/crisis
x/group module moves to the Cosmos Enterprise offering and continues to be maintained there.
Decoupled Governance
x/gov is decoupled from x/staking. The keeper.NewKeeper constructor now requires a CalculateVoteResultsAndVotingPowerFn parameter, enabling governance to work with alternative validator power sources without depending on the staking module directly.