How rewards are scored
Rewards follow useful work, not raw CPU time. Here is the formula and how it settles on-chain.
The reward formula
Reward rises with new coverage, rare execution paths, independently verified crashes, hardware diversity, and reliable uptime. It falls with duplicated work and unverifiable output. New coverage pays. A rare path pays. A verified crash pays well. Ten thousand machines repeating the same test pay nothing, which is the whole point.
Weekly Merkle epochs
Writing millions of test results to a chain would be absurd. Instead the coordinator scores contributions off-chain and commits one Merkle root per weekly epoch to the reward contract. Each operator claims their share against that root with a proof. One root stands in for the entire week of work.
Claiming
The reward contract only accepts an epoch it can already fully cover, so a posted root is always claimable. You claim once per epoch; a second attempt on the same leaf reverts. See the RewardDistributor reference.
