I. The Seal Ritual
When a block interval ends, the producer claims pending transactions, then — as the last act before the Merkle root — reads this Scroll from l2_config.fee_distribution, sums protocol fees already in the Treasury, and emits SYSTEM reward leaves. Then Merkle · sign · seal. No human chooses winners at seal time.
II. Division of the Fee Pool
| Share | Bucket | Law |
|---|---|---|
| 25% | Treasury | Retain · Phase B reserve |
| 25% | 26 Guardians | Equal 1/26 per RuneSpace NFT · 3 NFTs = 3 shares |
| 15% | Social assets | Inscription / NFT reputation · √score split |
| 15% | Utility wallets | L2 work reputation · consistency over wealth |
| 10% | Inscription raffle | Block RNG · shown on the block card |
| 10% | Constitution Lottery | Accumulate each seal · draw every 100 L2 blocks · tickets 4 KRAY |
All floors are integer. Remainders and unresolved guardian slots stay in Treasury. AMM LP 0.3% never enters this pool.
III. Reputation — Work over Wealth
Gas is the same for every action forever (1 KRAY). Therefore burning KRAY is not reputation. Social scores favor movement (likes, posts, boosts) and √-dampen KRAY received. Utility scores favor consistency (active days), diversity of actions, diminishing returns on spam, and a daily point cap — so a daily worker outranks a binge whale.
Code: src/l2/core/rankingTheory.js · Seal: feeDistribution.js
IV. How it runs without a king
Automatic: every sealed block re-reads the active policy JSON and pays by formula. No dashboard “approve payout” step.
Deterministic: same block id + same fee pool + same rankings → same leaves. Validators can recompute the Merkle root.
Vote locks: choose how much of your KRAY to stake (≤ balance). Pay 1 KRAY gas → stake moves to KIP_VOTE_ESCROW (tag proposal_lock). Cannot transfer that stake. Unlock costs 1 KRAY more. One wallet · one active lock per KIP. Supply = 7,000,000,000.
Scheduled change: approved KIP + activate_at_block — every honest node switches at that height.