#71·Astar Runtime 2101 Upgrade: dApp Staking Revamp for Tokenomics 3.0

Democracy
11d ago
0 Comments
Executed

This referendum proposes a runtime upgrade to implement the dApp Staking model revision as part of Tokenomics 3.0. It concentrates rewards on 16 governance-selected projects, replaces the price-dependent slot formula with a fixed structure, introduces rank-based reward distribution, and extends the staking period to one year.

🔧 Core Changes

✅ Reduce active reward-eligible dApps from ~ 72 to a fixed cap of 16 per era
✅ Disable Tier 1 and Tier 4 (0 slots, 0% reward share), leaving Tier 2 and Tier 3 as the only active tiers
✅ Replace the price-based slot formula floor(1000 * ASTR_USD + 50) with a fixed 16 slots
✅ Switch all tier thresholds from Dynamic (price-adjusted with min/max bounds) to Fixed (constant % of total issuance)
✅ Introduce deterministic rank-based reward multipliers per tier via tier_rank_multipliers
✅ Extend staking period from ~ 122 days (~3 periods/year) to ~365 days (1 period/year)
✅ Remove user-facing bonus reward mechanics (legacy storage retained for backward compatibility)
✅ When a tier is under-filled, unused reward allocation is not minted, reducing effective inflation

📊 Parameter Changes

Parameter Current New
Slot formula (slotNumberArgs) [1000, 50] (price-dependent) [0, 16] (fixed 16 slots)
Active reward-eligible dApps per era ~72 16
Legacy registration bound 500 500 (unchanged, backward compat)
Slot portions per tier [T1–T4] [5%, 20%, 30%, 45%] [0%, 37.5%, 62.5%, 0%]
Reward distribution per tier [T1–T4] [25%, 47%, 25%, 3%] [0%, 70%, 30%, 0%]
Tier threshold types Dynamic (price-adjusted) Fixed (constant % of total issuance)
Tier 1 threshold ~307M ASTR (3.57%) ~200M ASTR (2.32%) — Fixed
Tier 2 threshold ~76M ASTR (0.89%) ~80M ASTR (0.93%) — Fixed
Tier 3 threshold ~20M ASTR (0.23%) ~30M ASTR (0.35%) — Fixed
Tier 4 threshold ~1.7M ASTR (0.02%) 0 ASTR (0%) — Fixed
tier_rank_multipliers (bips) N/A [0, 24_000, 46_700, 0]
Eras per period 122 (~122 days) ~ 365 (~1 year)
Restaking frequency 3x per year 1x per year

Tier 1 and Tier 4 retain their indices in storage but are effectively disabled (0 slots, 0% reward share). Only Tier 2 and Tier 3 are active.

Bips: 10,000 = 100%. Values represent how much rank-10 earns relative to rank-0 within each tier.

🧮 How Rank Multipliers Work

Each dApp receives a rank (0–10) within its tier based on how close its stake is to the next tier threshold. The tier_rank_multipliers value creates a deterministic reward slope:

  • Tier 2 (24,000 bips): rank-10 earns 2.4x rank-0. Step per rank: (24,000 − 10,000) / 10 = 1,400 bips
  • Tier 3 (46,700 bips): rank-10 earns 4.67x rank-0. Step per rank: (46,700 − 10,000) / 10 = 3,670 bips

When a tier is under-filled, unused reward allocation is not minted, reducing effective inflation. This replaces the previous empty-slots redistribution model.

🆕 What Changes for Participants

For stakers: Stake once per year instead of three times. No bonus tracking (bonus mechanics removed). Staker reward formula is unchanged: staker_reward_pool * your_staked / total_staked. Rewards earned for any Build&Earn era where your stake was active the entire era. With yearly periods, unclaimed rewards now expire after ~4 years (previously ~16 months).

For dApps: Qualifying projects receive significantly larger per-dApp allocations based on tier + rank. Minimum thresholds: 80M ASTR for Tier 2, 30M ASTR for Tier 3. Projects below thresholds receive no dApp rewards, though their stakers still earn staking rewards.

🔒 What Does Not Change

Lock/unlock/claim mechanics, staker reward formula, historical rewards and claim logic, minimum locked/stake amounts (500 ASTR), and unlocking period (9 eras) are all preserved. No migration required.

➕ Other Changes Included in This Runtime

This is a runtime-only upgrade (client not impacted). Beyond the dApp Staking revamp, runtime 2101 (which includes runtime 2100) also contains:

  • Fix for automatic XCM version negotiation handshake when establishing new channels (#1578)
  • Migration to new runtime macro (#1584)
  • Updated polkadot-sdk stable2506 dependencies (#1592)

📡 This runtime upgrade targets implementation during the week of March 16, 2026, following the yearly inflation recalculation.

🔗 References

Edited
Reply
Up
Share
This vote has been closed.
Business
Call
Metadata
Timeline4
Comments