-
Notifications
You must be signed in to change notification settings - Fork 19
Closed
Milestone
Description
Context: FilOzone/synapse-sdk#540
Summary
Create a simple contract that maintains a list of endorsed provider IDs. This replaces the endorsement certificates approach.
Background
We have a three-tier provider trust model:
- All providers - Everyone in ServiceProviderRegistry
- Approved providers - Recorded in FilecoinWarmStorageService
- Endorsed providers - Small set we store at least one copy with
This contract identifies the endorsed tier.
Details
- Store a list of provider IDs
- Owner-controlled
- Suggested functions:
getEndorsedProviders() → uint256[]- returns full listaddEndorsed(uint256 providerId)- owner onlyremoveEndorsed(uint256 providerId)- owner only- Or just
setEndorsed(uint256[] providerIds)?
- Deploy to calibnet and mainnet
- Add to deployment script(s) or make a new one (@rjan90 to provide input on preferred deployment script mechanism)
- Document contract address per network
- Later: Transfer to multisig and test with multisig before GA
Follow-on Synapse work
- Add contract address constant per network, add override address in
SynapseOptionsfor devnet use and other testing - Add memoised query in
StorageManger, fetch once per session, cache result, pass to dependent components - Update feat: Endorsement Certificates synapse-sdk#443 to use contract data instead of certs
Note: part of the upload() work will be redoing a bunch of this code so the main priority is just to make something provably work.
Metadata
Metadata
Assignees
Labels
No labels
Type
Projects
Status
🎉 Done