Closed gobengo closed 1 year ago
I just read over here:
While we recognize that there needs to be a way to communicate "who to bill", that is only relevant if your space has multiple storage contracts. In the MVP we will not support multiple contracts case, we'll do that post MVP.
I still need to finish that long thread, which seems to be a precursor to the spec I read when i asked this question.
In the MVP we will not support multiple contracts case
Does that mean that at 'mvp' there can only be 1 provider in the space?
If so, maybe for the MVP we shouldn't try to make such a general producer/consumer protocol because we don't have the time to think through all the edge cases. Maybe we just define a 'storageProvider' protocol for spaces and explicitly say that there can only be one at a time. Based on lessons learned in implementing that, we can decide whether/how to specify/implement a more general-purpose producer/consumer protocol.
Reason we’d like to leave it out for mvp is not because we don’t know how or what we want to do, simply because we want to reduce scope. If we allow multiple storage providers we’ll need to allow signaling which to bill for each store operation. It alos complicates UX pieces etc…
since all our plans simply add more storage capacity we don’t need to implement these so leaving it out now seems like a good idea
Maybe we just define a 'storageProvider' protocol for spaces and explicitly say that there can only be one at a time. Based on lessons learned in implementing that, we can decide whether/how to specify/implement a more general-purpose producer/consumer protocol.
At this point this would mean change more things and spec-ing more stuff. Personally I don’t think it’s better, but chances are I’m biased. If you disagree I think it’s probably best to write up a proposals so we could compare pros/cons with rest of the team.
It is worth noting that nothing is set in stone here. We do intend to allow one provider at a time, in the future we think we’ll allow multiple and allocate store
field in our caps. If we find that it was a bad idea we’ll simply release store
field and update spec
@gozala plan sounds good to me. Just poking to understand. Ty
Scenario:
can: *, with: zSpace
to Aliceprovider: "did:dns:free.web3.storage"
provider: "did:dns:free.web3.storage"
What happens?