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
Bug fixy, nowe funkcje zgodne z roadmapą, optymalizacje. Zanim zaczniesz pracę nad większą zmianą, otwórz issue żeby omówić kierunek.
Przegląd kodu kryptograficznego, analiza threat modelu, zgłoszenia luk. Luki zgłaszaj prywatnie — nie przez publiczne issues.
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.
Unit testy, testy integracyjne, testy na różnych urządzeniach i systemach. Projekt ma zbyt mało pokrycia testami — to priorytet.
Konfiguracja środowiska lokalnego
-
Sklonuj repozytorium
git clone https://github.com/LexAiTools/phantom-app.git cd phantom-app
-
Zainstaluj zależności
npm install
-
Uruchom testy
npx hardhat test
-
Uruchom lokalny node do testów kontraktów
npx hardhat node npx hardhat run scripts/deploy.js --network localhost
Proces pull requesta
- Zrób fork repozytorium na GitHub
Pracuj na własnym forku, nie bezpośrednio na
main. - Stwórz branch od
mainNazwa brancha powinna opisywać zmianę:
fix/tor-circuit-rotation,feat/file-transfer. - Napisz testy dla swojej zmiany
PR bez testów będzie odrzucony jeśli zmiana dotyczy logiki bezpieczeństwa lub kryptografii.
- 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ś.
- Zaczekaj na review
Staramy się odpowiadać w ciągu 72 godzin. Zmiany dotyczące kryptografii wymagają dodatkowego przeglądu.
Zasady
- 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ł
- 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
| Temat | Gdzie |
|---|---|
| Pytania ogólne o projekt | GitHub Discussions ↗ |
| Błędy i feature requesty | GitHub Issues ↗ |
| Luki bezpieczeństwa | Adres .onion podany w modelu bezpieczeństwa |
| Dokumentacja kontraktów | Strona 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
/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.