coreum

Prop 39: Increase Signed Blocks Window to 100,000

Summary

This proposal increases the signed_blocks_window from 34,000 to 100,000 blocks. With the current ~0.89s block time, this extends the downtime tolerance from about 4.2 hours to about 12.4 hours before a validator is jailed and slashed. All other slashing parameters remain unchanged.

Motivation

TX transitioned to sub-second block times in January 2025. The signed_blocks_window was not adjusted to match. At ~0.89s per block, the current 34,000 block window gives validators about 4.2 hours of accumulated downtime before they are jailed and slashed 0.01% (reduced from 0.5% via Prop 38).

On-chain data shows 98 downtime slashing events since genesis. Before the block time change: 31 events over ~22 months (~1.4/month). Since the block time change: 67 events over ~15 months (~4.5/month) - a 3.2x increase. In 2026 alone, 13 of 18 events happened during two upgrade windows (9 on March 6, 4 on March 13).

Ecosystem Comparison

All values queried on-chain, downtime-to-jail calculated from each chain's actual block time:

  • TX (current): 34,000 window, 50% min signed, ~4.2h to jail, 0.01% slash
  • TX (proposed): 100,000 window, 50% min signed, ~12.4h to jail, 0.01% slash
  • Cosmos Hub: 10,000 window, 5% min signed, ~17.9h to jail, 0.01% slash
  • Osmosis: 80,000 window, 80% min signed, ~4.4h to jail, 0% slash
  • Injective: 100,000 window, 50% min signed, ~11.1h to jail, 0% slash
  • Fetch.ai: 10,000 window, 5% min signed, ~14.5h to jail, 0.01% slash
  • Dymension: 60,000 window, 80% min signed, ~3.3h to jail, 0% slash

TX is the only chain in this comparison with both a short window and a financial penalty.

Proposed Change

  • signed_blocks_window: 34,000 -> 100,000

All other parameters unchanged:

  • min_signed_per_window: 50%
  • downtime_jail_duration: 1 minute
  • slash_fraction_downtime: 0.01%
  • slash_fraction_double_sign: 5%

What This Changes

Validators get ~12.4 hours of downtime tolerance instead of ~4.2 hours. Jailing and the 0.01% slash still apply. Validators must still manually unjail.

What This Does Not Change

  • Double-sign slashing remains at 5%
  • Downtime slash remains at 0.01%
  • Jailing still applies, validators must manually unjail
  • min_signed_per_window stays at 50%