Skip to content Skip to sidebar Skip to footer

12190 | Automatic Failover from Long-Term Inactive Validators — Delegator Choice (Testnet Development)

3 min read 508 words 223 views

Source from:

Develop/test (testnet) auto-failover for LUNC: per-delegation jail threshold (7–90d) + required action—Redelegate to lowest-power actives or Unstake (21d). Tombstone triggers immediately; long jail triggers next block.

Per-Delegator Choice: Redelegate or Unstake (Testnet Development Approval)

TL;DR
Too much stake sits on inactive (jailed/tombstoned) validators earning 0% and weakening decentralization.
I’m proposing we develop and test on testnet an automatic failover system where every delegation must choose:

  • Auto-Redelegate (spread to low-power active validators; smallest get most), or
  • Auto-Unstake (start the normal 21-day unbond).
    Each delegator also sets a Jail Threshold (e.g., 7–90 days) for when the action triggers.

Why now?

  • Idle stake = 0% rewards and lower real security.
  • Abandoned wallets can trap stake for months/years.
  • This makes the set self-healing and nudges stake toward smaller, reliable validators.

What’s being proposed (for TESTNET first)

  1. Per-delegator settings (stored on-chain):
  • Failover Action (required): Redelegate or Unstake
  • Jail Threshold (required): N consecutive jailed days (between min/max set by governance)
  1. Trigger:
  • Tombstone: immediate failover
  • Jailed ≥ threshold: failover at next block
  1. Redelegate rule: pick K lowest-voting-power active validators that meet filters (uptime ≥ 99% over last 10k blocks; commission ≤ 10%; not recently slashed), allocate by inverse voting power (smallest receive proportionally more).
  2. Scope: This proposal authorizes design + testnet rollout only. Mainnet would require a separate upgrade vote after results.

Initial testnet parameters (tunable):

  • min_threshold_days = 7max_threshold_days = 90
  • auto_failover_k = 4
  • auto_failover_min_uptime = 99%
  • auto_failover_max_commission = 10%

Benefits

  • No idle stake: every delegation either redelegates or unstakes after the chosen threshold.
  • Decentralization: flow toward smaller active validators.
  • User control: delegators choose both how and when.
  • Security: higher effective active stake.

Safeguards & anti-churn

  • Threshold floor/ceiling (e.g., 7–90 days) to avoid hyper-reactive churn.
  • K kept small (e.g., 4) to limit state bloat.
  • Per-block processing caps to handle very large validators safely.
  • Event logs so explorers/wallets show exactly what happened and why.

What this is not

  • Not an immediate mainnet change.
  • Not custody of user funds by a contract.
  • Not forcing everyone to redelegate—Unstake is equally available.

Open questions for feedback

  1. Preferred min/max for jail threshold? (e.g., 7–90 vs. 14–60)
  2. K destinations = 3, 4, or 5?
  3. Filters: uptime window (10k blocks OK?) and commission cap (10% OK?)
  4. Weighting: inverse voting power vs. simple cap-fill to median?
  5. Any exclusions (e.g., recent governance abuse) validators want considered?

Proposed timeline

  • Week 0–2: Community feedback on parameters & design
  • Week 3–6: Implement staking module changes, wallet/CLI hooks
  • Week 7–10: Public testnet: run scenarios (tombstone, long jail, mass failover)
  • Week 11–12: Publish report + recommended parameters
  • After: Separate mainnet software upgrade proposal if community is satisfied

Ask

Please share:

  • Whether you support testnet development of mandatory failover (choose Redelegate or Unstake)
  • Your preferred parameters (threshold range, K, filters, weighting)
  • Any red flags we should address before coding

If there’s broad support, I’ll open a PR draft and coordinate with wallet devs for a basic UI (dropdown for action + numeric threshold when staking).

Thanks for reading—looking forward to your feedback!

Was this article helpful?
YesNo
E-mail
Password
Confirm Password
QuoraTelegram