-
Notifications
You must be signed in to change notification settings - Fork 25
Description
The ideal for these is a simple eth_call into a contract to fish around in its state to pull out what we need. If this can be done in one call then this is the best situation. If it requires a few calls then that's not terrible. If it requires a search with calls then that's not great because we have RPC usage limits and also time constraints for round-trips.
Subgraphs are an option, but the less we have to rely on them the better. They will be good for historical information not in state, or information that we can't efficiently represent in state. But if we have to implement a function call that's expensive, then that's not terrible because we're not paying the gas for it to do an eth_call.
My list off the top of my head so far, I'll add to this as I think of more or variations, but I'm also open to input and discussion!
- Get list of providers in the registry. Hopefully this does it: All providers getter filecoin-services#18
- Get a pricelist in some form? How much is it costing per GiB / MiB / whatever and over what period. And how much with CDN enabled. I don't know if this is in M1 scope but it needs to be somewhere for the SDK to request, otherwise we hardwire it.
- Get the latest value of
clientDataSetIDsfor a certainpayerso I can sign auth blobs that include it +1 as a nonce. (i.e. an accessor for this: https://github.com/FilOzone/filecoin-services/blob/5511d2eb63159263027e510b957fa1adba5d5017/service_contracts/src/SimplePDPServiceWithPayments.sol#L56-L57) - Get list of providers a client has previously dealt with.
- Get list of proof sets for a client with a specific provider (this could be bundled with the above query)
- Get a list of roots in a specific proof set (not a high priority for M1 I think, but might be useful, and would also solve expose an API to get all the commP stored of a given wallet #50 if we do an iterative search with the two above queries)
- Get the proving status of a proof set (or root? or whatever level of granularity we have to say whether it's being proven or not)
- Get the metadata for a root and / or proof set (I guess proof set since this is what we are interested in: Add
withCDN:booltoProofSetInfofilecoin-services#19) - Figure out whether a root (CommP) is within a proof set (if I have a provider and proof set, can I determine whether it's been onboarded with an eth_call)
Metadata
Metadata
Assignees
Labels
Type
Projects
Status