Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

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

Ouverte
#73 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
57/100
Type d'issue
Fonctionnalité
Clarté
Clairement spécifiée
Activité
Active
Stack technique
python

Piste de recherche

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.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

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.

Langage dominant
Python
Étoiles
2
Forks
4
Merge moyen
6 h 14 min
PR mergées (30 j)
18

Préparer son environnement

  • Fournit un Dockerfile ou un fichier Docker Compose
  • Aucun modèle de pull request
  • Aucun guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de QMeshPy/distributed-quantum

Toutes les issues de QMeshPy/distributed-quantum

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.