Who gets paid
The fees are locked at agreement time (when the contract becomes Active) and distributed automatically once the result is verified and published. No manual claiming.
How a fee is priced
Before anything runs, the request goes through a short live auction. Guardians broadcast a rate for the compute type involved, and the best live rate wins, falling back to a base rate if nobody responds in time. Combined with historical run data and a safety buffer, this produces an estimate the caller funds up front, since only the time actually used gets charged, the estimate can safely lean a little high. TheestimateMinFee SDK call returns this floor, and getFeeParams returns the live network parameters it derives from, see SDK Reference.
That estimate plus its buffer gets locked into the Compute Agreement as escrow. The blocked amount also functions as the Guardian’s signal for the maximum compute budget it should expect before starting work. What happens if a job runs over that budget is an overflow policy set at the same time, currently the default is to kill the job and return an error.
Guardians publish their own rate per hardware type they operate (PALI per minute), but a minimum and maximum guardrail band keeps that rate from being pushed artificially low to win jobs, or unreasonably high in a way that exploits whoever’s paying.