Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

chore(vault-pinning): remove the legacy nft-storage alias

Open
#47 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
1-2 days
Newbie friendliness
54/100
Issue type
Refactor
Clarity
Mostly clear
Activity status
Active
Tech stack
typescript
Domain
backend

Research direction

Start with types.ts, services/nft-storage.ts, services/index.ts, and hooks/use-pin.ts to trace how pinning services are selected and how audit records are read and unpinned. Then inspect the existing tests for those paths and add coverage for records with service: "nft.storage". Done means the alias is removed from the type and services, the hook uses DEFAULT_SERVICE, and legacy records still display and unpin correctly.

Written by the indexing model from the issue text.

Description

enhancement good first issue helia storage tier-1

Summary

nft.storage is still a valid PinningService value, but the adapter behind it is really Pinata.

Estimated size: S

Current state in this repo

  • types.ts: PinningService = "nft.storage" | "pinata" | "lighthouse".
  • services/nft-storage.ts reads NEXT_PUBLIC_PINATA_JWT, and its header comment says NFT.Storage is a Filecoin archival service.
  • hooks/use-pin.ts defaults service to "nft.storage" while DEFAULT_SERVICE in services/index.ts is "pinata".

Proposal

  • Remove the alias from the type, delete the adapter, and make the hook default to DEFAULT_SERVICE.
  • Decide and document how existing audit records with service: "nft.storage" are read (map to pinata at read time, or migrate).

Acceptance criteria

  • No nft.storage value remains in the type or services.
  • Old audit records still display and unpin correctly.
  • Tests cover the legacy record case.

Dependencies

  • None; can be picked up independently.

Testing plan

  • Unit test for the read-time mapping.

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.

Dominant language
Python
Stars
2
Forks
4
Avg merge
6h 54m
Merged PRs (30d)
7

Getting set up

  • Ships a Dockerfile or Docker Compose file
  • No pull request template
  • No contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from QMeshPy/distributed-quantum

All issues in QMeshPy/distributed-quantum

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.