-
Notifications
You must be signed in to change notification settings - Fork 105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create design doc for "helia with trustless gateway HTTP support" #272
Comments
Rough flowchart of getting a block using Helia as things currently stand: flowchart TD
%% getting a single block from helia
A[Application] -->|get block| B[Helia module]
B -->|get block| C[Helia.BlockStorage]
C -->|get block| D[Helia.NetworkedStorage]
D --> E{BlockStorage.has}
E -->|have block| A
E -->|No| F{Online & Bitswap}
F -->|No| G[End]
F -->|Yes| H{bitswap.WANT}
H -->|get block| H
H -->|have block| A
|
rough flowchart of what expected flow will be once #274 is done: flowchart TD
%% getting a single block from helia after https://github.com/ipfs/helia/issues/274
A[Application] -->|get block| B[Helia module]
B -->|get block| C[Helia.BlockStorage]
C -->|get block| D[Helia.NetworkedStorage]
D --> E{BlockStorage.has}
E -->|have block| A
E -->|No| F{Online}
F -->|No| G[End]
F -->|yes2| H{Use byteProviders}
H -->|BitSwap| H1{bitswap.WANT}
H1 -->|get block| H1
I[any byteProvider returns success]
H1 -->|have block| I
H -->|OtherMethod| H2{Any Impl}
H2 -->|have block| I
H -->|TrustLessGateway| H3{dweb.link}
H3 -->|have block| I
I -->|have block| A
|
@achingbrain could use a peek at this. i'm planning on making the change in I was also thinking of wrapping bitswap with a |
The rest of the work/discussion here is being handled by #274 |
@SgtPooki : can we get this issue closed? I assume just need to get this diagram checked into the Helia repo? |
Tasks
The text was updated successfully, but these errors were encountered: