Meridian Roadmap
Starmaps Roadmap
Milestones
flowchart LR
PN[Non-technical preparation]
subgraph PT[Technical preparation]
B[Boost]
end
M[Measure]
E[Evaluate]
R[Reward]
M --> E
E --> R
B --> M
PN --> RUnless resourcing or dependencies on external teams inform us otherwise, the milestones Measure, Evaluate and Reward should be implemented sequentially.
The preparation milestones can happen in tandem, as visualized above. Eventually during Measure, Technical preparation: Boost will need to have been completed. Eventually during Reward, Non-technical preparation will need to have been completed.
M1-M3 have the same deadline as there’s a lot of uncertainty on the Boost part:
- Which implementation is going to be approved?
- How long will it take to roll out?
There’s an alternative way to structure this: Target the existing frisbii server as an SP in all of the milestones, then add a milestone for proper Boost support.
M0: Non-technical preparation @Patrick Woodhead
- Talk to legal
- What are the implications of this architecture from a legal perspective
- What should we look out for
- Can we comfortably issue rewards like this
- Are we able to help peers with push rewards initially?
- Secure funds
- We need one or more pots of FIL for initial rewards, for as long as there are no SPARK customers yet
- Talk to Reputation working group
- Talk to Network funding
- Reach out to contractors for the smart contracts
- Reach out to Security audit firms
M1: Boost retrieval attestation
- Make SPs participate in attestation protocol @Miroslav Bajtoš
- Write spec for signature chain header (all protocols, start with http) ✅
- Ensure chains can’t be reused (include hash of unique request identifier)
- See
- Create GH issue on Boost repo (https://github.com/filecoin-project/boost) + follow up where requested / as necessary
- Write spec for signature chain header (all protocols, start with http) ✅
- Dev provider setup @Julian Gruber 3d ✅
- Create dev server using https://github.com/ipld/frisbii which implements the attestation logic ✅
- Deploy dev server for measure to target ✅
This milestone will follow
M2: Measure
TODO @Julian Gruber: This section needs to be updated. With the IE smart contract, there won’t be a separate measure smart contract
- Smart Contract
- Function to emit commitment event
- Service
- Phase: Store ✅
- Receive logs ✅
- Store logs in database ✅
- Store attestation token @Julian Gruber
- Phase: Commit @Julian Gruber 1w
- Periodically fetch logs ✅
- Create Merkle tree ✅
- Store Merkle tree ✅
- Provision wallet
- Call smart contract with Merkle root hash
- Phase: Store ✅
- Database ✅
- Deploy ✅
- Peer: Spark module @Miroslav Bajtoš
- Submit logs to service ✅
- Start request attestation
- Forward headers in Lassie
- Attach attestation token
This milestone will follow
M3: Evaluate
TODO @Julian Gruber: This section needs to be updated. With the IE smart contract, there won’t be a separate evaluate smart contract, plus evaluation is a 1-phase process again.
- Service: Stage I / Data preprocessing 1w @Julian Gruber
- Periodically fetch logs from measure database
- Detect fraud: Validate attestation
- Aggregate
- Buckets: Honest logs, fraudulent logs
- Sum measurements
- Store aggregates in database
- Call smart contract with aggregated measurements
- Database
- Deploy
- Smart Contract
- Function to emit commitment events
- Service: Stage II 2w @Julian Gruber
- Simple CRUD UI for managing evaluations
- Create evaluation
- Get evaluation status
- Get evaluation result
- Approve evaluation
- Submit evaluation
- Backend
- Fetch honest aggregates from database
- Evaluate
- Create batches of evaluations
- Call rewards factory smart contract with batches
- Simple CRUD UI for managing evaluations
This milestone will follow
M4: Reward
- Smart Contract: Payment Splitter
- Contract template
- Claim function
- Smart Contract: Rewards Factory
- Function that accepts evaluation batch
- Deploy payment splitter smart contract with rewards inlined
- Peer (Station): Claim FIL @Julian Gruber
- UI
- Write UI spec ✅
- Visualize unclaimed rewards
- Ability to claim FIL, with confirmation
- Backend
- Discovery of rewards available to claim
- UI
This milestone will follow
M5: Soft launch as Rewards Technical Preview
M6 could take significant time, depending on the strategy we use. We would like to be able to release to a technical audience first, which is fine with transferring FIL to the Station wallet in order to claim their rewards.
- Update Station Website
- Messaging and internal outreach
- Airdrops and /or other schemes
- Spotlight / internal announcements
M6: Claim rewards with empty wallet
- Contracts
- Solve initial claim without FIL in wallet
- Peer (Station)
- Potentially UI work
This milestone will follow
M7: Product & GTM (Station)
- Update Station Website
- Messaging and outreach
- Airdrops and /or other schemes
- Decide on talks for Labweek and other events for Meridian / Station
- Swag
- Other incentives beyond financial ones