feat(backend): Python gateway client that fetches by CID and verifies content
維護者通常 1 天內回覆
還沒有人認領這個 Issue。
評估
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 新手友好度
- 57/100
- Issue 類型
- 功能
- 描述清晰度
- 描述清楚
- 活躍度
- 活躍
- 技術堆疊
- python
研究方向
Start by reading dependency issue #59 and locating the Python content layer and its pytest setup; the payload does not name specific files. Implement a gateway read client that fetches /ipfs/<cid> with timeouts and size limits, recomputes raw or JSON CIDs, and raises distinct unavailable and mismatch errors. Add mocked response tests for matching and tampered content, plus an outage test; done means valid bytes are returned and each failure has the specified error.
由索引模型根據 Issue 內容生成。
描述
Summary
A read-side client so the coordinator and workers can fetch content (for example a circuit by CID) over HTTP and check the hash.
Estimated size: S
Motivation
The cheapest bridge between the Python compute plane and IPFS, with no libp2p interop needed.
Proposal
- Fetch
/ipfs/<cid>from the configured gateway with timeouts and size limits. - Recompute the CID of the received bytes (raw and JSON codecs first) and reject mismatches.
- Typed errors: unavailable vs mismatch.
Acceptance criteria
- A matching fetch returns bytes; a tampered response raises a mismatch error.
- Gateway outage raises unavailable, not mismatch.
Out of scope
- Writing content (see the Kubo RPC client).
Dependencies
- #59
Testing plan
- pytest with mocked gateway responses including tampered bytes.
Part of #43. Ground rules for the content layer: no secrets in the repo, content-layer failures must never block or discard quantum execution, and tests and docs ship with every PR.
- 主要語言
- Python
- 星號
- 2
- 分支
- 4
- 平均合併
- 6 小時 54 分鐘
- 30 天內合併 PR
- 7
環境準備
- 提供 Dockerfile 或 Docker Compose 檔案
- 沒有 Pull Request 範本
- 沒有貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
QMeshPy/distributed-quantum 的其他 Issue
-
enhancement good first issue helia storage tier-1
難度 2/5 1-3 小時 新手友好度 78/100
QMeshPy/distributed-quantum#53 ·
維護者通常 1 天內回覆
-
chain-integration enhancement payments research-spike tier-2
難度 4/5 3-5 天 新手友好度 55/100
QMeshPy/distributed-quantum#78 ·
維護者通常 1 天內回覆
-
chain-integration enhancement payments research-spike tier-2
難度 3/5 1-2 天 新手友好度 66/100
QMeshPy/distributed-quantum#77 ·
維護者通常 1 天內回覆
-
chain-integration enhancement payments tier-2
難度 5/5 一週以上 新手友好度 35/100
QMeshPy/distributed-quantum#76 ·
維護者通常 1 天內回覆
-
documentation good first issue kubo storage tier-1
難度 2/5 1-3 小時 新手友好度 42/100
QMeshPy/distributed-quantum#75 ·
維護者通常 1 天內回覆
查看 QMeshPy/distributed-quantum 的全部 Issue
相似的 Issue
-
[Bug]: IndexHandler.post crashes with HTTP 500 on malformed payloads, missing credentials, or when login is disabled可能已有人在做 關聯的 PR 仍在進行中或已合併。 未關閉
難度 2/5 1-3 小時 新手友好度 78/100
維護者通常 6 天內回覆
-
github_actions
難度 2/5 1-3 小時 新手友好度 65/100
collective/icalendar#2003 · 1 則留言 ·
維護者通常 1 天內回覆
-
bug
難度 2/5 1-3 小時 新手友好度 79/100
-
難度 2/5 1-3 小時 新手友好度 68/100
openzim/python-scraperlib#360 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 82/100
volcengine/OpenViking#6445 ·
維護者通常 1 天內回覆