Documentation
Technical documentation for the MAVS reward system, validator onboarding, and the Minotaur partner chain protocol.
Reward distribution
How rewards are calculated
Each produced block generates a fixed reward (configurable via the chain's RewardPerBlock constant). The reward flow is:
- Margin fee — The validator's configured margin (0–100%, stored in basis points) is deducted first and paid to the block author.
- Pool distribution — The remaining reward is split proportionally among all delegators based on their stake share in the pool, as reported by the Cardano SPDD.
- Rounding remainder — Any integer rounding remainder is added to the validator's payout.
Pending rewards
If a delegator has not yet associated their Cardano staking key with a partner chain address, rewards are held in a PendingRewards storage map. Once the delegator calls the associate_address extrinsic, all accumulated pending rewards are paid out automatically.
Margin fee configuration
Validators set their margin fee via the set_fee extrinsic on the block-producer-fees pallet. The fee is stored as a value between 0 and 10000 (representing 0.00% to 100.00%) and takes effect immediately for subsequent block rewards.
Validator registration
Validators register on the Minotaur partner chain by submitting a registration transaction to the CommitteeCandidateValidator smart contract on the Cardano mainchain. The registration includes the validator's pool public key, sidechain public key, and Aura/Grandpa keys.
Address association
Delegators link their Cardano staking key to a partner chain address via the associate_address extrinsic. This creates an immutable mapping that enables automatic reward distribution. A burn fee is charged as spam protection.
API reference
/validatorsList all registered validators with stake, addresses, margin fees, and ROI
/rewards/list/pendingList all pending reward distributions awaiting address association
/rewards/breakdownAggregated reward statistics: total paid, validator margin, delegation, failed
/rewards/breakdown/validatorsPer-validator breakdown: margin earned, delegation distributed, blocks produced
/rewards/breakdown/delegatorsPer-delegator breakdown: total received, pending, payout count, timestamps
/rewards/history?limit=50&offset=0Paginated payout history with event type, recipient, amount, and timestamp
/rewards/expectedExpected reward projections per delegator based on current stake distribution
Architecture overview
Data flow:
- Block Production Log tracks which validator authored each block
- Block Participation aggregates production data with Cardano stake delegation distribution
- MAVS Rewards Pallet consumes participation data as inherent extrinsics and distributes rewards on-chain
- Event Indexer (API) subscribes to finalized blocks, classifies events, stores in PostgreSQL
- REST API exposes reward data and analytics for the frontend dashboard