PHANTOM DOCS
·
DEVELOPMENT

Współpraca przy projekcie

Pull requesty są mile widziane. Phantom to projekt społecznościowy — każda forma wkładu się liczy, od kodu przez dokumentację po zgłaszanie błędów.

Formy wkładu

KOD

Bug fixy, nowe funkcje zgodne z roadmapą, optymalizacje. Zanim zaczniesz pracę nad większą zmianą, otwórz issue żeby omówić kierunek.

BEZPIECZEŃSTWO

Przegląd kodu kryptograficznego, analiza threat modelu, zgłoszenia luk. Luki zgłaszaj prywatnie — nie przez publiczne issues.

DOKUMENTACJA

Poprawki w tej dokumentacji, tłumaczenia, przykłady użycia, opisy API. Szczególnie cenne są poprawki od osób nieznających projektu od środka.

TESTY

Unit testy, testy integracyjne, testy na różnych urządzeniach i systemach. Projekt ma zbyt mało pokrycia testami — to priorytet.

Konfiguracja środowiska lokalnego

  1. Sklonuj repozytorium
    git clone https://github.com/LexAiTools/phantom-app.git
    cd phantom-app
  2. Zainstaluj zależności
    npm install
  3. Uruchom testy
    npx hardhat test
  4. Uruchom lokalny node do testów kontraktów
    npx hardhat node
    npx hardhat run scripts/deploy.js --network localhost

Proces pull requesta

  1. Zrób fork repozytorium na GitHub

    Pracuj na własnym forku, nie bezpośrednio na main.

  2. Stwórz branch od main

    Nazwa brancha powinna opisywać zmianę: fix/tor-circuit-rotation, feat/file-transfer.

  3. Napisz testy dla swojej zmiany

    PR bez testów będzie odrzucony jeśli zmiana dotyczy logiki bezpieczeństwa lub kryptografii.

  4. Otwórz PR z opisem co i dlaczego

    Użyj szablonu PR z repozytorium. Opisz problem który rozwiązujesz, nie tylko co zmieniłeś.

  5. Zaczekaj na review

    Staramy się odpowiadać w ciągu 72 godzin. Zmiany dotyczące kryptografii wymagają dodatkowego przeglądu.

Zasady

AKCEPTUJEMY
  • Zmiany zgodne z roadmapą i filozofią projektu
  • Bug fixy z reprodukcją w teście
  • Poprawki dokumentacji i tłumaczenia
  • Optymalizacje z benchmarkiem
  • Zgłoszenia luk przez prywatny kanał
ODRZUCAMY
  • Funkcje wymagające centralnego serwera
  • Telemetria, analytics, tracking cokolwiek
  • Zależności od zamkniętych serwisów
  • Zmiany kryptografii bez peer review
  • PR bez opisu i kontekstu

Gdzie szukać pomocy

TematGdzie
Pytania ogólne o projektGitHub Discussions ↗
Błędy i feature requestyGitHub Issues ↗
Luki bezpieczeństwaAdres .onion podany w modelu bezpieczeństwa
Dokumentacja kontraktówStrona donacji + kod na GitHub

Push do GitHub — instrukcja dla nowych

Jeśli dopiero zaczynasz z Git, tu jest minimalny przepływ pracy:

git add .
git commit -m "opis: co i dlaczego"
git push origin nazwa-twojego-brancha

Następnie otwórz Pull Request na GitHub przez interfejs webowy. Jeśli to Twoje własne repo i chcesz wrzucić zmiany bezpośrednio na main:

git add .
git commit -m "docs: dodaję dokumentację HTML"
git push origin main
Dokumentacja HTML którą masz lokalnie (/phantom-docs/) możesz wrzucić do folderu docs/ w repozytorium. GitHub Pages automatycznie ją opublikuje jeśli włączysz tę opcję w Settings → Pages → Source: /docs.