feat(vault): open any CID from a link or paste, with trustless-gateway fallback
Mantenedores costumam responder em até 1 dia
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 55/100
- Tipo de issue
- Funcionalidade
- Clareza
- Razoavelmente clara
- Status de atividade
- Ativa
- Stack de tecnologia
- javascript
- Domínio
- backend, distributed-systems
Direção de pesquisa
Start by reading features/ipfs/lib/helia-init.ts to see how Helia is initialized, then trace the existing vault page and content decoding flow. Implement the CID route, gateway configuration, validation, and verified fetch with mocked gateway tests. Done means a valid remotely pinned CID opens in a fresh profile, invalid CIDs and unreachable gateways show distinct messages, and fetched content is verified before display.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Summary
Add a page that resolves a CID that is not in the local blockstore, so shared results open without the sender's browser.
Estimated size: M
Motivation
Today a CID shared with another user resolves only if they obtain the block by other means.
Current state in this repo
- Helia runs with
createHelia({ blockstore, datastore })and no custom libp2p or block-broker configuration (features/ipfs/lib/helia-init.ts).
Proposal
- Add
/vault/cid/[cid]with a paste box. - Configure the trustless-gateway block broker with a configurable gateway list (env).
- Show a verified-against-CID indicator and cache fetched blocks locally.
- Validate the CID and the decoded record schema.
Acceptance criteria
- A CID published and pinned elsewhere opens on a fresh browser profile.
- Invalid CIDs and unreachable gateways give distinct messages.
- A fetched block is verified against its CID before display.
Out of scope
- Browser-to-browser transports (see the Kubo browser-connectivity issue).
Technical notes and risks
- Gateway choice affects privacy (the gateway sees the CID); document it.
Dependencies
- None; can be picked up independently.
Testing plan
- Mocked gateway tests; one manual cross-profile check.
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.
- Linguagem predominante
- Python
- Estrelas
- 2
- Forks
- 4
- Merge médio
- 15h 49min
- PRs com merge (30d)
- 50
Preparar o ambiente
- Inclui um Dockerfile ou arquivo Docker Compose
- Sem modelo de pull request
- Sem guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de QMeshPy/distributed-quantum
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
QMeshPy/distributed-quantum#112 ·
Mantenedores costumam responder em até 1 dia
-
enhancement good first issue helia storage tier-1
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
QMeshPy/distributed-quantum#53 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
QMeshPy/distributed-quantum#111 ·
Mantenedores costumam responder em até 1 dia
-
Integrate persistent collaborative EtherCalc workbooks with experiment results and IPFS versionsTalvez já em andamento @Winter-Soren assumiu há 5 dias. Aberta
QMeshPy/distributed-quantum#103 · 1 responsável ·
Mantenedores costumam responder em até 1 dia
-
chain-integration enhancement payments research-spike tier-2
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 55/100
QMeshPy/distributed-quantum#78 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de QMeshPy/distributed-quantum
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
enhancement good first issue
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
elviskahoro/sdk-python-attio#144 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
RenyiELBO raises TypeError when model has no sample sitesTalvez já em andamento @alibb007 assumiu hoje. Aberta
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 85/100
Mantenedores costumam responder em até 1 dia