Open mudler opened 4 months ago
@mudler I think this still has more work to be done in the oracle code itself.
@mudler I think this still has more work to be done in the oracle code itself.
It should be depending indeed on https://github.com/masa-finance/roadmap/issues/66 and https://github.com/masa-finance/masa-oracle/issues/496 (not yet groomed)
As part of our spike in #329 we have decided on the terms that should be part of calculating the reward for the workers (see note in: https://github.com/masa-finance/masa-oracle/issues/329#issuecomment-2197120216).
This card is an implementation card about using our #380 to store the rewards of the nodes such can be distributed later on via a mechanism that allows to link the rewards to the smart contracts deployed in different chains.
Per #329 the initial features essential to rewards are:
powerScore
) + ($\beta_w$dataQuality
)accumulatedUptime
) + ($\beta_o$totalBytesProcessed
)To calculate rewards for these actors we will need to update the nodeData model according to 4 in this resolution.
Necessary Metric Additions/Modifications
numberOfBlocksValidated
-> Can be added as a field for Validators or more simply be the result of a sum of peerIDs included in a properly validated piece of work.powerScore
-> initial suggestions about implementation heredataQuality
-> success/failure of assigned worktotalBytesProcessed
-> In the context of the Oracle this is a summation of work that has originated from that node. This can either be a new field added to the nodeData structure or again, a sum tallied and recorded when work associated with an Oracle is recorded using the updatedrecords
data structure.Coefficients
These are more static values that can be stored as static variables in the functions used to calculate utility.
Validators should be able to calculate an utility for the worker that is then reflected as an award for their work. The work have to be tracked in the ledger or in the #381 to make sure it can be syncronized with the smart contracts deployed in the other chains.
Additional context
329
Blocked by #380
Acceptance criteria