mirror of
https://github.com/pezkuwichain/pwap.git
synced 2026-04-22 03:17:56 +00:00
0ea3b9df1f
## Problem Frontend was showing 'connecting network' message on production (pezkuwichain.io) because: 1. WebSocket endpoint was hardcoded to localhost in App.tsx 2. DEFAULT_ENDPOINT in polkadot.ts was not reading environment variables ## Solution ### shared/blockchain/polkadot.ts - Added getWebSocketEndpoint() function to read VITE_NETWORK and corresponding VITE_WS_ENDPOINT_* env vars - Changed DEFAULT_ENDPOINT from hardcoded value to call getWebSocketEndpoint() - Now correctly uses wss://ws.pezkuwichain.io in production ### web/src/App.tsx - Removed hardcoded endpoint="ws://127.0.0.1:9944" prop from PolkadotProvider - Now uses DEFAULT_ENDPOINT which reads from environment ### web/vite.config.ts - Minor formatting improvements (no functional changes) ### CLAUDE_README_KRITIK.md (New file) - Critical documentation for future Claude instances - Documents VPS validator setup, bootnode configuration - Strict warnings not to modify working blockchain - Troubleshooting commands and procedures - Frontend deployment steps ## Result - Production site now correctly connects to wss://ws.pezkuwichain.io - Environment-based configuration working as expected - Local dev still uses ws://127.0.0.1:9944 ## Files Changed - shared/blockchain/polkadot.ts: Dynamic endpoint selection - web/src/App.tsx: Remove hardcoded endpoint - CLAUDE_README_KRITIK.md: Critical documentation (new)
4.1 KiB
4.1 KiB
CLAUDE İÇİN KRİTİK BİLGİLER - BUNU ÖNCE OKU!
⚠️ ÇOK ÖNEMLİ - DOKUNMA!
Bu sistem günlerdir emek verilerek kurulmuştur. Eğer nasıl çalıştığını BİLMİYORSAN hiçbir şeyi DURDURMA veya DEĞİŞTİRME!
MEVCUT ÇALIŞAN SİSTEM
VPS (37.60.230.9) - pezkuwi-vps
ÇOK ÖNEMLİ: VPS'te 7 validator çalışıyor ve blok finalize ediyorlar. BUNLARA DOKUNMA!
# VPS'teki validator durumunu kontrol et:
ssh pezkuwi-vps "ps aux | grep -E '[p]ezkuwi.*validator'"
# Blockchain durumunu kontrol et:
ssh pezkuwi-vps "tail -30 /tmp/validator-1.log | grep -E '(peers|finalized)' | tail -5"
Çalışan validatorlar:
- VPS-Validator-1 (Bootnode): Port 30333, RPC 9944
- VPS-Validator-2: Port 30334, RPC 9945
- VPS-Validator-3: Port 30335, RPC 9946
- VPS-Validator-4: Port 30336, RPC 9947
- VPS-Validator-5: Port 30337, RPC 9948
- VPS-Validator-6: Port 30338, RPC 9949
- VPS-Validator-7: Port 30339, RPC 9950
Chain Spec: /root/pezkuwi-sdk/chain-specs/beta/beta-testnet-raw.json
Başlatma scripti: /tmp/start-vps-with-public-addr.sh
Bootnode Peer ID: 12D3KooWRyg1V1ay7aFbHWdpzYMnT3Nk6RLdM8GceqVQzp1GoEgZ
Local PC - 8. Validator (Planlanmış)
Local PC'den 8. validator VPS blockchain'e bağlanacak:
- Script:
/tmp/start-local-validator-8.sh - Bootnode:
/ip4/37.60.230.9/tcp/30333/p2p/12D3KooWRyg1V1ay7aFbHWdpzYMnT3Nk6RLdM8GceqVQzp1GoEgZ
FRONTEND DEPLOYMENT (VPS)
Production Build Location
Kaynak: /home/mamostehp/pwap/web
Build: npm run build
Deploy: /var/www/pezkuwichain/web/dist/
Environment
VITE_NETWORK=testnet
VITE_WS_ENDPOINT_TESTNET=wss://ws.pezkuwichain.io
VITE_API_BASE_URL=https://api.pezkuwichain.io/api
Nginx Config
Server: /etc/nginx/sites-available/pezkuwichain.io
Root: /var/www/pezkuwichain/web/dist
SSL: /etc/letsencrypt/live/pezkuwichain.io/
WebSocket Proxy
location /ws {
proxy_pass http://127.0.0.1:9944;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
YASAKLAR - BUNLARI YAPMA!
- ❌ VPS'teki validatorları DURDURMA! Blockchain çalışıyor, bozma!
- ❌ Chain spec değiştirme!
/root/pezkuwi-sdk/chain-specs/beta/beta-testnet-raw.jsonkullan - ❌ Blockchain restart etme! Eğer gerçekten gerekiyorsa ÖNCE KULLANICIYA SOR
- ❌ Base path değiştirme! VPS:
/root/pezkuwi-data/beta-testnet/ - ❌ Varsayımla iş yapma! Bilmiyorsan SOR!
SAĞLIKLI BLOCKCHAIN KONTROLÜ
# 1. VPS'te validator sayısı (7 olmalı)
ssh pezkuwi-vps "ps aux | grep -E '[p]ezkuwi.*validator' | wc -l"
# 2. Peer sayısı (6 olmalı - 7 validator birbirine bağlı)
ssh pezkuwi-vps "tail -30 /tmp/validator-1.log | grep -E 'peers' | tail -1"
# 3. Block finalization (devam ediyor mu?)
ssh pezkuwi-vps "tail -30 /tmp/validator-1.log | grep -E 'finalized' | tail -3"
Sağlıklı output örneği:
💤 Idle (6 peers), best: #5722, finalized #5720, ⬇ 10.0kiB/s ⬆ 21.2kiB/s
FRONTEND DEPLOYMENT ADIM ADIM
# 1. Local PC'de build (pwap/web klasöründe)
cd /home/mamostehp/pwap/web
npm run build
# 2. VPS'e deploy
rsync -avz dist/ pezkuwi-vps:/var/www/pezkuwichain/web/dist/
# 3. Nginx reload (gerekirse)
ssh pezkuwi-vps "systemctl reload nginx"
# 4. Kontrol
curl -I https://pezkuwichain.io
SORUN GİDERME
Frontend "connecting network" gösteriyor
- Blockchain çalışıyor mu kontrol et (yukarıdaki komutlar)
- WebSocket proxy çalışıyor mu:
curl -I http://37.60.230.9:9944 - SSL çalışıyor mu:
curl -I https://pezkuwichain.io
Blockchain blok üretmiyor
- ÖNCE KULLANICIYA SOR! Kendi başına restart etme!
- Peer sayısını kontrol et
- Session keys set edilmiş mi kontrol et
CLAUDE, BU KURALLAR SANA:
- Eğer bir şey çalışıyorsa DOKUNMA!
- Bilmiyorsan ÖNCE SOR, sonra yap
- Varsayım yapma, kanıt topla
- Kritik işlemlerde ONAY AL
- Bu dosyayı her session başında OKU
SON GÜNCELLEME
Tarih: 2025-11-16 Durum: VPS'te 7 validator çalışıyor, blok finalize ediliyor Son Blok: #5722 (finalized #5720) Peer Count: 6 peers