π Meridian Design Doc 02: Orchestrator model in depth
πΒ Meridian Design Doc 4: Spark Fraud Prevention
TODO
MERidian stands for Measure, Evaluate, Reward, the three steps of the impact evaluator framework. The Meridian project aims to create an impact evaluator for βoff-chainβ networks. I.e. a network of nodes that do not maintain a shared ledger or blockchain of transactions.
This doc proposes a framework and model for Meridian that will cater initially for both the Saturn payouts system and the SPARK Station module. For a bonus point, it should be able to cater for any Station module. We believe that trying to generalise beyond these few use cases at this point may be counterproductive.
We will structure this design doc based on the three steps of an Impact Evaluator (IE), measure, evaluate and reward.
sequenceDiagram
autonumber
participant P as Peer
participant M as Measure
participant E as Evaluate
participant R as Reward
participant DB as Database
participant C as Chain
loop Measure
P->>M: Upload logs
M->>DB: Store logs
M->>C: Publish proof
end
loop Evaluate I
DB->>E: Fetch logs
E->>E: Detect fraud
E->>E: Aggregate
E->>DB: Store aggregates
E->>C: Publish proof
end
loop Evaluate II
DB->>E: Fetch aggregates
E->>E: Calculate reward shares
E->>C: Publish reward shares
end
loop Reward
R->>C: Create payment splitters
P->>C: Claim FIL
end
We have chosen to start the Meridian design supported by a minimal set of centralized and trusted services (previously called orchestrator). See Meridian Design Doc 01: Model Exploration for an exploration of alternatives.
A fully trustless model is to be developed as a very next step, because it brings important benefits for a rewards system:
However, only using smart contracts poses unsolved design challenges: