Hacktoberfest 2026:維護者為十月標記出來的 issue,仍然開放、適合新手。 瀏覽 Hacktoberfest issue

feat(backend): Python gateway client that fetches by CID and verifies content

未關閉
#73 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

維護者通常 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 內容生成。

描述

enhancement kubo storage tier-2

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 範本
  • 沒有貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

QMeshPy/distributed-quantum 的其他 Issue

查看 QMeshPy/distributed-quantum 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。