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.
✅ 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 | 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.
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:
(24,000 − 10,000) / 10 = 1,400 bips(46,700 − 10,000) / 10 = 3,670 bipsWhen a tier is under-filled, unused reward allocation is not minted, reducing effective inflation. This replaces the previous empty-slots redistribution model.
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.
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.
This is a runtime-only upgrade (client not impacted). Beyond the dApp Staking revamp, runtime 2101 (which includes runtime 2100) also contains:
📡 This runtime upgrade targets implementation during the week of March 16, 2026, following the yearly inflation recalculation.