chore: remove stale docs, scripts, and sensitive validator data
This commit is contained in:
@@ -1,154 +0,0 @@
|
||||
# CI WORKFLOW CHECKLIST
|
||||
|
||||
**Tarih:** 2026-01-27
|
||||
**Branch:** fix/ci-wasm-target
|
||||
**Son Commit:** (pending)
|
||||
|
||||
---
|
||||
|
||||
## YAPILAN DEĞİŞİKLİKLER
|
||||
|
||||
### Commit 1: f7f4630446
|
||||
- `tests.yml` - quick-benchmarks job'ına wasm32v1-none target eklendi
|
||||
|
||||
### Commit 2: 98f2b64c9f
|
||||
- `tests-misc.yml` - 4 job'a wasm32v1-none target eklendi
|
||||
- `tests-linux-stable.yml` - 4 job'a wasm32v1-none target eklendi
|
||||
- `build-misc.yml` - 1 job'a wasm32v1-none target eklendi
|
||||
|
||||
### Commit 3: b87897b837
|
||||
- `tests-misc.yml`:
|
||||
- `master` → `main` branch referansı düzeltildi (cargo-check-benches)
|
||||
- `test-pezframe-examples-compile-to-wasm` disabled (serde_core wasm32 issue)
|
||||
- `cargo-check-each-crate` - SKIP_WASM_BUILD=1 eklendi
|
||||
- `test-deterministic-wasm` dependency güncellendi
|
||||
- `confirm-required` needs listesi güncellendi
|
||||
|
||||
### Commit 4: 0a84411ba2
|
||||
- `deprecated_where_block.stderr` - UI test beklenen çıktısı güncellendi
|
||||
|
||||
### Commit 5: 2b4af0d91b
|
||||
- `deprecated_where_block.stderr` - CI-uyumlu CARGO_HOME path kullanıldı
|
||||
- `/home/mamostehp/.cargo/` → `/usr/local/cargo/` değiştirildi
|
||||
|
||||
### Commit 6: (pending - quick-benchmarks getrandom fix)
|
||||
- `tests.yml` - quick-benchmarks'tan wasm32v1-none target kaldırıldı
|
||||
- Sebep: getrandom crate wasm32v1-none desteklemiyor
|
||||
|
||||
### Commit 7: (pending - tests-misc fixes)
|
||||
- `tests-misc.yml`:
|
||||
- `pezsnowbridge-runtime-common` cargo-check-benches exclusion listesine eklendi
|
||||
- Sebep: EnsureOriginWithArg trait - `try_successful_origin` method eksik
|
||||
- `test-deterministic-wasm` job'undan wasm32v1-none target kaldırıldı
|
||||
- Sebep: serde_core wasm32v1-none uyumsuzluğu sessiz build hatasına yol açıyor
|
||||
|
||||
---
|
||||
|
||||
## HATA ANALİZİ VE ÇÖZÜMLER
|
||||
|
||||
| Job | Hata | Durum |
|
||||
|-----|------|-------|
|
||||
| cargo-check-benches (master) | `master` branch yok | ✅ `main` olarak düzeltildi |
|
||||
| test-pezframe-examples-compile-to-wasm | serde_core wasm32 duplicate lang item | ✅ Geçici disable |
|
||||
| cargo-check-each-crate | serde_core wasm32 duplicate lang item | ✅ SKIP_WASM_BUILD=1 eklendi |
|
||||
| pez-node-bench-regression-guard | cargo-check-benches'e bağımlı | ✅ Otomatik düzelecek |
|
||||
| test-pezframe-ui | UI test expected output mismatch | ✅ .stderr dosyası güncellendi (CI path) |
|
||||
| quick-benchmarks | getrandom wasm32v1-none not supported | ✅ wasm32v1-none target kaldırıldı |
|
||||
| cargo-check-benches (main) | pezsnowbridge-runtime-common EnsureOrigin | ✅ exclusion listesine eklendi |
|
||||
| test-deterministic-wasm | WASM build sessiz hata (wasm32v1-none) | ✅ target kaldırıldı |
|
||||
|
||||
---
|
||||
|
||||
## RUNNER DURUMU (2026-01-27T06:30 UTC)
|
||||
|
||||
| VPS | IP | CPU | RAM | Runner | Versiyon | Docker | PATH |
|
||||
|-----|-----|-----|-----|--------|----------|--------|------|
|
||||
| VPS1 | 37.60.230.9 | 8 | 23GB | 1 | v2.331.0 | ✅ 29.1.1 | ✅ |
|
||||
| VPS2 | 62.146.235.186 | 16 | 62GB | 2 | v2.331.0 | ✅ 29.1.3 | ✅ |
|
||||
| VPS3 | 217.77.6.126 | 18 | 94GB | 3 | v2.331.0 | ✅ 28.2.2 | ✅ |
|
||||
| VPS4 | 109.123.229.159 | 4 | 8GB | 1 | v2.331.0 | ✅ 28.2.2 | ✅ |
|
||||
| VPS5 | 161.97.116.241 | 4 | 8GB | 1 | v2.331.0 | ✅ 28.2.2 | ✅ |
|
||||
| VPS6 | 46.250.241.121 | 4 | 8GB | 1 | v2.331.0 | ✅ 28.2.2 | ✅ |
|
||||
| VPS7 | 164.68.121.181 | 4 | 8GB | 1 | v2.331.0 | ✅ 28.2.2 | ✅ |
|
||||
| VPS8 | 158.220.93.23 | 4 | 8GB | 1 | v2.331.0 | ✅ 28.2.2 | ✅ |
|
||||
| **TOPLAM** | - | **62** | **227GB** | **11** | - | - | - |
|
||||
|
||||
### Runner PATH Fix (2026-01-27T06:23 UTC)
|
||||
- Tüm runner'ların `.env` dosyasına PATH eklendi
|
||||
- `PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin`
|
||||
- Tüm runner servisler restart edildi
|
||||
|
||||
### SSH Erişimi
|
||||
```bash
|
||||
ssh root@37.60.230.9 # VPS1
|
||||
ssh root@62.146.235.186 # VPS2
|
||||
ssh root@217.77.6.126 # VPS3
|
||||
ssh root@109.123.229.159 # VPS4
|
||||
ssh root@161.97.116.241 # VPS5
|
||||
ssh root@46.250.241.121 # VPS6
|
||||
ssh root@164.68.121.181 # VPS7
|
||||
ssh root@158.220.93.23 # VPS8
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## BİLİNEN SORUNLAR (GENEL)
|
||||
|
||||
### serde_core wasm32 Sorunu (Issue #355)
|
||||
- **Hata:** `duplicate lang item in crate alloc: exchange_malloc`
|
||||
- **Etkilenen:** Tüm wasm32-unknown-unknown target build'ler
|
||||
- **Çözüm:** Upstream serde fix bekliyor, geçici olarak WASM build'ler disable/skip
|
||||
|
||||
### trybuild Path Normalization
|
||||
- **Sorun:** trybuild CARGO_HOME path'lerini normalize etmiyor
|
||||
- **Etkilenen:** `deprecated_where_block.stderr` gibi external crate referansları olan UI testler
|
||||
- **Çözüm:** .stderr dosyalarında CI-uyumlu path kullanıldı (`/usr/local/cargo/`)
|
||||
|
||||
### getrandom wasm32v1-none
|
||||
- **Sorun:** getrandom crate wasm32v1-none target'ı desteklemiyor
|
||||
- **Etkilenen:** quick-benchmarks job
|
||||
- **Çözüm:** Target ekleme adımı kaldırıldı, wasm-builder otomatik fallback yapar
|
||||
|
||||
---
|
||||
|
||||
## CI DURUMU (2026-01-27T07:30 UTC)
|
||||
|
||||
### Başarılı (12):
|
||||
- ✅ Check labels
|
||||
- ✅ Check licenses
|
||||
- ✅ Command Bot Tests
|
||||
- ✅ Review Bot
|
||||
- ✅ Review-Trigger
|
||||
- ✅ check-runtime-compatibility
|
||||
- ✅ check-runtime-migration
|
||||
- ✅ quick-checks
|
||||
- ✅ tests linux stable experimental
|
||||
- ✅ Build and push ETH-RPC image
|
||||
- ✅ tests linux stable coverage (skipped)
|
||||
- ✅ Check links
|
||||
|
||||
### Başarısız (düzeltme bekleniyor):
|
||||
- ❌ cargo-check-benches (main) - pezsnowbridge-runtime-common exclusion → DÜZELTME YAPILDI
|
||||
- ❌ test-deterministic-wasm - wasm32v1-none silent failure → DÜZELTME YAPILDI
|
||||
- ❌ pez-node-bench-regression-guard - cargo-check-benches'e bağımlı
|
||||
|
||||
### Çalışıyor / Kuyrukta:
|
||||
- 🔄 tests misc (in_progress)
|
||||
- 🔄 Build Misc (in_progress)
|
||||
- ⏳ Checks (queued)
|
||||
- ⏳ Docs (queued)
|
||||
- ⏳ tests linux stable (queued)
|
||||
- ⏳ Build and push images (queued)
|
||||
- ⏳ tests (queued)
|
||||
- ⏳ EVM test suite (queued)
|
||||
|
||||
---
|
||||
|
||||
## SONRAKİ ADIMLAR
|
||||
|
||||
1. ✅ Runner PATH fix uygulandı (tüm VPS)
|
||||
2. ✅ Runner'lar restart edildi
|
||||
3. 🔄 Mevcut workflow'ların tamamlanmasını bekle
|
||||
4. ⏳ PATH fix sonrası yeni workflow tetikle
|
||||
5. ⏳ PR #356'yı merge et
|
||||
6. ⏳ Mainnet hazırlıklarına devam et
|
||||
@@ -1,161 +0,0 @@
|
||||
# Crates.io Publish Plan - Pezkuwi SDK
|
||||
|
||||
**Son Guncelleme:** 2026-01-01 19:00 UTC
|
||||
**Toplam Workspace Crate:** 606
|
||||
**Publishable Crate:** ~516
|
||||
**Yayinlanan:** ~516 (umbrella + zombienet dahil)
|
||||
**Registry:** https://crates.io
|
||||
**Owner:** https://crates.io/users/SatoshiQaziMuhammed
|
||||
|
||||
---
|
||||
|
||||
## ✅ UMBRELLA CRATE YAYINLANDI!
|
||||
|
||||
**pezkuwi-sdk v0.1.1** basariyla crates.io'ya yayinlandi! (zombienet ozellikleri dahil)
|
||||
|
||||
```bash
|
||||
cargo search pezkuwi-sdk
|
||||
# pezkuwi-sdk = "0.1.1" # Pezkuwi SDK umbrella crate.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ✅ ZOMBIENET CRATE'LERI YAYINLANDI! (2026-01-01 ~19:00 UTC)
|
||||
|
||||
6 adet zombienet crate'i rebrand edilip v0.44.0 olarak yayinlandi:
|
||||
|
||||
```
|
||||
[x] pezkuwi-zombienet-support v0.44.0
|
||||
[x] pezkuwi-zombienet-prom-metrics-parser v0.44.0
|
||||
[x] pezkuwi-zombienet-configuration v0.44.0
|
||||
[x] pezkuwi-zombienet-provider v0.44.0
|
||||
[x] pezkuwi-zombienet-orchestrator v0.44.0
|
||||
[x] pezkuwi-zombienet-sdk v0.44.0
|
||||
```
|
||||
|
||||
**Yapilan Degisiklikler:**
|
||||
- `zombienet-*` → `pezkuwi-zombienet-*` rebrand
|
||||
- Tum workspace referanslari guncellendi
|
||||
- Kaynak dosyalarindaki `use zombienet_*` → `use pezkuwi_zombienet_*` guncellendi
|
||||
- Umbrella'ya 6 zombienet crate eklendi
|
||||
|
||||
---
|
||||
|
||||
## BU OTURUMDA YAYINLANAN CRATE'LER (2026-01-01)
|
||||
|
||||
### Yeni Yayinlanan (~36 crate)
|
||||
|
||||
```
|
||||
[x] pezpallet-contracts v27.0.0
|
||||
[x] xcm-pez-simulator v7.0.0
|
||||
[x] pezpallet-derivatives v1.0.0
|
||||
[x] pezpallet-people v1.0.0
|
||||
[x] pezpallet-dummy-dim v1.0.0
|
||||
[x] pezpallet-election-provider-multi-block v0.9.0
|
||||
[x] pezpallet-multi-asset-bounties v1.0.0
|
||||
[x] pezpallet-oracle v1.0.0
|
||||
[x] pezpallet-oracle-runtime-api v1.0.0
|
||||
[x] pezpallet-origin-restriction v1.0.0
|
||||
[x] pezpallet-root-offences v25.0.0
|
||||
[x] pezpallet-root-testing v4.0.0
|
||||
[x] pezpallet-salary v13.0.0
|
||||
[x] pezpallet-session-benchmarking v28.0.0
|
||||
[x] pezpallet-skip-feeless-payment v3.0.0
|
||||
[x] pezpallet-staking-async-rc-client v0.1.0
|
||||
[x] pezpallet-staking-async v0.1.0
|
||||
[x] pezpallet-staking-async-ah-client v0.1.0
|
||||
[x] pezpallet-staking-async-reward-fn v19.0.0
|
||||
[x] pezpallet-staking-async-runtime-api v14.0.0
|
||||
[x] pezpallet-staking-runtime-api v14.0.0
|
||||
[x] pezpallet-state-trie-migration v29.0.0
|
||||
[x] pezpallet-statement v10.0.0
|
||||
[x] pezpallet-transaction-storage v27.0.0
|
||||
[x] pezpallet-xcm-benchmarks v7.0.0
|
||||
[x] pezpallet-xcm-precompiles v0.1.0
|
||||
[x] pezkuwichain-runtime-constants v7.0.0
|
||||
[x] testnet-teyrchains-constants v1.0.0
|
||||
[x] bizinikiwi-txtesttool v0.7.0
|
||||
[x] xcm-pez-emulator v0.5.0
|
||||
[x] pezkuwi-sdk v0.1.0 (UMBRELLA)
|
||||
[x] pezkuwi-zombienet-support v0.44.0
|
||||
[x] pezkuwi-zombienet-prom-metrics-parser v0.44.0
|
||||
[x] pezkuwi-zombienet-configuration v0.44.0
|
||||
[x] pezkuwi-zombienet-provider v0.44.0
|
||||
[x] pezkuwi-zombienet-orchestrator v0.44.0
|
||||
[x] pezkuwi-zombienet-sdk v0.44.0
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## YAPILAN DUZELTMELER
|
||||
|
||||
### 1. pezpallet-contracts-fixtures Dependency
|
||||
- `pezpallet-contracts` icindeki `pezpallet-contracts-fixtures` dev-dependency comment out edildi
|
||||
- Sebep: Test-only crate, crates.io'ya yayinlanmadi
|
||||
|
||||
### 2. Zombienet Vendor Crate'leri ✅ COZULDU
|
||||
- ~~Umbrella'dan kaldirildi: zombienet-configuration, zombienet-orchestrator, prom-metrics-parser, provider, zombienet-sdk, support~~
|
||||
- **Cozum:** `zombienet-*` → `pezkuwi-zombienet-*` olarak rebrand edildi ve yayinlandi
|
||||
- Artik Umbrella'da `pezkuwi-zombienet-*` olarak mevcut
|
||||
|
||||
### 3. pezpallet-contracts-mock-network
|
||||
- Umbrella'dan kaldirildi
|
||||
- Sebep: Test-only crate, pezpallet-contracts-fixtures'a bagimli
|
||||
|
||||
### 4. Crates.io 300 Feature Limiti
|
||||
- runtime-benchmarks feature'indan ~35 primitives entry'si gecici olarak kaldirildi
|
||||
- Umbrella yayinlandiktan sonra geri eklendi
|
||||
|
||||
---
|
||||
|
||||
## YAYINLANAMAYAN CRATE'LER
|
||||
|
||||
Bu crate'ler publish=false oldugu icin yayinlanmadi:
|
||||
|
||||
| Crate | Sebep |
|
||||
|-------|-------|
|
||||
| `pezpallet-contracts-fixtures` | Build script workspace root gerektiriyor |
|
||||
| `pezpallet-contracts-fixtures-common` | publish=false |
|
||||
| `pezpallet-contracts-mock-network` | fixtures'a bagimli |
|
||||
| `pezkuwi-omni-node` | Runtime crate'lere bagimli |
|
||||
| `pezkuwi-omni-node-lib` | Runtime crate'lere bagimli |
|
||||
| `pezkuwi-teyrchain-bin` | Runtime crate'lere bagimli |
|
||||
| Runtime crate'ler (*-runtime) | Genellikle publish=false |
|
||||
|
||||
---
|
||||
|
||||
## ONEMLI NOTLAR
|
||||
|
||||
1. **Rate Limit:** Crates.io yeni crate yayinlama hizini sinirliyor (~10 dakikada 1-2 crate)
|
||||
2. **Feature Limiti:** Crates.io maksimum 300 feature/dependency limiti var
|
||||
3. **Zombienet Crate'leri:** `pezkuwi-zombienet-*` olarak yayinlandi (v0.44.0)
|
||||
4. **Workspace Degisiklikleri:** Bazi test crate'leri dev-dependencies'den comment out edildi
|
||||
|
||||
---
|
||||
|
||||
## KULLANIM
|
||||
|
||||
```toml
|
||||
# Cargo.toml
|
||||
[dependencies]
|
||||
pezkuwi-sdk = "0.1.1"
|
||||
|
||||
# Ozel feature'lar icin
|
||||
pezkuwi-sdk = { version = "0.1.1", features = ["node", "runtime-full"] }
|
||||
|
||||
# Zombienet kullanimi icin
|
||||
pezkuwi-sdk = { version = "0.1.1", features = ["pezkuwi-zombienet-sdk"] }
|
||||
```
|
||||
|
||||
### Zombienet Crate'leri Dogrudan Kullanim
|
||||
|
||||
```toml
|
||||
[dependencies]
|
||||
pezkuwi-zombienet-sdk = "0.44.0"
|
||||
pezkuwi-zombienet-configuration = "0.44.0"
|
||||
pezkuwi-zombienet-orchestrator = "0.44.0"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
*Son guncelleme: 2026-01-01 ~19:00 UTC*
|
||||
@@ -1,557 +0,0 @@
|
||||
# PEZKUWI MAINNET ROADMAP
|
||||
|
||||
**Oluşturulma:** 2026-01-01
|
||||
**Son Güncelleme:** 2026-01-08
|
||||
**Hedef:** %100 Mainnet Hazırlık
|
||||
**Tahmini Süre:** Faz bazlı ilerleme
|
||||
|
||||
---
|
||||
|
||||
## NETWORK PARAMETRELERI
|
||||
|
||||
| Parametre | Değer |
|
||||
|-----------|-------|
|
||||
| **Validators (Mainnet)** | 21 |
|
||||
| **System Teyrchains** | Asset Hub + People Chain |
|
||||
| **Relay Token** | HEZ (DOT ile aynı ekonomi, inflationary) |
|
||||
| **Asset Hub Token** | PEZ (5B sabit arz, genesis'te mint) |
|
||||
| **Audit** | Internal review (Polkadot SDK fork) |
|
||||
|
||||
---
|
||||
|
||||
## FAZ 0: MEVCUT DURUM ANALİZİ ✅ TAMAMLANDI
|
||||
|
||||
### Runtime Compile Durumu:
|
||||
- [x] pezkuwichain-runtime (Relay Chain) ✅
|
||||
- [x] zagros-runtime (Testnet) ✅
|
||||
- [x] asset-hub-pezkuwichain-runtime ✅
|
||||
- [x] people-pezkuwichain-runtime ✅
|
||||
|
||||
### Token Economics Durumu:
|
||||
|
||||
#### HEZ Token (Relay Chain) ✅ KODLANDI
|
||||
```
|
||||
Total Genesis: 200,000,000 HEZ
|
||||
├── Founder: 10% = 20,000,000 HEZ
|
||||
├── Presale: 50% = 100,000,000 HEZ
|
||||
├── Treasury: 20% = 40,000,000 HEZ
|
||||
└── Airdrop: 20% = 40,000,000 HEZ
|
||||
|
||||
Dosya: pezkuwi/runtime/pezkuwichain/src/genesis_config_presets.rs
|
||||
Compile-time validation: ✅
|
||||
Real addresses: ✅ (founder_governance.json'dan)
|
||||
```
|
||||
|
||||
#### PEZ Token (Asset Hub) ✅ KODLANDI
|
||||
```
|
||||
Total Supply: 5,000,000,000 PEZ
|
||||
├── Treasury: 20.25% = 1,012,500,000 PEZ
|
||||
├── Founder: 1.875% = 93,750,000 PEZ
|
||||
├── Presale: 1.875% = 93,750,000 PEZ
|
||||
└── Rewards Pool: 76.00% = 3,800,000,000 PEZ (sentetik halving)
|
||||
|
||||
Dosya: pezcumulus/teyrchains/runtimes/assets/asset-hub-pezkuwichain/src/genesis_config_presets.rs
|
||||
Compile-time validation: ✅
|
||||
wHEZ Asset ID: 2
|
||||
```
|
||||
|
||||
### Genesis Presets Durumu:
|
||||
- [x] "genesis" - Mainnet preset ✅
|
||||
- [x] "development" - Dev preset ✅
|
||||
- [x] "local_testnet" - Local preset ✅
|
||||
- [x] "pezstaging_testnet" - Staging preset ✅
|
||||
|
||||
### Crates.io Yayın Durumu:
|
||||
- Toplam yayınlanan: ~516 crate ✅
|
||||
- pezkuwi-sdk umbrella: v0.1.1 ✅
|
||||
- pezkuwi-zombienet-sdk: v0.44.0 ✅
|
||||
|
||||
---
|
||||
|
||||
## FAZ 1: KOD TAMAMLAMA ✅ TAMAMLANDI
|
||||
|
||||
### 1.1 Compile Hataları ✅
|
||||
- [x] teyrchain-template-runtime düzeltildi
|
||||
- [x] Tüm workspace `cargo check` geçiyor
|
||||
- [x] `cargo clippy --workspace` temiz (-D warnings ile)
|
||||
|
||||
### 1.2 Macro ve Supertrait Düzeltmeleri ✅
|
||||
**Kalıcı çözümler uygulandı (geçici bypass yok):**
|
||||
|
||||
- [x] `is_using_frame_crate()` → `pezframe` ve `pezkuwi_sdk` kontrol ediyor
|
||||
- [x] `get_frame_crate_path()` → `pezframe` crate'i buluyor
|
||||
- [x] `disable_pezframe_system_supertrait_check` attribute'ları kaldırıldı
|
||||
- [x] Test path'leri `pezframe::` olarak güncellendi
|
||||
|
||||
**Düzeltilen dosyalar:**
|
||||
- `bizinikiwi/pezframe/support/procedural/tools/src/lib.rs`
|
||||
- `bizinikiwi/pezframe/support/procedural/src/pezpallet/parse/config.rs`
|
||||
- `docs/sdk/src/reference_docs/frame_pallet_coupling.rs`
|
||||
|
||||
### 1.3 Warning Cleanup ✅
|
||||
**-D warnings flag ile tüm uyarılar temizlendi:**
|
||||
|
||||
| Dosya | Sorun | Kalıcı Çözüm |
|
||||
|-------|-------|--------------|
|
||||
| `chain_spec_runtime/runtime.rs` | dead_code Header | `type _Header` |
|
||||
| `first-runtime/src/lib.rs` | dead_code Header | `type _Header` |
|
||||
| `shared/record.rs` | unused methods | `#[cfg(feature)]` |
|
||||
| `shared/mod.rs` | unused imports | `#[cfg(feature)]` |
|
||||
| `overhead/command.rs` | unused imports | `#[cfg(feature)]` |
|
||||
| `pez-minimal-template-runtime` | unused alias | import kaldırıldı |
|
||||
| `yet-another-teyrchain` | shadowing imports | redundant use kaldırıldı |
|
||||
| `umbrella/src/lib.rs` | undefined feature | referans yorumlandı |
|
||||
|
||||
### 1.4 Binary'ler ✅
|
||||
- [x] `pezkuwi` (relay chain node) - 146MB ✅
|
||||
- [x] `pezkuwi-teyrchain` (collator) - 263MB ✅
|
||||
- [x] `pezkuwi-zombienet` (network spawn CLI) ✅
|
||||
|
||||
### 1.5 Template Repo'lar
|
||||
- [ ] pez-solochain-template → crates.io dependency
|
||||
- [ ] pez-teyrchain-template → crates.io dependency
|
||||
|
||||
### Hedef:
|
||||
- [x] `cargo check --workspace` başarılı ✅
|
||||
- [x] `cargo clippy --workspace -D warnings` başarılı ✅
|
||||
- [x] `cargo build --release` başarılı ✅
|
||||
|
||||
---
|
||||
|
||||
## FAZ 2: CHAIN-SPEC & GENESIS (IN PROGRESS)
|
||||
|
||||
### 2.1 Chain Spec Dosyaları
|
||||
- [x] pezkuwichain-dev.json (development) ✅ ~3.5MB
|
||||
- [x] asset-hub-pezkuwichain-dev.json (development) ✅ ~3.8MB
|
||||
- [ ] pezkuwichain-local.json (local testnet)
|
||||
- [ ] zagros.json (public testnet)
|
||||
- [ ] pezkuwichain.json (mainnet)
|
||||
- [ ] asset-hub-pezkuwichain.json (mainnet)
|
||||
- [ ] people-pezkuwichain.json (mainnet)
|
||||
|
||||
### 2.1.1 Zombienet Config ✅
|
||||
```toml
|
||||
# /home/mamostehp/pezkuwi-sdk/zombienet-dev.toml
|
||||
[relaychain]
|
||||
default_command = "/home/mamostehp/pezkuwi-sdk/target/release/pezkuwi"
|
||||
chain = "pezkuwichain-dev"
|
||||
|
||||
[[teyrchains]]
|
||||
id = 1000
|
||||
chain = "asset-hub-pezkuwichain-dev"
|
||||
cumulus_based = true
|
||||
```
|
||||
|
||||
### 2.1.2 KRİTİK BULGU: Chain Spec Format Sorunu ⚠️
|
||||
|
||||
**Problem:**
|
||||
Zombienet SDK teyrchain'leri relay chain genesis'ine eklerken (customize_relay → add_parachain_to_genesis),
|
||||
chain spec'in "plain" formatında olması gerekiyor. "Raw" formatta customize edilemiyor.
|
||||
|
||||
**Çözüm Yolları:**
|
||||
1. Chain spec'i "plain" formatında generate et, zombienet raw'a çevirsin
|
||||
2. Genesis preset'te teyrchain önceden kayıtlı olsun
|
||||
3. Network çalıştıktan sonra sudo ile manuel register
|
||||
|
||||
**İlgili Kod:**
|
||||
- `vendor/pezkuwi-zombienet-sdk/crates/orchestrator/src/generators/chain_spec.rs:1040-1079`
|
||||
- `customize_relay()` satır 801 - paras ekleme mantığı
|
||||
|
||||
### 2.2 Genesis Konfigürasyonu
|
||||
|
||||
#### Relay Chain (HEZ):
|
||||
```
|
||||
- Sudo account: [BELIRLENECEK]
|
||||
- Validators (initial): 21 accounts
|
||||
- Staking: DOT parametreleri
|
||||
- Inflation: DOT modeli
|
||||
```
|
||||
|
||||
#### Asset Hub (PEZ):
|
||||
```
|
||||
- Total Supply: 5,000,000,000 PEZ
|
||||
- Presale Allocation: [MIKTAR]
|
||||
- Founder Allocation: [MIKTAR]
|
||||
- Team Allocation: [MIKTAR]
|
||||
- Treasury: [MIKTAR]
|
||||
- Synthetic Halving: [SCHEDULE]
|
||||
```
|
||||
|
||||
### 2.3 Account Listesi
|
||||
- [ ] Validator accounts (21 adet)
|
||||
- [ ] Sudo/Root account
|
||||
- [ ] Treasury account
|
||||
- [ ] Presale wallets
|
||||
- [ ] Founder wallets
|
||||
- [ ] Team wallets
|
||||
|
||||
### Hedef:
|
||||
- Tüm chain-spec'ler hazır
|
||||
- Genesis balances finalize
|
||||
|
||||
---
|
||||
|
||||
## FAZ 3: NETWORK TEST AŞAMALARI (IN PROGRESS)
|
||||
|
||||
### 3.1 DEV (1 Validator - Alice) ✅ TAMAMLANDI
|
||||
**Başarı Kriterleri:**
|
||||
- [x] Relay chain başlar ✅ (zombienet spawn 17 saniyede up)
|
||||
- [x] Bloklar üretilir ✅ (Block #2000+ gözlemlendi)
|
||||
- [x] Finalize olur ✅ (GRANDPA çalışıyor)
|
||||
- [x] Asset Hub collator relay'e bağlanır ✅ (1 peer)
|
||||
- [x] Asset Hub teyrchain blok üretir ✅ (Block #2000+)
|
||||
- [x] Teyrchain genesis registration ✅
|
||||
- [ ] People Chain teyrchain başlar (Bu faz için gerekli değil)
|
||||
- [ ] Cross-chain mesajlaşma çalışır (XCM testi - beklemede)
|
||||
- [x] HEZ transfer ✅ (pezkuwi-subxt ile başarılı - 2026-01-02)
|
||||
- [x] PEZ transfer ✅ (pezkuwi-subxt ile test edilecek)
|
||||
|
||||
#### DEV FAZ SORUN ANALİZİ VE ÇÖZÜM (2026-01-02):
|
||||
|
||||
**SORUN:**
|
||||
Teyrchain (para 1000) genesis'te kayıtlı olmasına rağmen aktifleşmiyordu.
|
||||
Collator loglarında `best: #0, finalized #0, 0 peers` görülüyordu.
|
||||
|
||||
**KÖK NEDEN:**
|
||||
1. `ParaGenesisArgs` format uyumsuzluğu: Zombienet SDK teyrchain verilerini
|
||||
`[para_id, [genesis_head, validation_code, is_teyrchain]]` array formatında ekliyordu
|
||||
2. Ancak runtime bekleyen format: `[para_id, {genesis_head, validation_code, teyrchain}]` object formatı
|
||||
3. Bu nedenle genesis build fonksiyonu (`initialize_para_now`) doğru çalışmıyordu
|
||||
|
||||
**ÇÖZÜM:**
|
||||
Zombienet SDK'daki `add_parachain_to_genesis()` fonksiyonu düzeltildi:
|
||||
- Array format yerine object format kullanıldı
|
||||
- `validation_code`, `genesis_head`, `teyrchain` alanları doğru şekilde serialize edildi
|
||||
- Chain spec "plain" formatında generate edilip zombienet'in raw'a çevirmesi sağlandı
|
||||
|
||||
**İlgili Dosya:**
|
||||
`vendor/pezkuwi-zombienet-sdk/crates/orchestrator/src/generators/chain_spec.rs`
|
||||
|
||||
**SONUÇ:**
|
||||
- Relay chain: Block #2000+ ✅
|
||||
- Asset Hub teyrchain: Block #2000+ ✅
|
||||
- Her iki chain senkronize çalışıyor ✅
|
||||
- 1 peer bağlantısı aktif ✅
|
||||
|
||||
**TOKEN TRANSFER BAŞARILI (2026-01-02):**
|
||||
```
|
||||
Test: cargo run --release -p pezkuwi-subxt --example tx_pezkuwichain
|
||||
|
||||
✓ Connected to Pezkuwichain node
|
||||
✓ Transaction finalized!
|
||||
✓ Transfer event: 1,000,000,000,000 TYR (1 HEZ) Alice → Bob
|
||||
```
|
||||
|
||||
Polkadot.js API yerine **pezkuwi-subxt** kullanıldı ve başarılı oldu.
|
||||
Test dosyası: `vendor/pezkuwi-subxt/subxt/examples/tx_pezkuwichain.rs`
|
||||
|
||||
### 3.2 LOCAL (2 Validator - Alice + Bob) ✅ TAMAMLANDI
|
||||
**Başarı Kriterleri:**
|
||||
- [x] Peer discovery çalışır ✅ (her node 2 peer)
|
||||
- [x] Consensus çalışır ✅ (Alice + Bob senkronize)
|
||||
- [x] Teyrchain blok üretimi çalışır ✅ (Asset Hub block #59+)
|
||||
- [x] GRANDPA finality çalışır ✅
|
||||
|
||||
#### LOCAL FAZ SONUÇLARI (2026-01-02):
|
||||
|
||||
**Zombienet Config:**
|
||||
```toml
|
||||
# /home/mamostehp/pezkuwi-sdk/zombienet-local.toml
|
||||
[relaychain]
|
||||
chain = "pezkuwichain-local"
|
||||
default_args = ["-lteyrchain=debug", "--unsafe-force-node-key-generation"]
|
||||
|
||||
[[relaychain.nodes]]
|
||||
name = "alice"
|
||||
validator = true
|
||||
rpc_port = 9944
|
||||
|
||||
[[relaychain.nodes]]
|
||||
name = "bob"
|
||||
validator = true
|
||||
rpc_port = 9946
|
||||
|
||||
[[teyrchains]]
|
||||
id = 1000
|
||||
chain = "asset-hub-pezkuwichain-local"
|
||||
add_to_genesis = true
|
||||
```
|
||||
|
||||
**Test Sonuçları:**
|
||||
```
|
||||
Network Spawn: 27.97 saniyede UP
|
||||
|
||||
Node Durumları (block #59):
|
||||
├── Alice (9944): 2 peers ✅
|
||||
├── Bob (9946): 2 peers ✅
|
||||
└── Asset Hub (9945): 2 peers ✅
|
||||
|
||||
Senkronizasyon: Tüm node'lar aynı blok numarasında ✅
|
||||
```
|
||||
|
||||
**Önemli Notlar:**
|
||||
- DEV fazından farklı olarak 2 validator consensus gerektiriyor
|
||||
- Alice ve Bob birbirini buluyor (peer discovery çalışıyor)
|
||||
- Asset Hub collator her iki relay node'a bağlanıyor
|
||||
- Teyrchain genesis registration DEV fazındaki fix ile çalışıyor
|
||||
|
||||
### 3.3 ALPHA (4 Validator)
|
||||
**Başarı Kriterleri:**
|
||||
- [ ] Uzak node'lar bağlanır
|
||||
- [ ] Telemetry çalışır
|
||||
- [ ] RPC endpoints aktif
|
||||
|
||||
### 3.4 BETA (8 Validator)
|
||||
**Başarı Kriterleri:**
|
||||
- [ ] Stress test geçer
|
||||
- [ ] Explorer entegrasyonu
|
||||
- [ ] Faucet çalışır
|
||||
- [ ] Wallet entegrasyonu
|
||||
|
||||
### 3.5 STAGING (21 Validator)
|
||||
**Başarı Kriterleri:**
|
||||
- [ ] Mainnet konfigürasyonu ile çalışır
|
||||
- [ ] 7 gün kesintisiz çalışma
|
||||
- [ ] Runtime upgrade testi
|
||||
- [ ] Governance testi
|
||||
|
||||
### Hedef:
|
||||
- Her aşama %100 geçmeden sonrakine geçilmez
|
||||
- Tüm bug'lar kalıcı olarak çözülür
|
||||
|
||||
---
|
||||
|
||||
## FAZ 4: MAINNET HAZIRLIK & LANÇ
|
||||
|
||||
### 4.1 Final Checklist
|
||||
- [ ] Tüm chain-spec'ler finalize
|
||||
- [ ] Genesis balances onaylandı
|
||||
- [ ] Validator operatörleri hazır
|
||||
- [ ] Monitoring kuruldu
|
||||
- [ ] Backup/Recovery planı var
|
||||
- [ ] Incident response planı var
|
||||
|
||||
### 4.2 Launch Sequence
|
||||
1. Genesis block oluştur
|
||||
2. Validators başlat (koordineli)
|
||||
3. Teyrchain'leri kaydet
|
||||
4. Collator'ları başlat
|
||||
5. Public RPC aç
|
||||
6. Explorer aktif et
|
||||
7. Duyuru
|
||||
|
||||
### Hedef:
|
||||
- MAINNET LIVE!
|
||||
|
||||
---
|
||||
|
||||
## İLERLEME TAKİBİ
|
||||
|
||||
| Faz | Durum | İlerleme |
|
||||
|-----|-------|----------|
|
||||
| FAZ 0 | ✅ TAMAMLANDI | %100 |
|
||||
| FAZ 1 | ✅ TAMAMLANDI | %100 |
|
||||
| FAZ 2 | ✅ TAMAMLANDI | %100 (chain-spec ✅, genesis config ✅) |
|
||||
| FAZ 3 | 🔄 IN PROGRESS | %50 (DEV ✅, LOCAL ✅, Token Transfer ✅, ALPHA beklemede) |
|
||||
| FAZ 5 | ✅ TAMAMLANDI | %100 (NPM paketleri ✅, pwap migration ✅) |
|
||||
| FAZ 6 | PENDING | %0 (VPS testnet) |
|
||||
| FAZ 7 | ✅ TAMAMLANDI | %100 (JS/TS ecosystem rebrand ✅) |
|
||||
| FAZ 8 | ✅ TAMAMLANDI | %100 (Kusama → Dicle rebrand + cargo check ✅) |
|
||||
| FAZ 4 | PENDING | %0 (Mainnet lansman) |
|
||||
| **TOPLAM** | - | **~%83** |
|
||||
|
||||
---
|
||||
|
||||
## DEĞİŞİKLİK GEÇMİŞİ
|
||||
|
||||
| Tarih | Değişiklik |
|
||||
|-------|------------|
|
||||
| 2026-01-01 | İlk versiyon oluşturuldu |
|
||||
| 2026-01-02 | FAZ 1 tamamlandı - workspace derlemesi başarılı, warning cleanup yapıldı |
|
||||
| 2026-01-02 | Binary build'ler tamamlandı (pezkuwi, pezkuwi-teyrchain, pezkuwi-zombienet) |
|
||||
| 2026-01-02 | DEV chain-spec'ler oluşturuldu (pezkuwichain-dev, asset-hub-pezkuwichain-dev) |
|
||||
| 2026-01-02 | pezkuwi-zombienet CLI build edildi ve vendor'a entegre edildi |
|
||||
| 2026-01-02 | DEV relay chain başarıyla çalışıyor (blok üretimi + finality) |
|
||||
| 2026-01-02 | KRİTİK: Teyrchain registration sorunu tespit edildi (chain spec format) |
|
||||
| 2026-01-02 | **DEV FAZ TAMAMLANDI** - Teyrchain genesis registration çözüldü |
|
||||
| 2026-01-02 | ParaGenesisArgs format sorunu düzeltildi (array → object) |
|
||||
| 2026-01-02 | Asset Hub teyrchain block #2000+ üretiyor |
|
||||
| 2026-01-02 | Token transfer: Polkadot.js API uyumsuzluğu tespit edildi (PAPI gerekli) |
|
||||
| 2026-01-02 | **LOCAL FAZ TAMAMLANDI** - 2 validator (Alice + Bob) başarıyla çalışıyor |
|
||||
| 2026-01-02 | Peer discovery doğrulandı - her node 2 peer ile bağlantılı |
|
||||
| 2026-01-02 | Multi-validator consensus (BABE + GRANDPA) çalışıyor |
|
||||
| 2026-01-02 | zombienet-local.toml config dosyası oluşturuldu |
|
||||
| 2026-01-02 | **TOKEN TRANSFER BAŞARILI** - pezkuwi-subxt ile HEZ transfer test edildi |
|
||||
| 2026-01-02 | tx_pezkuwichain.rs örneği oluşturuldu (vendor/pezkuwi-subxt/subxt/examples/) |
|
||||
| 2026-01-02 | SessionStart hook sistemi kuruldu (context persistence) |
|
||||
| 2026-01-02 | PROJECT_STATE.md ve SESSION_LOG.md oluşturuldu |
|
||||
| 2026-01-05 | **FAZ 5 BAŞLADI** - NPM packages ve pwap ecosystem migration |
|
||||
| 2026-01-05 | pezkuwi-common tüm paketleri NPM'e yayınlandı (20 paket @ 14.0.5) |
|
||||
| 2026-01-05 | pezkuwi-api paketlerinden 2 tanesi yayınlandı (types-support, types-codec @ 16.5.5) |
|
||||
| 2026-01-05 | NPM rate limit sorunu tespit edildi (E429 - günlük publish limiti) |
|
||||
| 2026-01-05 | NPM Pro hesabına geçildi (bypass authentication token) |
|
||||
| 2026-01-05 | pwap migration tamamlandı (59 package.json + 1510 kaynak dosya) |
|
||||
| 2026-01-05 | Kalan 13 API paketi yarın yayınlanacak (rate limit sıfırlanması bekleniyor) |
|
||||
| 2026-01-07 | **JS/TS ECOSYSTEM REBRAND TAMAMLANDI** - 5 repo başarıyla build edildi |
|
||||
| 2026-01-07 | pezkuwi-api: NPM'e yayınlandı (@pezkuwi/api@16.5.6) |
|
||||
| 2026-01-07 | pezkuwi-extension: Build başarılı, Chrome+Firefox extension ready |
|
||||
| 2026-01-07 | pezkuwi-common: NPM'e yayınlandı (@pezkuwi/util@14.0.7) |
|
||||
| 2026-01-07 | pezkuwi-ui: Build başarılı, UI components ready |
|
||||
| 2026-01-07 | pwap/web: @pezkuwi paketleriyle build başarılı |
|
||||
| 2026-01-07 | GitHub Actions düzeltildi (Lock Threads + Build workflows) |
|
||||
| 2026-01-07 | README'ler güncellendi (Dijital Kurdistan Tech Institute branding) |
|
||||
| 2026-01-07 | **FAZ 8 TAMAMLANDI** - Kusama → Dicle rebrand yapıldı |
|
||||
| 2026-01-07 | `cargo check --workspace` başarılı - Finished çıktısı alındı ✅ |
|
||||
| 2026-01-08 | **CI WORKFLOW DÜZELTMELERİ** |
|
||||
| 2026-01-08 | checks.yml: check-try-runtime job'una SKIP_WASM_BUILD=1 eklendi |
|
||||
| 2026-01-08 | checks.yml: check-core-crypto-features geçici disable (serde wasm32 issue #355) |
|
||||
| 2026-01-08 | lightclient/Cargo.toml: std feature'ına native eklendi |
|
||||
| 2026-01-08 | getting-started.sh: PEZKUWI_TEMPLATE_SOURCE env var desteği eklendi |
|
||||
| 2026-01-08 | check-getting-started.yml: Lokal template + workspace build kullanımı |
|
||||
| 2026-01-08 | Tüm CI komutları lokal test edildi ve geçti ✅ |
|
||||
|
||||
---
|
||||
|
||||
## FAZ 7: JS/TS ECOSYSTEM REBRAND ✅ TAMAMLANDI (2026-01-07)
|
||||
|
||||
### 7.1 Rebrand Edilen Repolar
|
||||
|
||||
| Repo | Build | NPM | GitHub Actions | README |
|
||||
|------|-------|-----|----------------|--------|
|
||||
| pezkuwi-api | ✅ | ✅ @16.5.6 | ✅ Lock Threads | ✅ |
|
||||
| pezkuwi-common | ✅ | ✅ @14.0.7 | ✅ Lock Threads | ✅ |
|
||||
| pezkuwi-extension | ✅ | - | ✅ Lock + Build | ✅ |
|
||||
| pezkuwi-ui | ✅ | - | ✅ Lock + Build | ✅ |
|
||||
| pwap | ✅ | - | ✅ Quality Gate | ✅ |
|
||||
|
||||
### 7.2 NPM Paket Durumu
|
||||
|
||||
**@pezkuwi/api ecosystem (16.5.6):**
|
||||
```
|
||||
@pezkuwi/api, @pezkuwi/api-augment, @pezkuwi/api-base, @pezkuwi/api-derive,
|
||||
@pezkuwi/rpc-augment, @pezkuwi/rpc-core, @pezkuwi/rpc-provider,
|
||||
@pezkuwi/types, @pezkuwi/types-augment, @pezkuwi/types-codec,
|
||||
@pezkuwi/types-create, @pezkuwi/types-known, @pezkuwi/types-support
|
||||
```
|
||||
|
||||
**@pezkuwi/common ecosystem (14.0.7):**
|
||||
```
|
||||
@pezkuwi/keyring, @pezkuwi/util, @pezkuwi/util-crypto, @pezkuwi/networks,
|
||||
@pezkuwi/hw-ledger, @pezkuwi/hw-ledger-transports,
|
||||
@pezkuwi/x-bigint, @pezkuwi/x-fetch, @pezkuwi/x-global,
|
||||
@pezkuwi/x-randomvalues, @pezkuwi/x-textdecoder, @pezkuwi/x-textencoder, @pezkuwi/x-ws
|
||||
```
|
||||
|
||||
**@pezkuwi/extension ecosystem (0.62.11):**
|
||||
```
|
||||
@pezkuwi/extension-dapp, @pezkuwi/extension-inject
|
||||
```
|
||||
|
||||
**@pezkuwi/ui ecosystem (3.16.8):**
|
||||
```
|
||||
@pezkuwi/react-identicon, @pezkuwi/react-qr, @pezkuwi/reactnative-identicon,
|
||||
@pezkuwi/vue-identicon, @pezkuwi/ui-keyring, @pezkuwi/ui-settings, @pezkuwi/ui-shared
|
||||
```
|
||||
|
||||
### 7.3 Workflow Düzeltmeleri
|
||||
|
||||
**Tüm repolarda yapılan düzeltmeler:**
|
||||
- `lock.yml`: `secrets.GH_PAT_BOT` → `github.token` + `workflow_dispatch` trigger
|
||||
- `push-master.yml` → `push-main.yml`: `main` branch'e geçiş
|
||||
- README.md: "Dijital Kurdistan Tech Institute" branding + pezkuwichain.io domain'leri
|
||||
|
||||
### 7.4 pwap/web Build Düzeltmeleri
|
||||
|
||||
**Yapılan değişiklikler:**
|
||||
1. `package.json`: @pezkuwi dependencies güncellendi
|
||||
2. `npm overrides`: Dependency version mismatch'ler düzeltildi
|
||||
3. `vite.config.ts`: `@pezkuwi/types` alias → `@local/types` (npm paketi ile çakışmayı önlemek için)
|
||||
4. `shared/utils/dex.ts`: Import path güncellendi
|
||||
|
||||
**Build sonucu:** ✅ 3471 modules transformed, 12.11s
|
||||
|
||||
### 7.5 Repo Konumları
|
||||
|
||||
```
|
||||
/home/mamostehp/pezkuwi-api/ # @pezkuwi/api packages
|
||||
/home/mamostehp/pezkuwi-common/ # @pezkuwi/util, keyring, crypto
|
||||
/home/mamostehp/pezkuwi-extension/ # Browser extension
|
||||
/home/mamostehp/pezkuwi-ui/ # React/Vue identicons, QR
|
||||
/home/mamostehp/pwap/ # Web + Mobile wallet apps
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## FAZ 8: KUSAMA → DICLE REBRAND ✅ TAMAMLANDI (2026-01-07)
|
||||
|
||||
### 8.1 Kapsam
|
||||
|
||||
pezkuwi-sdk içindeki tüm "kusama/Kusama" referanslarının "dicle/Dicle" olarak değiştirilmesi.
|
||||
|
||||
**Terminoloji:**
|
||||
- kusama → dicle
|
||||
- Kusama → Dicle
|
||||
|
||||
### 8.2 Etkilenen Alanlar
|
||||
- vendor/pezkuwi-subxt/ (metadata, tests)
|
||||
- vendor/pezkuwi-zombienet-sdk/ (configuration)
|
||||
- bizinikiwi/ (client, pezframe, primitives)
|
||||
- pezkuwi/ (runtime weights, documentation)
|
||||
- Test dosyaları ve benchmark'lar
|
||||
|
||||
### 8.3 Durum
|
||||
✅ **TAMAMLANDI** (2026-01-07)
|
||||
- Tüm kusama → dicle rebrand'i yapıldı
|
||||
- `cargo check --workspace` başarılı ✅ (Finished çıktısı alındı)
|
||||
|
||||
---
|
||||
|
||||
## ÖNEMLİ BİLGİLER - SONRAKİ CLAUDE İÇİN
|
||||
|
||||
### Mevcut Network Durumu (2026-01-02)
|
||||
**DEV ve LOCAL fazları tamamlandı:**
|
||||
- Relay chain: ÇALIŞIYOR ✅ (2 validator consensus)
|
||||
- Asset Hub teyrchain: ÇALIŞIYOR ✅ (block üretimi + finality)
|
||||
- Peer discovery: ÇALIŞIYOR ✅ (her node 2 peer)
|
||||
- Teyrchain genesis registration: ÇÖZÜLDÜ ✅
|
||||
|
||||
### Çözülen Kritik Sorun
|
||||
**ParaGenesisArgs format uyumsuzluğu:**
|
||||
- Zombienet SDK array format kullanıyordu: `[genesis_head, validation_code, is_teyrchain]`
|
||||
- Runtime object format bekliyordu: `{genesis_head, validation_code, teyrchain}`
|
||||
- Düzeltme: `vendor/pezkuwi-zombienet-sdk/crates/orchestrator/src/generators/chain_spec.rs`
|
||||
|
||||
### Bekleyen Sorun
|
||||
**Polkadot.js API Uyumsuzluğu:**
|
||||
- Rebrand edilmiş metadata ile type mismatch
|
||||
- Hata: "Expected 32 bytes, found 48 bytes" (AccountId)
|
||||
- Çözüm: PAPI veya custom subxt client kullanılmalı
|
||||
|
||||
### Dosya Konumları
|
||||
- DEV config: `/home/mamostehp/pezkuwi-sdk/zombienet-dev.toml`
|
||||
- LOCAL config: `/home/mamostehp/pezkuwi-sdk/zombienet-local.toml`
|
||||
- pezkuwi binary: `/home/mamostehp/pezkuwi-sdk/target/release/pezkuwi`
|
||||
- pezkuwi-teyrchain binary: `/home/mamostehp/pezkuwi-sdk/target/release/pezkuwi-teyrchain`
|
||||
- pezkuwi-zombienet binary: `/home/mamostehp/pezkuwi-sdk/target/release/pezkuwi-zombienet`
|
||||
- Chain spec kaynak: `pezkuwi/runtime/pezkuwichain/src/genesis_config_presets.rs`
|
||||
|
||||
### Spawn Komutları
|
||||
```bash
|
||||
cd /home/mamostehp/pezkuwi-sdk
|
||||
|
||||
# DEV (1 validator)
|
||||
./target/release/pezkuwi-zombienet spawn -p native zombienet-dev.toml
|
||||
|
||||
# LOCAL (2 validator)
|
||||
./target/release/pezkuwi-zombienet spawn -p native zombienet-local.toml
|
||||
```
|
||||
|
||||
### Sonraki Adım: ALPHA (4 Validator)
|
||||
- 4 validator konfigürasyonu gerekli
|
||||
- Uzak node bağlantısı test edilecek
|
||||
- Telemetry aktif edilecek
|
||||
- RPC endpoints test edilecek
|
||||
|
||||
---
|
||||
|
||||
*Bu plan canlı döküman olarak güncellenecektir.*
|
||||
@@ -1,201 +0,0 @@
|
||||
# PEZKUWI SDK - PROJECT STATE
|
||||
|
||||
**Son Güncelleme:** 2026-01-02
|
||||
**Bu dosya SessionStart hook tarafından otomatik okunur**
|
||||
|
||||
---
|
||||
|
||||
## PROJE NEDİR
|
||||
|
||||
Pezkuwi SDK, Polkadot SDK'nın tamamen rebrand edilmiş BAĞIMSIZ bir fork'udur.
|
||||
- Polkadot ile artık HİÇBİR ilişkisi yoktur
|
||||
- Tüm crate'ler crates.io'da yayınlanmıştır (~516 crate)
|
||||
- Kendi token ekonomisi vardır (HEZ + PEZ)
|
||||
|
||||
---
|
||||
|
||||
## KRİTİK KURALLAR - MUTLAKA OKU
|
||||
|
||||
1. **ASLA Polkadot.js API önerme** - Rebrand nedeniyle çalışmıyor
|
||||
2. **ASLA rebrand'i geri alma** - Terminoloji kalıcı
|
||||
3. **ASLA geçici çözüm önerme** - Kalıcı çözümler bul
|
||||
4. **ÖNCE mevcut araçları kontrol et** - Aşağıdaki listeye bak
|
||||
|
||||
---
|
||||
|
||||
## MEVCUT ARAÇLAR (ZATEN MEVCUT - YENİDEN YAZMA)
|
||||
|
||||
### 1. pezkuwi-subxt (Token Transfer, RPC)
|
||||
```
|
||||
Konum: /home/mamostehp/pezkuwi-sdk/vendor/pezkuwi-subxt/
|
||||
Durum: TAMAMLANDI - Kullanıma hazır
|
||||
Kullanım: Token transfer, chain query, extrinsic submit
|
||||
```
|
||||
**Polkadot.js yerine BUNU KULLAN!**
|
||||
|
||||
### 2. pezkuwi-zombienet-sdk (Network Orchestration)
|
||||
```
|
||||
Konum: /home/mamostehp/pezkuwi-sdk/vendor/pezkuwi-zombienet-sdk/
|
||||
Binary: /home/mamostehp/pezkuwi-sdk/target/release/pezkuwi-zombienet
|
||||
Durum: TAMAMLANDI - ParaGenesisArgs fix uygulandı
|
||||
```
|
||||
|
||||
### 3. pezkuwi (Relay Chain Node)
|
||||
```
|
||||
Binary: /home/mamostehp/pezkuwi-sdk/target/release/pezkuwi
|
||||
Durum: TAMAMLANDI - Build edildi
|
||||
```
|
||||
|
||||
### 4. pezkuwi-teyrchain (Collator)
|
||||
```
|
||||
Binary: /home/mamostehp/pezkuwi-sdk/target/release/pezkuwi-teyrchain
|
||||
Durum: TAMAMLANDI - Build edildi
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## CI/CD ALTYAPISI (GitHub Actions Self-Hosted Runners)
|
||||
|
||||
| VPS | IP | CPU | RAM | Runner Sayısı |
|
||||
|-----|-----|-----|-----|---------------|
|
||||
| VPS1 | 37.60.230.9 | 8 | 23GB | 3 |
|
||||
| VPS2 | 62.146.235.186 | 16 | 62GB | 7 |
|
||||
| VPS3 | 217.77.6.126 | 18 | 94GB | 10 |
|
||||
| VPS-NEW-1 | 217.77.15.51 | 4 | 8GB | 1 |
|
||||
| VPS-NEW-2 | 161.97.183.44 | 4 | 8GB | 1 |
|
||||
| VPS-NEW-3 | 161.97.185.100 | 4 | 8GB | 1 |
|
||||
| **TOPLAM** | - | **54** | **203GB** | **23** |
|
||||
|
||||
### SSH Erişimi
|
||||
```bash
|
||||
ssh root@37.60.230.9 # VPS1
|
||||
ssh root@62.146.235.186 # VPS2
|
||||
ssh root@217.77.6.126 # VPS3
|
||||
ssh root@217.77.15.51 # VPS-NEW-1 (şifre: SqM210305yBkBnm90)
|
||||
ssh root@161.97.183.44 # VPS-NEW-2 (şifre: SqM210305yBkBnm90)
|
||||
ssh root@161.97.185.100 # VPS-NEW-3 (şifre: SqM210305yBkBnm90)
|
||||
```
|
||||
|
||||
### Notlar
|
||||
- VPS1'de production servisleri de çalışıyor (ai-lawyer, safechild, naturel-bot)
|
||||
- Runner versiyon: v2.321.0 (yeni VPS'ler)
|
||||
- Docker network pool dolunca VPS reboot gerekebilir
|
||||
- Yeni VPS'ler 2026-01-27 tarihinde eklendi
|
||||
|
||||
---
|
||||
|
||||
## TERMİNOLOJİ (ASLA ESKİ TERİMLERİ KULLANMA)
|
||||
|
||||
| ESKİ (KULLANMA) | YENİ (KULLAN) |
|
||||
|-----------------|---------------|
|
||||
| parachain | teyrchain |
|
||||
| Polkadot | Pezkuwi |
|
||||
| polkadot | pezkuwi |
|
||||
| Substrate | Bizinikiwi |
|
||||
| substrate | bizinikiwi |
|
||||
| Cumulus | Pezcumulus |
|
||||
| Westend | Zagros |
|
||||
| Rococo | Pezkuwichain |
|
||||
| paritytech | pezkuwichain |
|
||||
| sp- | pezsp- |
|
||||
| sc- | pezsc- |
|
||||
| frame- | pezframe- |
|
||||
| pallet- | pezpallet- |
|
||||
|
||||
---
|
||||
|
||||
## TOKEN EKONOMİSİ
|
||||
|
||||
### HEZ (Relay Chain Native Token)
|
||||
- Genesis: 200,000,000 HEZ
|
||||
- Model: DOT benzeri inflationary
|
||||
- Unit: 1 HEZ = 10^18 TYR
|
||||
|
||||
### PEZ (Asset Hub Governance Token)
|
||||
- Supply: 5,000,000,000 PEZ (sabit)
|
||||
- Asset ID: 1 (Asset Hub'da)
|
||||
- wHEZ Asset ID: 2
|
||||
|
||||
---
|
||||
|
||||
## MAINNET ROADMAP DURUMU
|
||||
|
||||
| Faz | Durum |
|
||||
|-----|-------|
|
||||
| FAZ 0: Analiz | ✅ TAMAMLANDI |
|
||||
| FAZ 1: Kod | ✅ TAMAMLANDI |
|
||||
| FAZ 2: Chain-spec | ✅ TAMAMLANDI |
|
||||
| FAZ 3: Network Test | 🔄 IN PROGRESS |
|
||||
| FAZ 4: Mainnet | PENDING |
|
||||
|
||||
### FAZ 3 Detay:
|
||||
- DEV (1 validator): ✅ TAMAMLANDI
|
||||
- LOCAL (2 validator): ✅ TAMAMLANDI
|
||||
- ALPHA (4 validator): BEKLEMEDE
|
||||
- BETA (8 validator): BEKLEMEDE
|
||||
- STAGING (21 validator): BEKLEMEDE
|
||||
|
||||
---
|
||||
|
||||
## ÇÖZÜLEN KRİTİK SORUNLAR
|
||||
|
||||
### 1. Teyrchain Genesis Registration (2026-01-02)
|
||||
**Sorun:** Teyrchain block #0'da kalıyordu
|
||||
**Kök Neden:** ParaGenesisArgs format uyumsuzluğu (array vs object)
|
||||
**Çözüm:** `vendor/pezkuwi-zombienet-sdk/crates/orchestrator/src/generators/chain_spec.rs` düzeltildi
|
||||
**Durum:** ÇÖZÜLDÜ
|
||||
|
||||
### 2. Polkadot.js API Uyumsuzluğu → ÇÖZÜLDÜ
|
||||
**Sorun:** "Expected 32 bytes, found 48 bytes" AccountId hatası
|
||||
**Kök Neden:** Rebrand edilmiş metadata type mismatch
|
||||
**Çözüm:** pezkuwi-subxt kullanıldı
|
||||
**Durum:** ✅ ÇÖZÜLDÜ (2026-01-02)
|
||||
|
||||
**Token Transfer Test Sonucu:**
|
||||
```
|
||||
✓ Connected to Pezkuwichain node
|
||||
✓ Transaction finalized!
|
||||
✓ Transfer event: 1,000,000,000,000 TYR (1 HEZ) Alice → Bob
|
||||
```
|
||||
|
||||
**Test Dosyası:** `vendor/pezkuwi-subxt/subxt/examples/tx_pezkuwichain.rs`
|
||||
**Çalıştırma:** `cargo run --release -p pezkuwi-subxt --example tx_pezkuwichain`
|
||||
|
||||
---
|
||||
|
||||
## ZOMBIENET CONFIG DOSYALARI
|
||||
|
||||
```
|
||||
/home/mamostehp/pezkuwi-sdk/zombienet-dev.toml # 1 validator (DEV)
|
||||
/home/mamostehp/pezkuwi-sdk/zombienet-local.toml # 2 validator (LOCAL)
|
||||
```
|
||||
|
||||
### Spawn Komutu:
|
||||
```bash
|
||||
cd /home/mamostehp/pezkuwi-sdk
|
||||
./target/release/pezkuwi-zombienet spawn -p native zombienet-dev.toml
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## KRİTİK DOSYA KONUMLARI
|
||||
|
||||
| Dosya | Konum |
|
||||
|-------|-------|
|
||||
| CLAUDE.md | `/home/mamostehp/pezkuwi-sdk/.claude/CLAUDE.md` |
|
||||
| MAINNET_ROADMAP.md | `/home/mamostehp/pezkuwi-sdk/.claude/MAINNET_ROADMAP.md` |
|
||||
| TERMINOLOGY.md | `/home/mamostehp/pezkuwi-sdk/.claude/TERMINOLOGY.md` |
|
||||
| Genesis presets | `pezkuwi/runtime/pezkuwichain/src/genesis_config_presets.rs` |
|
||||
| Asset Hub presets | `pezcumulus/teyrchains/runtimes/assets/asset-hub-pezkuwichain/src/genesis_config_presets.rs` |
|
||||
|
||||
---
|
||||
|
||||
## SONRAKİ ADIMLAR (ÖNCELİK SIRASI)
|
||||
|
||||
1. **pezkuwi-subxt ile token transfer testi** - API çalışıyor mu doğrula
|
||||
2. **XCM messaging testi** - Relay ↔ Asset Hub iletişimi
|
||||
3. **ALPHA network** - 4 validator konfigürasyonu
|
||||
|
||||
---
|
||||
|
||||
*Bu dosya SessionStart hook tarafından otomatik yüklenir. Güncel tutun!*
|
||||
@@ -1,392 +0,0 @@
|
||||
# PUBLIC TESTNET ROADMAP - Staged Approach
|
||||
|
||||
**Oluşturulma:** 2026-01-24
|
||||
**Son Güncelleme:** 2026-01-24
|
||||
**Durum:** STAGE 1 - Internal Testnet (BAŞLAMADI)
|
||||
|
||||
---
|
||||
|
||||
## 🎯 HEDEF
|
||||
|
||||
21 validator + 4 collator ile public testnet başlatmak.
|
||||
|
||||
**Yaklaşım:** Staged Approach
|
||||
1. STAGE 1: Internal Testnet (bizim VPS'ler)
|
||||
2. STAGE 2: Public RPC
|
||||
3. STAGE 3: Community Validators
|
||||
|
||||
---
|
||||
|
||||
## 📚 ÖNCEKİ OTURUMLARDAN ÖĞRENMELER (KRİTİK!)
|
||||
|
||||
### 1. Ed25519 vs Sr25519 Key Scheme Sorunu (ÇÖZÜLDÜ ✅)
|
||||
|
||||
**Problem:** `asset-hub-pezkuwichain-local` yanlışlıkla Ed25519 kullanıyordu.
|
||||
|
||||
**Kök Neden:** Prefix matching hatası:
|
||||
```rust
|
||||
// HATALI: "asset-hub-pezkuwichain".starts_with("asset-hub-pezkuwi") = TRUE!
|
||||
if id.starts_with("asset-hub-pezkuwi") { Ed25519 }
|
||||
else if id.starts_with("asset-hub-pezkuwichain") { Sr25519 } // Hiç çalışmıyordu!
|
||||
```
|
||||
|
||||
**Çözüm:** Uzun prefix'i ÖNCE kontrol et:
|
||||
```rust
|
||||
// DOĞRU: Önce uzun prefix
|
||||
if id.starts_with("asset-hub-pezkuwichain") { Sr25519 }
|
||||
else if id.starts_with("asset-hub-pezkuwi") { Ed25519 }
|
||||
```
|
||||
|
||||
**Düzeltilen Dosyalar:**
|
||||
- `pezcumulus/pezkuwi-teyrchain/src/chain_spec/mod.rs` - RuntimeResolver
|
||||
- `vendor/pezkuwi-zombienet-sdk/crates/orchestrator/src/generators/chain_spec.rs`
|
||||
- `vendor/pezkuwi-zombienet-sdk/crates/orchestrator/src/spawner.rs`
|
||||
|
||||
**Commit:** `f52eb30abb` - "fix: correct Ed25519/Sr25519 key scheme detection for Asset Hub"
|
||||
|
||||
### 2. Zombienet Metric Timeout Sorunu
|
||||
|
||||
**Problem:** Network 80 saniye sonra kapanıyor.
|
||||
```
|
||||
🧟 One of the nodes crashed: alice: Timeout (5), waiting for metric process_start_time_seconds
|
||||
```
|
||||
|
||||
**Sebep:** Zombienet health check timeout'u - node'lardan metric alamıyor.
|
||||
|
||||
**ÖNEMLİ:** Bu bir network/consensus sorunu DEĞİL! Network çalışıyor, sadece monitoring timeout yapıyor.
|
||||
|
||||
**Çözüm Seçenekleri:**
|
||||
1. Zombienet timeout değerlerini artır
|
||||
2. Systemd service ile deployment (zombienet yerine)
|
||||
3. Metric endpoint'lerini düzelt
|
||||
|
||||
### 3. VPS Build Sorunları
|
||||
|
||||
**Problem:** VPS2'de `serde_core` wasm build hatası.
|
||||
```
|
||||
error[E0152]: duplicate lang item in crate `alloc`: `exchange_malloc`
|
||||
```
|
||||
|
||||
**Geçici Çözüm:** Local'de build edip binary'leri kopyala.
|
||||
```bash
|
||||
scp /home/mamostehp/pezkuwi-sdk/target/release/pezkuwi* root@VPS_IP:/root/pezkuwi-sdk/target/release/
|
||||
```
|
||||
|
||||
**Kalıcı Çözüm:** Rust toolchain versiyonlarını senkronize et.
|
||||
|
||||
### 4. Config Path Sorunu
|
||||
|
||||
**Problem:** `zombienet-local-21.toml` içinde hardcoded path'ler var.
|
||||
```toml
|
||||
# YANLIŞ (local machine):
|
||||
default_command = "/home/mamostehp/pezkuwi-sdk/target/release/pezkuwi"
|
||||
|
||||
# DOĞRU (VPS):
|
||||
default_command = "/root/pezkuwi-sdk/target/release/pezkuwi"
|
||||
```
|
||||
|
||||
**Çözüm:** Her VPS için path'leri düzelt veya relative path kullan.
|
||||
|
||||
---
|
||||
|
||||
## 🖥️ VPS KAPASİTELERİ
|
||||
|
||||
| | VPS1 | VPS2 |
|
||||
|---|------|------|
|
||||
| **IP** | 37.60.230.9 | 62.146.235.186 |
|
||||
| **Hostname** | - | merkez-server |
|
||||
| **CPU** | 8 core | 16 core |
|
||||
| **RAM** | 23 GB | 62 GB |
|
||||
| **Disk** | 193 GB (115 GB boş) | 581 GB (520 GB boş) |
|
||||
| **SSH** | `ssh root@37.60.230.9` | `ssh root@62.146.235.186` |
|
||||
|
||||
### Önerilen Node Dağılımı
|
||||
|
||||
| VPS | Validators | Asset Hub Collators | People Chain Collators |
|
||||
|-----|------------|---------------------|------------------------|
|
||||
| VPS1 | 7 | 1 | 1 |
|
||||
| VPS2 | 14 | 1 | 1 |
|
||||
| **TOPLAM** | **21** | **2** | **2** |
|
||||
|
||||
---
|
||||
|
||||
## 📋 STAGE 1: Internal Testnet
|
||||
|
||||
### Ön Koşullar
|
||||
- [x] Ed25519/Sr25519 fix commit edildi
|
||||
- [x] 21 validator ile local test geçti
|
||||
- [x] VPS kapasiteleri kontrol edildi
|
||||
- [ ] Binary'ler VPS'lere deploy edildi
|
||||
|
||||
### 1.1 Validator Key Oluşturma
|
||||
**Durum:** ❌ BAŞLAMADI
|
||||
|
||||
**Görevler:**
|
||||
- [ ] 21 validator için Sr25519 session key oluştur
|
||||
- [ ] Key'leri güvenli şekilde sakla
|
||||
- [ ] Her validator için ayrı keystore dizini
|
||||
|
||||
**Komutlar:**
|
||||
```bash
|
||||
# Session key oluştur
|
||||
./target/release/pezkuwi key generate --scheme Sr25519 --output-type json
|
||||
|
||||
# Veya subkey ile
|
||||
./target/release/pez-subkey generate --scheme Sr25519
|
||||
```
|
||||
|
||||
**Dosyalar:**
|
||||
- `mainnet/keys/validators-21-session-keys.json` (GİTİGNORE'DA!)
|
||||
|
||||
### 1.2 Chain Spec Oluşturma
|
||||
**Durum:** ❌ BAŞLAMADI
|
||||
|
||||
**Görevler:**
|
||||
- [ ] Testnet chain spec adı belirle (`zagros` veya `pezkuwichain-testnet`)
|
||||
- [ ] Genesis config'i düzenle (validator listesi)
|
||||
- [ ] Raw chain spec oluştur
|
||||
|
||||
**Komutlar:**
|
||||
```bash
|
||||
# Plain chain spec
|
||||
./target/release/pezkuwi build-spec --chain pezkuwichain-local --disable-default-bootnode > testnet-plain.json
|
||||
|
||||
# Validator'ları ekle (genesis config düzenle)
|
||||
|
||||
# Raw chain spec
|
||||
./target/release/pezkuwi build-spec --chain testnet-plain.json --raw > testnet-raw.json
|
||||
```
|
||||
|
||||
### 1.3 Systemd Service Dosyaları
|
||||
**Durum:** ❌ BAŞLAMADI
|
||||
|
||||
**Görevler:**
|
||||
- [ ] Validator service template oluştur
|
||||
- [ ] Collator service template oluştur
|
||||
- [ ] Her VPS için service dosyalarını deploy et
|
||||
|
||||
**Template:** `/etc/systemd/system/pezkuwi-validator@.service`
|
||||
```ini
|
||||
[Unit]
|
||||
Description=Pezkuwi Validator %i
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=root
|
||||
ExecStart=/root/pezkuwi-sdk/target/release/pezkuwi \
|
||||
--chain /root/pezkuwi-sdk/testnet-raw.json \
|
||||
--name validator-%i \
|
||||
--validator \
|
||||
--base-path /root/pezkuwi-data/validator-%i \
|
||||
--port 3033%i \
|
||||
--rpc-port 994%i \
|
||||
--prometheus-port 961%i \
|
||||
--telemetry-url "wss://telemetry.pezkuwichain.io/submit/ 1"
|
||||
Restart=always
|
||||
RestartSec=10
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
```
|
||||
|
||||
### 1.4 VPS Deployment
|
||||
**Durum:** ❌ BAŞLAMADI
|
||||
|
||||
**VPS1 Görevleri:**
|
||||
- [ ] Binary'leri kopyala
|
||||
- [ ] Chain spec kopyala
|
||||
- [ ] Keystore'ları kopyala (validator 1-7)
|
||||
- [ ] Service dosyalarını kur
|
||||
- [ ] Validator'ları başlat
|
||||
- [ ] Collator'ları başlat
|
||||
|
||||
**VPS2 Görevleri:**
|
||||
- [ ] Binary'leri kopyala
|
||||
- [ ] Chain spec kopyala
|
||||
- [ ] Keystore'ları kopyala (validator 8-21)
|
||||
- [ ] Service dosyalarını kur
|
||||
- [ ] Validator'ları başlat
|
||||
- [ ] Collator'ları başlat
|
||||
|
||||
### 1.5 Bootnode Yapılandırması
|
||||
**Durum:** ❌ BAŞLAMADI
|
||||
|
||||
**Görevler:**
|
||||
- [ ] İlk validator'ü bootnode olarak belirle
|
||||
- [ ] Bootnode peer ID'sini al
|
||||
- [ ] Diğer node'lara bootnode bilgisini ekle
|
||||
|
||||
**Komut:**
|
||||
```bash
|
||||
# Peer ID öğren
|
||||
./target/release/pezkuwi key inspect-node-key --file /root/pezkuwi-data/validator-1/chains/*/network/secret_ed25519
|
||||
```
|
||||
|
||||
### 1.6 Network Test (24 Saat)
|
||||
**Durum:** ❌ BAŞLAMADI
|
||||
|
||||
**Kontrol Listesi:**
|
||||
- [ ] Tüm validator'ler peer'larını buluyor
|
||||
- [ ] Block üretimi devam ediyor
|
||||
- [ ] Finality çalışıyor (GRANDPA)
|
||||
- [ ] Teyrchain'ler block üretiyor
|
||||
- [ ] Hiçbir node crash olmuyor
|
||||
- [ ] Memory leak yok
|
||||
- [ ] Disk dolmuyor
|
||||
|
||||
---
|
||||
|
||||
## 📋 STAGE 2: Public RPC
|
||||
|
||||
### 2.1 RPC Node Kurulumu
|
||||
**Durum:** ❌ BAŞLAMADI
|
||||
|
||||
**Görevler:**
|
||||
- [ ] Validator OLMAYAN RPC node kur
|
||||
- [ ] `--rpc-external` flag'i ekle
|
||||
- [ ] `--rpc-cors all` flag'i ekle
|
||||
- [ ] Pruning ayarla (archive vs pruned)
|
||||
|
||||
### 2.2 Domain ve SSL
|
||||
**Durum:** ❌ BAŞLAMADI
|
||||
|
||||
**Görevler:**
|
||||
- [ ] Domain belirle (rpc.pezkuwichain.io?)
|
||||
- [ ] DNS ayarla
|
||||
- [ ] Nginx reverse proxy kur
|
||||
- [ ] Let's Encrypt SSL sertifikası
|
||||
|
||||
### 2.3 Rate Limiting
|
||||
**Durum:** ❌ BAŞLAMADI
|
||||
|
||||
**Görevler:**
|
||||
- [ ] Nginx rate limiting
|
||||
- [ ] IP başına istek limiti
|
||||
- [ ] WebSocket bağlantı limiti
|
||||
|
||||
---
|
||||
|
||||
## 📋 STAGE 3: Community Validators
|
||||
|
||||
### 3.1 Dokümantasyon
|
||||
**Durum:** ❌ BAŞLAMADI
|
||||
|
||||
**Görevler:**
|
||||
- [ ] Validator kurulum rehberi
|
||||
- [ ] Donanım gereksinimleri
|
||||
- [ ] Session key oluşturma
|
||||
- [ ] Staking süreci
|
||||
|
||||
### 3.2 Telemetry
|
||||
**Durum:** ❌ BAŞLAMADI
|
||||
|
||||
**Görevler:**
|
||||
- [ ] Telemetry backend kur
|
||||
- [ ] telemetry.pezkuwichain.io domain
|
||||
- [ ] Dashboard
|
||||
|
||||
### 3.3 Block Explorer
|
||||
**Durum:** ❌ BAŞLAMADI
|
||||
|
||||
**Seçenekler:**
|
||||
- Subscan self-hosted
|
||||
- Polkadot.js Apps
|
||||
- Custom explorer
|
||||
|
||||
### 3.4 Faucet
|
||||
**Durum:** ❌ BAŞLAMADI
|
||||
|
||||
**Görevler:**
|
||||
- [ ] Faucet backend
|
||||
- [ ] Rate limiting (IP/hesap başına)
|
||||
- [ ] Captcha
|
||||
|
||||
---
|
||||
|
||||
## 🔧 YARARLI KOMUTLAR
|
||||
|
||||
### Binary'leri VPS'e Kopyala
|
||||
```bash
|
||||
# Tüm binary'ler
|
||||
scp /home/mamostehp/pezkuwi-sdk/target/release/pezkuwi \
|
||||
/home/mamostehp/pezkuwi-sdk/target/release/pezkuwi-teyrchain \
|
||||
/home/mamostehp/pezkuwi-sdk/target/release/pezkuwi-zombienet \
|
||||
root@VPS_IP:/root/pezkuwi-sdk/target/release/
|
||||
```
|
||||
|
||||
### VPS'te Repo Sync
|
||||
```bash
|
||||
ssh root@VPS_IP "cd /root/pezkuwi-sdk && git fetch origin && git reset --hard origin/main"
|
||||
```
|
||||
|
||||
### Process Kontrol
|
||||
```bash
|
||||
# Çalışan node'ları gör
|
||||
ssh root@VPS_IP "pgrep -af pezkuwi"
|
||||
|
||||
# Hepsini durdur
|
||||
ssh root@VPS_IP "pkill -9 -f pezkuwi"
|
||||
```
|
||||
|
||||
### Log Kontrol
|
||||
```bash
|
||||
# Systemd log
|
||||
ssh root@VPS_IP "journalctl -u pezkuwi-validator@1 -f"
|
||||
|
||||
# Zombienet log
|
||||
ssh root@VPS_IP "tail -f /tmp/zombienet-21.log"
|
||||
```
|
||||
|
||||
### Block Numarası Kontrol
|
||||
```bash
|
||||
curl -s -H "Content-Type: application/json" \
|
||||
-d '{"jsonrpc":"2.0","method":"chain_getHeader","params":[],"id":1}' \
|
||||
http://VPS_IP:9944 | jq '.result.number'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ⚠️ BİLİNEN SORUNLAR VE ÇÖZÜMLER
|
||||
|
||||
### 1. "CannotSign" Hatası
|
||||
**Sebep:** Key scheme mismatch (Ed25519 vs Sr25519)
|
||||
**Çözüm:** Fix zaten uygulandı (commit f52eb30abb)
|
||||
|
||||
### 2. "WASM binary was not built"
|
||||
**Sebep:** SKIP_WASM_BUILD=1 ile build edilmiş
|
||||
**Çözüm:** WASM ile build et veya local'den kopyala
|
||||
|
||||
### 3. Metric Timeout (Zombienet)
|
||||
**Sebep:** Node metric endpoint'e geç cevap veriyor
|
||||
**Çözüm:** Systemd ile deployment (zombienet bypass)
|
||||
|
||||
### 4. Path Hatası (VPS)
|
||||
**Sebep:** Config'de `/home/mamostehp/...` path'leri var
|
||||
**Çözüm:** `/root/pezkuwi-sdk/...` olarak değiştir
|
||||
|
||||
---
|
||||
|
||||
## 📅 ZAMAN ÇİZELGESİ (TAHMİNİ)
|
||||
|
||||
| Stage | Süre | Bitiş |
|
||||
|-------|------|-------|
|
||||
| STAGE 1.1-1.3 (Hazırlık) | 1-2 gün | - |
|
||||
| STAGE 1.4-1.5 (Deployment) | 1 gün | - |
|
||||
| STAGE 1.6 (24h Test) | 1-2 gün | - |
|
||||
| STAGE 2 (Public RPC) | 1-2 gün | - |
|
||||
| STAGE 3 (Community) | 1 hafta+ | - |
|
||||
|
||||
---
|
||||
|
||||
## 📝 DEĞİŞİKLİK GEÇMİŞİ
|
||||
|
||||
| Tarih | Değişiklik |
|
||||
|-------|------------|
|
||||
| 2026-01-24 | İlk versiyon oluşturuldu |
|
||||
| 2026-01-24 | VPS kapasiteleri eklendi |
|
||||
| 2026-01-24 | Ed25519/Sr25519 fix dokümante edildi |
|
||||
|
||||
---
|
||||
|
||||
*Bu dosya SessionStart hook ile otomatik yüklenir. Her stage tamamlandığında güncelleyin!*
|
||||
@@ -1,205 +0,0 @@
|
||||
# Rebrand İlerleme Listesi
|
||||
|
||||
**Son Güncelleme:** 2025-12-27
|
||||
**Toplam Crate:** 76 (REBRAND_MAP'ten)
|
||||
**Rebrand Durumu:** 75/76 tamamlandı (98.7%)
|
||||
**Derleme Durumu:** ✅ WORKSPACE TAM DERLENİYOR
|
||||
|
||||
## Durum Açıklamaları
|
||||
- ⏳ Bekliyor
|
||||
- ✅ Rebrand Tamamlandı (Cargo.toml name doğru)
|
||||
- 🔨 Derleme Hatası (rebrand tamam ama compile hatası var)
|
||||
- ❌ Eksik/Bulunamadı
|
||||
|
||||
---
|
||||
|
||||
## Özet
|
||||
|
||||
| Kategori | Toplam | Tamamlanan | Durum |
|
||||
|----------|--------|------------|-------|
|
||||
| pez-* prefix | 29 | 29 | ✅ |
|
||||
| pezbridge-* | 8 | 8 | ✅ |
|
||||
| pezsnowbridge-* | 25 | 24 | ⚠️ 1 eksik |
|
||||
| xcm-pez-* | 8 | 8 | ✅ |
|
||||
| pezmmr-* | 2 | 2 | ✅ |
|
||||
| bp/pezbp-* | 2 | 2 | ✅ |
|
||||
| peztest-* | 1 | 1 | ✅ |
|
||||
| asset-test-pezutils | 1 | 1 | ✅ |
|
||||
| **TOPLAM** | **76** | **75** | **98.7%** |
|
||||
|
||||
---
|
||||
|
||||
## İlerleme Tablosu
|
||||
|
||||
| # | Yeni İsim | Durum | Konum |
|
||||
|---|-----------|-------|-------|
|
||||
| 1 | asset-test-pezutils | ✅ | pezcumulus/teyrchains/runtimes/assets/test-utils |
|
||||
| 2 | pez-chain-spec-guide-runtime | ✅ | docs/sdk/src/reference_docs/chain_spec_runtime |
|
||||
| 3 | pez-equivocation-detector | ✅ | pezbridges/relays/equivocation |
|
||||
| 4 | pez-erasure-coding-fuzzer | ✅ | pezkuwi/erasure-coding/fuzzer |
|
||||
| 5 | pez-ethereum-standards | ✅ | bizinikiwi/primitives/pez-ethereum-standards |
|
||||
| 6 | pez-finality-relay | ✅ | pezbridges/relays/finality |
|
||||
| 7 | pez-fork-tree | ✅ | bizinikiwi/utils/pez-fork-tree |
|
||||
| 8 | pez-generate-bags | ✅ | bizinikiwi/utils/pezframe/pez-generate-bags |
|
||||
| 9 | pez-kitchensink-runtime | ✅ | bizinikiwi/bin/node/runtime |
|
||||
| 10 | pez-messages-relay | ✅ | pezbridges/relays/messages |
|
||||
| 11 | pez-minimal-template-node | ✅ | templates/minimal/node |
|
||||
| 12 | pez-minimal-template-runtime | ✅ | templates/minimal/runtime |
|
||||
| 13 | pez-node-bench | ✅ | bizinikiwi/bin/node/bench |
|
||||
| 14 | pez-node-primitives | ✅ | bizinikiwi/bin/node/primitives |
|
||||
| 15 | pez-node-rpc | ✅ | bizinikiwi/bin/node/rpc |
|
||||
| 16 | node-runtime-pez-generate-bags | ✅ | bizinikiwi/utils/pezframe/pez-generate-bags/node-runtime |
|
||||
| 17 | pez-node-template-release | ✅ | bizinikiwi/scripts/ci/pez-node-template-release |
|
||||
| 18 | pez-node-testing | ✅ | bizinikiwi/bin/node/testing |
|
||||
| 19 | pez-penpal-emulated-chain | ✅ | pezcumulus/teyrchains/integration-tests/emulated/chains/teyrchains/testing/penpal |
|
||||
| 20 | pez-penpal-runtime | ✅ | pezcumulus/teyrchains/runtimes/testing/penpal |
|
||||
| 21 | pez-remote-ext-tests-bags-list | ✅ | pezkuwi/utils/remote-ext-tests/bags-list |
|
||||
| 22 | pez-revive-dev-node | ✅ | bizinikiwi/pezframe/revive/dev-node/node |
|
||||
| 23 | pez-revive-dev-runtime | ✅ | bizinikiwi/pezframe/revive/dev-node/runtime |
|
||||
| 24 | pez-slot-range-helper | ✅ | pezkuwi/runtime/common/pez-slot-range-helper |
|
||||
| 25 | pez-solochain-template-node | ✅ | templates/solochain/node |
|
||||
| 26 | pez-solochain-template-runtime | ✅ | templates/solochain/runtime |
|
||||
| 27 | pez-subkey | ✅ | bizinikiwi/bin/utils/pez-subkey |
|
||||
| 28 | pez-template-zombienet-tests | ✅ | templates/zombienet |
|
||||
| 29 | peztest-runtime-constants | ✅ | pezkuwi/runtime/test-runtime/constants |
|
||||
| 30 | pez-tracing-gum | ✅ | pezkuwi/node/gum |
|
||||
| 31 | pez-tracing-gum-proc-macro | ✅ | pezkuwi/node/gum/proc-macro |
|
||||
| 32 | bp-header-pez-chain | ✅ | pezbridges/primitives/header-chain |
|
||||
| 33 | pezbp-runtime | ✅ | pezbridges/primitives/runtime |
|
||||
| 34 | pezbridge-hub-pezkuwichain-emulated-chain | ✅ | pezcumulus/teyrchains/integration-tests/emulated/chains/teyrchains/pezbridges/bridge-hub-pezkuwichain |
|
||||
| 35 | pezbridge-hub-pezkuwichain-integration-tests | ✅ | pezcumulus/teyrchains/integration-tests/emulated/tests/pezbridges/bridge-hub-pezkuwichain |
|
||||
| 36 | pezbridge-hub-pezkuwichain-runtime | ✅ | pezcumulus/teyrchains/runtimes/bridge-hubs/bridge-hub-pezkuwichain |
|
||||
| 37 | pezbridge-hub-test-utils | ✅ | pezcumulus/teyrchains/runtimes/bridge-hubs/test-utils |
|
||||
| 38 | pezbridge-hub-zagros-emulated-chain | ✅ | pezcumulus/teyrchains/integration-tests/emulated/chains/teyrchains/pezbridges/bridge-hub-zagros |
|
||||
| 39 | pezbridge-hub-zagros-integration-tests | ✅ | pezcumulus/teyrchains/integration-tests/emulated/tests/pezbridges/bridge-hub-zagros |
|
||||
| 40 | pezbridge-hub-zagros-runtime | ✅ | pezcumulus/teyrchains/runtimes/bridge-hubs/bridge-hub-zagros |
|
||||
| 41 | pezbridge-runtime-common | ✅ | pezbridges/bin/runtime-common |
|
||||
| 42 | pezmmr-gadget | ✅ | bizinikiwi/client/merkle-mountain-range |
|
||||
| 43 | pezmmr-rpc | ✅ | bizinikiwi/client/merkle-mountain-range/rpc |
|
||||
| 44 | pezsnowbridge-beacon-primitives | ✅ | pezbridges/snowbridge/primitives/beacon |
|
||||
| 45 | pezsnowbridge-core | ✅ | pezbridges/snowbridge/primitives/core |
|
||||
| 46 | pezsnowbridge-ethereum | ✅ | pezbridges/snowbridge/primitives/ethereum |
|
||||
| 47 | pezsnowbridge-inbound-queue-primitives | ✅ | pezbridges/snowbridge/primitives/inbound-queue |
|
||||
| 48 | pezsnowbridge-merkle-tree | ✅ | pezbridges/snowbridge/primitives/merkle-tree |
|
||||
| 49 | pezsnowbridge-outbound-queue-primitives | ✅ | pezbridges/snowbridge/primitives/outbound-queue |
|
||||
| 50 | pezsnowbridge-outbound-queue-runtime-api | ✅ | pezbridges/snowbridge/pezpallets/outbound-queue/runtime-api |
|
||||
| 51 | pezsnowbridge-outbound-queue-v2-runtime-api | ✅ | pezbridges/snowbridge/pezpallets/outbound-queue-v2/runtime-api |
|
||||
| 52 | pezsnowbridge-pezpallet-ethereum-client | ✅ | pezbridges/snowbridge/pezpallets/ethereum-client |
|
||||
| 53 | pezsnowbridge-pezpallet-ethereum-client-fixtures | ✅ | pezbridges/snowbridge/pezpallets/ethereum-client/fixtures |
|
||||
| 54 | pezsnowbridge-pezpallet-inbound-queue | ✅ | pezbridges/snowbridge/pezpallets/inbound-queue |
|
||||
| 55 | pezsnowbridge-pezpallet-inbound-queue-fixtures | ✅ | pezbridges/snowbridge/pezpallets/inbound-queue/fixtures |
|
||||
| 56 | pezsnowbridge-pezpallet-inbound-queue-v2 | ✅ | pezbridges/snowbridge/pezpallets/inbound-queue-v2 |
|
||||
| 57 | pezsnowbridge-pezpallet-inbound-queue-v2-fixtures | ✅ | pezbridges/snowbridge/pezpallets/inbound-queue-v2/fixtures |
|
||||
| 58 | pezsnowbridge-pezpallet-outbound-queue | ✅ | pezbridges/snowbridge/pezpallets/outbound-queue |
|
||||
| 59 | pezsnowbridge-pezpallet-outbound-queue-v2 | ✅ | pezbridges/snowbridge/pezpallets/outbound-queue-v2 |
|
||||
| 60 | pezsnowbridge-pezpallet-system | ✅ | pezbridges/snowbridge/pezpallets/system |
|
||||
| 61 | pezsnowbridge-pezpallet-system-frontend | ✅ | pezbridges/snowbridge/pezpallets/system-frontend |
|
||||
| 62 | pezsnowbridge-pezpallet-system-v2 | ✅ | pezbridges/snowbridge/pezpallets/system-v2 |
|
||||
| 63 | pezsnowbridge-runtime-common | ❌ | Mevcut değil veya farklı isimle |
|
||||
| 64 | pezsnowbridge-runtime-test-common | ✅ | pezbridges/snowbridge/runtime/test-common |
|
||||
| 65 | pezsnowbridge-system-runtime-api | ✅ | pezbridges/snowbridge/pezpallets/system/runtime-api |
|
||||
| 66 | pezsnowbridge-system-v2-runtime-api | ✅ | pezbridges/snowbridge/pezpallets/system-v2/runtime-api |
|
||||
| 67 | pezsnowbridge-test-utils | ✅ | pezbridges/snowbridge/test-utils |
|
||||
| 68 | pezsnowbridge-verification-primitives | ✅ | pezbridges/snowbridge/primitives/verification |
|
||||
| 69 | xcm-pez-docs | ✅ | pezkuwi/xcm/docs |
|
||||
| 70 | xcm-pez-emulator | ✅ | pezcumulus/xcm/xcm-pez-emulator |
|
||||
| 71 | xcm-pez-executor-integration-tests | ✅ | pezkuwi/xcm/xcm-executor/integration-tests |
|
||||
| 72 | xcm-pez-procedural | ✅ | pezkuwi/xcm/procedural |
|
||||
| 73 | xcm-runtime-pezapis | ✅ | pezkuwi/xcm/xcm-runtime-pezapis |
|
||||
| 74 | xcm-pez-simulator | ✅ | pezkuwi/xcm/xcm-pez-simulator |
|
||||
| 75 | xcm-pez-simulator-example | ✅ | pezkuwi/xcm/xcm-pez-simulator/example |
|
||||
| 76 | xcm-pez-simulator-fuzzer | ✅ | pezkuwi/xcm/xcm-pez-simulator/fuzzer |
|
||||
|
||||
---
|
||||
|
||||
## Bilinen Derleme Sorunları
|
||||
|
||||
~~Bu crate'lerin rebrand'i tamamlandı ancak derleme hataları var:~~
|
||||
|
||||
1. ~~**pez-kitchensink-runtime** - 622 hata~~ ✅ ÇÖZÜLDÜ (derleniyor)
|
||||
2. ~~**pezkuwi-sdk (umbrella)** - pezframe_benchmarking_pezpallet_pov import düzeltildi~~ ✅ ÇÖZÜLDÜ
|
||||
|
||||
**Tüm kritik derleme sorunları çözüldü!**
|
||||
|
||||
## ✅ Derleme Tamamlanan Özel Crate'ler
|
||||
|
||||
1. **pezpallet-revive-eth-rpc** ✅ (2025-12-19)
|
||||
- pezkuwi-subxt fork ile tam uyumlu hale getirildi
|
||||
- Tüm substitute_type path'ler pezsp_runtime/pezpallet_revive olarak güncellendi
|
||||
- StorageApi → StorageClientAt API güncellemesi yapıldı
|
||||
- RuntimeApiError pattern matching düzeltildi
|
||||
- SQLX cache yeniden oluşturuldu (eth_to_bizinikiwi_blocks)
|
||||
|
||||
2. **bizinikiwi-txtesttool** ✅ (2025-12-19)
|
||||
- subxt 0.44 dynamic storage API güncellemesi (try_fetch, Value type)
|
||||
- From<ExtrinsicError> for Error eklendi
|
||||
|
||||
3. **pezkuwi-omni-node-lib** ✅ (2025-12-19)
|
||||
- StorageEntryType → keys()/value_ty() API güncellemesi
|
||||
|
||||
### Bu Oturumda Düzeltilen Sorunlar:
|
||||
|
||||
1. `pezpallet-contracts-fixtures/build/Cargo.toml` - workspace inheritance kaldırıldı
|
||||
2. `pezpallet-revive-fixtures/build.rs` - panic_immediate_abort yeni syntax'a güncellendi
|
||||
3. `asset-hub-zagros pezpezsnowbridge` → `pezsnowbridge` double prefix düzeltildi
|
||||
4. `bridge-hub-pezkuwichain/weights` - snowbridge_pezpallet → pezsnowbridge_pezpallet dosya rename
|
||||
5. `bridge-hub-zagros/weights` - aynı rename
|
||||
6. `umbrella/src/lib.rs` - pezframe_benchmarking_pallet_pov → pezframe_benchmarking_pezpallet_pov
|
||||
|
||||
---
|
||||
|
||||
## Sonraki Adımlar
|
||||
|
||||
1. [x] Derleme hatalarını düzelt (pez-kitchensink-runtime) ✅ (derleniyor)
|
||||
2. [x] pezpallet-revive-eth-rpc derlenmesi ✅ (2025-12-19)
|
||||
3. [x] **Workspace-wide cargo check** ✅ (2025-12-19) - BAŞARILI!
|
||||
4. [x] **CI/CD workflow'larını güncelle** ✅ (2025-12-27)
|
||||
5. [ ] **Crates.io publish planına geç** ← SIRADAKİ (CI geçtikten sonra)
|
||||
|
||||
---
|
||||
|
||||
## Log
|
||||
|
||||
### 2025-12-27
|
||||
- **CI/CD Workflow Fixes Tamamlandı:**
|
||||
- `wasm32v1-none` target installation kaldırıldı (serde_core 1.0.228 uyumsuzluğu)
|
||||
- Sassafras benchmark data file (25_tickets_100_auths.bin) gitignore exception eklendi ve commit edildi
|
||||
- 590 Cargo.toml dosyasında documentation URL'leri `documentation.workspace = true` olarak güncellendi
|
||||
- workflow-stopper GitHub App credentials güncellendi (App ID: 2423876)
|
||||
- Upstream issue oluşturuldu: https://github.com/serde-rs/serde/issues/3021
|
||||
- **VPS Runner Infrastructure:**
|
||||
- VPS1 (37.60.230.9) - ubuntu-large runner aktif
|
||||
- VPS2 (62.146.235.186) - ubuntu-xlarge runner aktif
|
||||
- Her iki runner paralel çalışıyor
|
||||
|
||||
### 2024-12-23
|
||||
- **Umbrella eksik crate düzeltmeleri:**
|
||||
- `pezpallet-root-testing` umbrella'ya eklendi (std, try-runtime, runtime-full features)
|
||||
- `pezpallet-xcm-benchmarks` umbrella'ya eklendi (std, runtime-benchmarks, runtime-full features)
|
||||
- Her iki crate için lib.rs re-export eklendi
|
||||
- **pez-kitchensink-runtime** artık tam olarak derleniyor
|
||||
- **cargo clippy -p pez-kitchensink-runtime -- -D warnings** geçti
|
||||
|
||||
### 2025-12-19
|
||||
- **WORKSPACE CARGO CHECK BAŞARILI!** ✅
|
||||
- **pezpallet-revive-eth-rpc** başarıyla derlendi
|
||||
- **pez-kitchensink-runtime** derleme doğrulandı ✅ (622 hata iddiası yanlıştı)
|
||||
- vendor/pezkuwi-subxt fork'u oluşturuldu ve workspace'den exclude edildi
|
||||
- subxt 0.44.0 API değişiklikleri uygulandı:
|
||||
- StorageClientAt, try_fetch, RuntimeApiError (revive-eth-rpc)
|
||||
- dynamic storage API (txtesttool)
|
||||
- StorageEntryType → keys()/value_ty() (omni-node-lib)
|
||||
- Tüm substitute_type path'leri pezsp_runtime/pezpallet_revive prefix'leriyle güncellendi
|
||||
- SQLX cache yeniden oluşturuldu (bizinikiwi terminolojisi ile)
|
||||
- kurdistan-sdk dizini düzenlendi (gereksiz scriptler archive/ klasörüne taşındı)
|
||||
|
||||
### 2025-12-16
|
||||
- Rebrand durumu tam olarak değerlendirildi
|
||||
- 75/76 crate rebrand tamamlanmış bulundu
|
||||
- pezsnowbridge-runtime-common mevcut değil (muhtemelen merge edilmiş)
|
||||
- REBRAND_PROGRESS.md gerçek durumu yansıtacak şekilde güncellendi
|
||||
- Birkaç derleme hatası düzeltildi (fixtures build scripts, weight file renames)
|
||||
|
||||
### 2025-12-15
|
||||
- İlerleme listesi oluşturuldu
|
||||
- scan_old_words.py scripti hazırlandı
|
||||
@@ -1,138 +0,0 @@
|
||||
# SON OTURUM ÖZETİ
|
||||
|
||||
**Tarih:** 2026-01-25
|
||||
**Oturum:** Doc Test Düzeltmeleri + Mainnet Config Commit
|
||||
|
||||
---
|
||||
|
||||
## BU OTURUMDA YAPILAN
|
||||
|
||||
### 1. Doc Test Düzeltmeleri (TAMAMLANDI ✅)
|
||||
|
||||
**Commit:** `ce729f6283`
|
||||
|
||||
| Dosya | Sorun | Çözüm |
|
||||
|-------|-------|-------|
|
||||
| `pezframe/src/lib.rs` | Yanlış import `pezkuwi_sdk_frame` | `pezframe` olarak düzeltildi + documented ignore |
|
||||
| `pezframe-election-provider-solution-type` | Circular dependency | Documented ignore (testler `pezframe-election-provider-support/src/tests.rs`'de) |
|
||||
| `pezframe-support/Cargo.toml` | Eksik dev-dependency | `pezsp-timestamp` eklendi |
|
||||
| `pezframe-support-procedural` | Circular dependency | Documented ignore (authorize test) |
|
||||
| `pezkuwi-subxt/src/lib.rs` | Metadata mismatch (`sp_runtime` vs `pezsp_runtime`) | Documented ignore |
|
||||
|
||||
### 2. Mainnet Konfigürasyonu (TAMAMLANDI ✅)
|
||||
|
||||
**Commit:** `355aa642ed`
|
||||
|
||||
- `pezkuwichain_mainnet_config()` fonksiyonu eklendi
|
||||
- "pezkuwichain-mainnet" CLI seçeneği eklendi
|
||||
- Asset Hub genesis: wUSDT (ID: 1000) eklendi, mainnet cüzdanlar güncellendi
|
||||
- People Chain genesis: Mainnet collator adresleri güncellendi
|
||||
- Collator isimleri: Azad, Beritan, Civan, Dildar (Asset Hub) / Erin, Firaz, Goran, Hevi (People)
|
||||
|
||||
### 3. Zombienet Dosyaları Silindi (TAMAMLANDI ✅)
|
||||
|
||||
**Commit:** `8362d67879`
|
||||
|
||||
- `zombienet-alpha.toml` silindi
|
||||
- `zombienet-dev.toml` silindi
|
||||
- `zombienet-local.toml` silindi
|
||||
|
||||
### 4. Tools Dizini Eklendi (TAMAMLANDI ✅)
|
||||
|
||||
**Commit:** `5c39914ae8`
|
||||
|
||||
- `tools/chain-spec-tool/` - Chain spec utility
|
||||
- `tools/usdt-bridge/` - wUSDT custodial bridge
|
||||
|
||||
### 5. .gitignore Güncellendi (TAMAMLANDI ✅)
|
||||
|
||||
**Commit:** `c8021df450`
|
||||
|
||||
- `relay-mainnet.json` (generated)
|
||||
- `tools/usdt-bridge/bridge_db.json` (runtime data)
|
||||
- `.claude/domains-repositories` (session file)
|
||||
|
||||
---
|
||||
|
||||
## COMMIT ÖZET
|
||||
|
||||
```
|
||||
ce729f6283 fix: doc test compilation errors with documented ignores
|
||||
355aa642ed feat: add pezkuwichain mainnet configuration
|
||||
8362d67879 chore: remove obsolete zombienet config files
|
||||
5c39914ae8 feat: add chain-spec-tool and usdt-bridge utilities
|
||||
c8021df450 chore: add generated files to .gitignore
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ÖNCEKİ OTURUMLARDAN DEVAM
|
||||
|
||||
### Alloy Crates Upgrade ✅
|
||||
- Commit: `3ca9e6ccd3`
|
||||
|
||||
### serde_core wasm32 Fix ✅
|
||||
- Commit (serde fork): `0a75fdd8`
|
||||
- Commit (pezkuwi-sdk): `7cc45454ff`
|
||||
|
||||
### dicle.json Chain Spec ✅
|
||||
- Commit: `329024ea7c`
|
||||
|
||||
### Ed25519/Sr25519 Key Scheme Fix ✅
|
||||
- Commit: `f52eb30abb`
|
||||
|
||||
---
|
||||
|
||||
## NEREDE KALDIK
|
||||
|
||||
**Mevcut Durum:**
|
||||
- Tüm doc test düzeltmeleri commit edildi
|
||||
- Mainnet konfigürasyonu commit edildi
|
||||
- Tools dizini eklendi
|
||||
- Push edilmeye hazır
|
||||
|
||||
**Sonraki Adımlar:**
|
||||
1. Push yap
|
||||
2. CI sonuçlarını bekle
|
||||
3. STAGE 1.1 - Validator Key Oluşturma
|
||||
4. Chain spec oluşturma
|
||||
5. VPS deployment
|
||||
|
||||
**Checklist (STAGE 1):**
|
||||
- [x] Ed25519/Sr25519 fix
|
||||
- [x] 21 validator test (local/VPS2)
|
||||
- [x] VPS kapasite kontrolü
|
||||
- [x] CI workflow düzeltmeleri
|
||||
- [x] Doc test düzeltmeleri
|
||||
- [x] Mainnet config commit
|
||||
- [ ] Validator key'leri oluştur
|
||||
- [ ] Chain spec oluştur
|
||||
- [ ] Systemd service dosyaları
|
||||
- [ ] VPS deployment
|
||||
- [ ] Bootnode yapılandırması
|
||||
- [ ] 24 saat stability test
|
||||
|
||||
---
|
||||
|
||||
## KRİTİK NOTLAR SONRAKİ CLAUDE İÇİN
|
||||
|
||||
1. **DOC TEST FIX YAPILDI** - Commit `ce729f6283`
|
||||
2. **MAINNET CONFIG COMMIT EDİLDİ** - Commit `355aa642ed`
|
||||
3. **TOOLS EKLENDİ** - chain-spec-tool, usdt-bridge
|
||||
4. **wUSDT ASSET** - ID: 1000, 6 decimals
|
||||
5. **PUSH BEKLIYOR** - Tüm değişiklikler local'de commit edildi
|
||||
|
||||
---
|
||||
|
||||
## ÖNEMLİ DOSYALAR
|
||||
|
||||
| Dosya | Açıklama |
|
||||
|-------|----------|
|
||||
| `.claude/PUBLIC_TESTNET_ROADMAP.md` | Testnet checklist ve plan |
|
||||
| `pezkuwi/node/service/src/chain_spec.rs` | Mainnet config ✅ |
|
||||
| `tools/chain-spec-tool/` | Chain spec utility |
|
||||
| `tools/usdt-bridge/` | wUSDT bridge |
|
||||
|
||||
---
|
||||
|
||||
*Bu dosyayı her oturum sonunda güncelle!*
|
||||
@@ -1,311 +0,0 @@
|
||||
# Pezkuwi SDK - CI Workflow Mühendislik Planı
|
||||
|
||||
> **KURAL:** Bu dosyadaki komutları birebir çalıştır. Kendi komutunu uydurma.
|
||||
|
||||
## Lokal Test Durumu (development branch)
|
||||
|
||||
| Durum | Sayı |
|
||||
|-------|------|
|
||||
| ✅ Lokal Geçti | 34 |
|
||||
| ⏳ CI'da Test Edilecek | 8 |
|
||||
| ❌ Başarısız | 0 |
|
||||
|
||||
---
|
||||
|
||||
## SON CI DÜZELTMELERİ (2025-12-27)
|
||||
|
||||
### PR #346 - wasm32v1-none target kaldırıldı (MERGED)
|
||||
**Problem:** serde_core 1.0.228 + Rust 1.88.0 + wasm32v1-none target kombinasyonu derleme hatası veriyordu:
|
||||
```
|
||||
error: relaxing a default bound only does something for `?Sized`
|
||||
```
|
||||
|
||||
**Çözüm:** wasm32v1-none target kurulumu kaldırıldı, wasm-builder otomatik olarak wasm32-unknown-unknown'a fallback ediyor.
|
||||
|
||||
**Upstream Issue:** https://github.com/serde-rs/serde/issues/3021
|
||||
|
||||
**Güncellenen workflow dosyaları:**
|
||||
- tests.yml
|
||||
- tests-linux-stable.yml
|
||||
- tests-misc.yml
|
||||
- build-publish-images.yml
|
||||
- check-pezframe-omni-bencher.yml
|
||||
|
||||
### Sassafras Benchmark Data File Fix
|
||||
**Problem:** `25_tickets_100_auths.bin` dosyası gitignore'da `*.bin` kuralı nedeniyle repo'ya eklenmemişti.
|
||||
|
||||
**Çözüm:** `.gitignore`'a exception eklendi ve dosya repo'ya dahil edildi.
|
||||
|
||||
### Documentation URLs Update (590 dosya)
|
||||
**Problem:** Birçok Cargo.toml dosyasında `documentation = "https://docs.rs/..."` kullanılıyordu.
|
||||
|
||||
**Çözüm:** Tüm docs.rs URL'leri `documentation.workspace = true` olarak güncellendi (workspace'ten `https://docs.pezkuwichain.io/` alınıyor).
|
||||
|
||||
### Workflow-Stopper Credentials Update
|
||||
**Problem:** GitHub App JWT token hatası veriyordu.
|
||||
|
||||
**Çözüm:** Repository secrets güncellendi:
|
||||
- `WORKFLOW_STOPPER_RUNNER_APP_ID` = 2423876
|
||||
- `WORKFLOW_STOPPER_RUNNER_APP_KEY` = Yeni private key
|
||||
|
||||
---
|
||||
|
||||
### ÖNCEKİ: PR #344 - solc version fix (MERGED)
|
||||
- solc 0.8.30 pinlendi (revive uyumluluğu için)
|
||||
|
||||
### ÖNCEKİ: PR #345 - WASM build + macOS pip fix (MERGED)
|
||||
**Düzeltilen hatalar:**
|
||||
1. **macOS pip externally-managed-environment**: `--break-system-packages` flag eklendi
|
||||
2. **WASM getrandom/duplicate lang item**: `rustup target add wasm32v1-none` eklendi (sonra PR #346 ile kaldırıldı)
|
||||
|
||||
---
|
||||
|
||||
## FAZ 1: Başarısız Workflow'lar (10 workflow, ~30 job)
|
||||
|
||||
### 1.1 quick-checks.yml
|
||||
|
||||
| Job | Durum | Lokal Test Komutu |
|
||||
|-----|-------|-------------------|
|
||||
| `check-toml-format` | ✅ | `taplo format --check --config .config/taplo.toml` |
|
||||
| `check-markdown` | ✅ | `markdownlint --config .github/.markdownlint.yaml --ignore target --ignore vendor .` |
|
||||
| `fmt` | ✅ | `cargo fmt --all -- --check` |
|
||||
| `check-zepter` | ✅ | `zepter run check` |
|
||||
| `check-workspace` | ✅ | `python3 .github/scripts/check-workspace.py .` |
|
||||
| `check-dependency-rules` | ✅ | `python3 .github/scripts/deny-git-deps.py .` |
|
||||
| `check-umbrella` | ✅ | `python3 scripts/generate-umbrella.py --check` |
|
||||
| `test-rust-features` | ✅ | `.gitlab/rust-features.sh .` |
|
||||
| `check-fail-ci` | ✅ | `! grep -r "FAIL-CI" --include="*.rs" . --exclude-dir=target` |
|
||||
| `check-readme` | ✅ | `.github/scripts/check-missing-readme-generation.sh` |
|
||||
|
||||
**Düzeltme:**
|
||||
```bash
|
||||
# TOML format düzelt
|
||||
taplo format --config .config/taplo.toml
|
||||
|
||||
# Markdown düzelt
|
||||
markdownlint --config .github/.markdownlint.yaml --ignore target --ignore vendor . --fix
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 1.2 checks.yml
|
||||
|
||||
| Job | Durum | Lokal Test Komutu |
|
||||
|-----|-------|-------------------|
|
||||
| `cargo-clippy` | ✅ | `RUSTFLAGS="-D warnings" SKIP_WASM_BUILD=1 cargo clippy --all-targets --all-features --locked --workspace --quiet` |
|
||||
| `check-try-runtime` | ✅ | Aşağıdaki 3 komut sırayla çalıştırılmalı |
|
||||
| `check-core-crypto-features` | ✅ | Aşağıdaki 3 script çalıştırılmalı |
|
||||
|
||||
**check-try-runtime komutları:**
|
||||
```bash
|
||||
cargo check --locked --all --features try-runtime --quiet
|
||||
cargo check --locked -p teyrchain-template-node --features try-runtime
|
||||
cargo check --locked --all --features try-runtime,experimental --quiet
|
||||
```
|
||||
|
||||
**check-core-crypto-features komutları:**
|
||||
```bash
|
||||
./bizinikiwi/primitives/core/check-features-variants.sh
|
||||
./bizinikiwi/primitives/application-crypto/check-features-variants.sh
|
||||
./bizinikiwi/primitives/keyring/check-features-variants.sh
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 1.3 docs.yml
|
||||
|
||||
| Job | Durum | Lokal Test Komutu |
|
||||
|-----|-------|-------------------|
|
||||
| `test-doc` | ✅ | `cargo test --doc --workspace --locked --all-features` (ss58-registry rebrand düzeltildi, DefensiveMin/Max debug modda geçiyor) |
|
||||
| `build-rustdoc` | ✅ | `SKIP_WASM_BUILD=1 cargo doc --workspace --all-features --no-deps` |
|
||||
|
||||
---
|
||||
|
||||
### 1.4 tests.yml
|
||||
|
||||
| Job | Durum | Lokal Test Komutu |
|
||||
|-----|-------|-------------------|
|
||||
| `cargo-check-all-benches` | ✅ | `SKIP_WASM_BUILD=1 cargo check --workspace --benches --features runtime-benchmarks --quiet` |
|
||||
| `test-syscalls` | ⏳ | CI-specific (syscall binary testi, lokal test edilemez) |
|
||||
| `quick-benchmarks` | ✅ | `cargo run --release -p pezstaging-node-cli --bin bizinikiwi-node --features runtime-benchmarks -- benchmark pezpallet --chain dev --pezpallet "*" --extrinsic "*" --steps 2 --repeat 1` |
|
||||
|
||||
---
|
||||
|
||||
### 1.5 tests-linux-stable.yml
|
||||
|
||||
| Job | Durum | Lokal Test Komutu |
|
||||
|-----|-------|-------------------|
|
||||
| `test-linux-stable` | ⏳ | `cargo nextest run --workspace --locked --release --features try-runtime,experimental,ci-only-tests` (CI'da çalışacak) |
|
||||
| `test-linux-stable-int` | ⏳ | `cargo test -p pezstaging-node-cli --release --locked -- --ignored` (CI'da çalışacak) |
|
||||
| `test-linux-stable-no-try-runtime` | ⏳ | `cargo nextest run --workspace --locked --release --features experimental,ci-only-tests` (CI'da çalışacak) |
|
||||
| `test-linux-stable-runtime-benchmarks` | ⏳ | `cargo nextest run --workspace --features runtime-benchmarks benchmark --locked --cargo-profile testnet` (CI'da çalışacak) |
|
||||
|
||||
---
|
||||
|
||||
### 1.6 tests-misc.yml
|
||||
|
||||
| Job | Durum | Lokal Test Komutu |
|
||||
|-----|-------|-------------------|
|
||||
| `test-node-metrics` | ✅ | `cargo test --profile testnet --locked --features=runtime-metrics -p pezkuwi-node-metrics` |
|
||||
| `test-pezframe-ui` | ✅ | Aşağıdaki 6 komut çalıştırılmalı (179 stderr dosyası güncellendi) |
|
||||
| `cargo-check-each-crate` | ⏳ | `python3 .github/scripts/check-each-crate.py 1 7` (606 crate, 7 paralel grup, CI'da çalışacak) |
|
||||
| `cargo-check-all-crate-macos` | ⏳ | macOS runner gerekli (CI'da çalışacak) |
|
||||
| `test-deterministic-wasm` | ✅ | `cargo build -q --locked --release -p zagros-runtime -p pezkuwichain-runtime` (2x + checksum, deterministik doğrulandı) |
|
||||
| `check-tracing` | ✅ | `cargo test --locked --manifest-path ./bizinikiwi/primitives/tracing/Cargo.toml` |
|
||||
|
||||
**test-pezframe-ui komutları:**
|
||||
```bash
|
||||
cargo test --locked -q --profile testnet -p pezframe-support-test --features=frame-feature-testing,no-metadata-docs,try-runtime,experimental ui
|
||||
cargo test --locked -q --profile testnet -p pezframe-support-test --features=frame-feature-testing,frame-feature-testing-2,no-metadata-docs,try-runtime,experimental ui
|
||||
cargo test --locked -q --profile testnet -p xcm-pez-procedural ui
|
||||
cargo test --locked -q --profile testnet -p pezframe-election-provider-solution-type ui
|
||||
cargo test --locked -q --profile testnet -p pezsp-api-test ui
|
||||
cargo test --locked -q --profile testnet --manifest-path bizinikiwi/primitives/runtime-interface/Cargo.toml ui
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 1.7 tests-evm.yml
|
||||
|
||||
| Job | Durum | Lokal Test Komutu |
|
||||
|-----|-------|-------------------|
|
||||
| `evm-test-suite (test:pvm)` | ✅ | Binary'ler derlendi: `cargo build --release -p pezpallet-revive-eth-rpc -p pez-revive-dev-node` |
|
||||
| `differential-tests` | ✅ | Binary'ler derlendi, resolc GitHub releases'ten indirilir |
|
||||
|
||||
---
|
||||
|
||||
### 1.8 build-misc.yml
|
||||
|
||||
| Job | Durum | Lokal Test Komutu |
|
||||
|-----|-------|-------------------|
|
||||
| `build-runtimes-polkavm` | ✅ | `BIZINIKIWI_RUNTIME_TARGET=riscv cargo check -p pez-minimal-template-runtime -p zagros-runtime -p pezkuwichain-runtime -p pezkuwi-test-runtime` |
|
||||
| `check-revive-stable-uapi-polkavm` | ✅ | `cargo +nightly check -p pezpallet-revive-uapi --no-default-features --target riscv64imac-unknown-none-elf -Zbuild-std=core` |
|
||||
| `build-pez-subkey` | ✅ | `cd bizinikiwi/bin/utils/pez-subkey && SKIP_WASM_BUILD=1 cargo build --locked --release` |
|
||||
|
||||
---
|
||||
|
||||
### 1.9 build-publish-images.yml
|
||||
|
||||
| Job | Durum | Lokal Test Komutu |
|
||||
|-----|-------|-------------------|
|
||||
| `build-linux-stable` | ✅ | `cargo build --locked --release -p pezkuwi` |
|
||||
| `build-linux-stable-pezcumulus` | ✅ | `cargo build --locked --release -p pezkuwi-teyrchain-bin` |
|
||||
| `build-linux-bizinikiwi` | ✅ | `cargo build --locked --release -p pezstaging-node-cli` |
|
||||
| `build-templates-node` | ✅ | `cargo build --locked --release -p teyrchain-template-node` |
|
||||
| `build-malus` | ✅ | `cargo build --locked --release -p pezkuwi-test-malus` |
|
||||
| `build-test-collators` | ✅ | `cargo build --locked --release -p test-teyrchain-adder-collator -p test-teyrchain-undying-collator` |
|
||||
| `prepare-bridges-zombienet-artifacts` | ✅ | `cargo build --profile testnet -p pezkuwi-test-malus --bin malus --bin pezkuwi-prepare-worker --bin pezkuwi-execute-worker` |
|
||||
| `build-push-image-test-teyrchain` | ⏳ | Docker image build (CI'da çalışacak) |
|
||||
|
||||
---
|
||||
|
||||
### 1.10 check-getting-started.yml
|
||||
|
||||
| Job | Durum | Lokal Test Komutu |
|
||||
|-----|-------|-------------------|
|
||||
| Tüm distro testleri | ✅ | Template repo'ları mevcut, script doğru |
|
||||
|
||||
**Template Repo'ları (GitHub'da mevcut):**
|
||||
- ✅ `github.com/pezkuwichain/pezkuwi-sdk-minimal-template`
|
||||
- ✅ `github.com/pezkuwichain/pezkuwi-sdk-solochain-template`
|
||||
- ✅ `github.com/pezkuwichain/pezkuwi-sdk-teyrchain-template`
|
||||
- ✅ `github.com/pezkuwichain/pezkuwi-runtime-templates`
|
||||
|
||||
---
|
||||
|
||||
## FAZ 2: Düzeltme Sırası
|
||||
|
||||
```
|
||||
AŞAMA 1 - Kritik (PR merge için ZORUNLU):
|
||||
├── quick-checks.yml
|
||||
│ ├── taplo format --config .config/taplo.toml
|
||||
│ └── markdownlint --fix
|
||||
└── checks.yml
|
||||
├── cargo clippy düzeltmeleri
|
||||
└── try-runtime feature düzeltmeleri
|
||||
|
||||
AŞAMA 2 - Derleme Hataları:
|
||||
├── build-publish-images.yml binary build'ler
|
||||
├── build-misc.yml PolkaVM build
|
||||
└── tests.yml benchmark compile
|
||||
|
||||
AŞAMA 3 - Test Hataları:
|
||||
├── tests-linux-stable.yml unit/integration tests
|
||||
├── tests-misc.yml çeşitli testler
|
||||
└── docs.yml doc tests
|
||||
|
||||
AŞAMA 4 - EVM/PolkaVM:
|
||||
├── tests-evm.yml PolkaVM toolchain
|
||||
└── resolc compiler kurulumu
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Tamamlanan Düzeltmeler
|
||||
|
||||
| Tarih | Düzeltme | Etki |
|
||||
|-------|----------|------|
|
||||
| 2025-12-25 | check-revive-stable-uapi-polkavm: nightly + -Zbuild-std=core ile geçti | check-revive-stable-uapi-polkavm |
|
||||
| 2025-12-25 | test-deterministic-wasm: zagros-runtime, pezkuwichain-runtime deterministik build doğrulandı | test-deterministic-wasm |
|
||||
| 2025-12-25 | PolkaVM runtime build: pez-minimal-template-runtime BIZINIKIWI_RUNTIME_TARGET=riscv | build-runtimes-polkavm |
|
||||
| 2025-12-25 | ss58-registry doc tests: pezkuwi_ss58_registry import, TokenRegistry::Hez | test-doc |
|
||||
| 2025-12-25 | Rustdoc link düzeltmeleri: zombienet-sdk, subxt, ss58-registry, pezframe-support, pezpallet-presale, revive README | build-rustdoc |
|
||||
| 2025-12-25 | CLI argüman rebrand: --pallet → --pezpallet, benchmark pallet → benchmark pezpallet | quick-benchmarks, scripts |
|
||||
| 2025-12-25 | pezpallet-welati EnsureOrigin try_successful_origin düzeltmeleri (3 fix) | pezkuwi-teyrchain-bin build |
|
||||
| 2025-12-25 | asset-hub-zagros governance origins macro düzeltmeleri (2 macro) | pezkuwi-teyrchain-bin build |
|
||||
| 2025-12-25 | Binary build'ler test edildi: pezkuwi, pezkuwi-teyrchain-bin, pezstaging-node-cli, teyrchain-template-node | build-publish-images |
|
||||
| 2025-12-24 | Bench check'e --features runtime-benchmarks eklendi, yanlış exclusion'lar kaldırıldı | cargo-check-all-benches |
|
||||
| 2024-12-24 | Workflow'larda pezstaging-node-cli paket adı düzeltildi | build-publish-images, tests |
|
||||
| 2024-12-24 | Umbrella node feature'ına subxt native propagation eklendi | check-try-runtime |
|
||||
| 2024-12-24 | Vendor crate rebrand düzeltmeleri (sp_* -> pezsp_*) | cargo-clippy |
|
||||
| 2024-12-24 | Subxt examples artifact paths düzeltildi | cargo-clippy |
|
||||
| 2024-12-24 | Subxt examples type conversion düzeltmeleri | cargo-clippy |
|
||||
| 2024-12-24 | Zombienet-sdk test type düzeltmeleri | cargo-clippy |
|
||||
| 2024-12-24 | TOML format düzeltildi (umbrella/Cargo.toml) | check-toml-format |
|
||||
| 2024-12-23 | Umbrella'ya pezpallet-root-testing eklendi | check-try-runtime |
|
||||
| 2024-12-23 | Umbrella'ya pezpallet-xcm-benchmarks eklendi | Runtime build |
|
||||
| 2024-12-23 | Subxt runtime-full'dan çıkarıldı | getrandom WASM fix |
|
||||
| 2024-12-23 | Template URL'leri düzeltildi | check-getting-started |
|
||||
| 2024-12-22 | rustfmt.toml stable-only | fmt job |
|
||||
| 2024-12-22 | Zepter feature propagation | check-zepter |
|
||||
| 2025-12-26 | solc 0.8.30 pinlendi (PR #344) | tests-evm, tests-misc |
|
||||
| 2025-12-26 | macOS pip --break-system-packages (PR #345) | cargo-check-all-crate-macos |
|
||||
| 2025-12-26 | wasm32v1-none target kurulumu (PR #345) | quick-benchmarks, test-linux-stable-int, test-linux-stable-runtime-benchmarks, test-deterministic-wasm, build-linux-stable, build-linux-bizinikiwi |
|
||||
|
||||
---
|
||||
|
||||
## Şu An Yapılması Gereken
|
||||
|
||||
1. ✅ `taplo format --config .config/taplo.toml` - TAMAMLANDI
|
||||
2. ✅ `cargo clippy` düzeltmeleri - TAMAMLANDI
|
||||
3. ✅ `check-try-runtime` komutları - TAMAMLANDI (subxt native feature propagation eklendi)
|
||||
4. ✅ `cargo-check-all-benches` - TAMAMLANDI (--features runtime-benchmarks eklendi)
|
||||
5. ✅ Build-publish-images temel binary'ler - TAMAMLANDI
|
||||
- ✅ pezkuwi
|
||||
- ✅ pezkuwi-teyrchain-bin
|
||||
- ✅ pezstaging-node-cli
|
||||
- ✅ teyrchain-template-node
|
||||
- ✅ pezkuwi-test-malus
|
||||
- ✅ test-teyrchain-adder-collator
|
||||
- ✅ test-teyrchain-undying-collator
|
||||
6. ✅ Template repo'ları - MEVCUT (GitHub'da kontrol edildi)
|
||||
7. ✅ Kalan binary build'leri - TAMAMLANDI
|
||||
8. ✅ Commit ve push yap - TAMAMLANDI (PR #344, PR #345)
|
||||
9. ⏳ CI'da test et - PR #345 merge edildi, CI çalışıyor
|
||||
10. ⏳ Tüm workflow'lar yeşil olduktan sonra → crates.io publish
|
||||
|
||||
---
|
||||
|
||||
*Son Güncelleme: 2025-12-26*
|
||||
|
||||
---
|
||||
|
||||
## GELECEK: Crate Publish Aşaması
|
||||
|
||||
### TODO : polkavm → pezkavm Rebrand
|
||||
|
||||
`polkavm-linker` external crate olduğu için (crates.io), rebrand için fork gerekli:
|
||||
- polkavm → pezkavm olarak fork edilecek
|
||||
- `polkavm_linker::target_json_path` → `pezkavm_linker::target_json_path`
|
||||
- wasm-builder ve revive fixtures güncellenecek
|
||||
- Tüm işler bitip crate publish aşamasına geçildiğinde yapılacak
|
||||
@@ -1,237 +0,0 @@
|
||||
# PezkuwiChain Infrastructure
|
||||
|
||||
## Domains
|
||||
|
||||
### Primary Domain
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| Domain | pezkuwichain.io |
|
||||
| IP | 37.60.230.9 |
|
||||
| TTL | 3600 |
|
||||
|
||||
### Service Subdomains (.io)
|
||||
| Subdomain | Full URL | Description |
|
||||
|-----------|----------|-------------|
|
||||
| www | www.pezkuwichain.io | Main website |
|
||||
| network | network.pezkuwichain.io | Network portal |
|
||||
| api | api.pezkuwichain.io | API endpoint |
|
||||
| rpc | rpc.pezkuwichain.io | RPC endpoint |
|
||||
| ws | ws.pezkuwichain.io | WebSocket endpoint |
|
||||
| explorer | explorer.pezkuwichain.io | Block explorer |
|
||||
| scan | scan.pezkuwichain.io | Blockchain scanner |
|
||||
| statescan | statescan.pezkuwichain.io | State explorer |
|
||||
| stats | stats.pezkuwichain.io | Validator stats |
|
||||
| treasury | treasury.pezkuwichain.io | Treasury dashboard |
|
||||
| governance | governance.pezkuwichain.io | Governance portal |
|
||||
| docs | docs.pezkuwichain.io | Documentation |
|
||||
| wiki | wiki.pezkuwichain.io | Wiki |
|
||||
| wiki.network | wiki.network.pezkuwichain.io | Network wiki |
|
||||
| faucet | faucet.pezkuwichain.io | Test token faucet |
|
||||
| telemetry | telemetry.pezkuwichain.io | Telemetry dashboard |
|
||||
| forum | forum.pezkuwichain.io | Community forum |
|
||||
| grants | grants.pezkuwichain.io | Grant program |
|
||||
| developers | developers.pezkuwichain.io | Developer portal |
|
||||
| mail | mail.pezkuwichain.io | Email service |
|
||||
|
||||
### Application Domains (.app)
|
||||
| Subdomain | Full URL | Description |
|
||||
|-----------|----------|-------------|
|
||||
| - | pezkuwichain.app | Main application portal |
|
||||
| www | www.pezkuwichain.app | Web application |
|
||||
| docs | docs.pezkuwichain.app | Documentation site |
|
||||
| js | js.pezkuwichain.app | JavaScript API documentation |
|
||||
| releases | releases.pezkuwichain.app | Release downloads |
|
||||
| telemetry | telemetry.pezkuwichain.app | Telemetry dashboard |
|
||||
|
||||
### Network RPC Endpoints
|
||||
| Network | Subdomain | Full URL |
|
||||
|---------|-----------|----------|
|
||||
| Mainnet | mainnet | mainnet.pezkuwichain.io |
|
||||
| Mainnet | pezkuwichain-rpc | pezkuwichain-rpc.pezkuwichain.io |
|
||||
| Zagros | zagros | zagros.pezkuwichain.io |
|
||||
| Zagros | zagros-rpc | zagros-rpc.pezkuwichain.io |
|
||||
| Zagros Asset Hub | zagros-asset-hub-rpc | zagros-asset-hub-rpc.pezkuwichain.io |
|
||||
| Zagros Bridge Hub | zagros-bridge-hub-rpc | zagros-bridge-hub-rpc.pezkuwichain.io |
|
||||
| Zagros Collectives | zagros-collectives-rpc | zagros-collectives-rpc.pezkuwichain.io |
|
||||
| Zagros Coretime | zagros-coretime-rpc | zagros-coretime-rpc.pezkuwichain.io |
|
||||
| Testnet | testnet | testnet.pezkuwichain.io |
|
||||
| Staging | staging | staging.pezkuwichain.io |
|
||||
| Beta | beta | beta.pezkuwichain.io |
|
||||
| Beta RPC | beta-rpc | beta-rpc.pezkuwichain.io |
|
||||
| Try Runtime | try-runtime | try-runtime.pezkuwichain.io |
|
||||
| Try Runtime Zagros | try-runtime-zagros | try-runtime-zagros.pezkuwichain.io |
|
||||
|
||||
---
|
||||
|
||||
## GitHub Repositories
|
||||
|
||||
**Organization:** https://github.com/pezkuwichain
|
||||
|
||||
### Core SDK Repositories
|
||||
| Repository | Description | Language | Upstream |
|
||||
|------------|-------------|----------|----------|
|
||||
| pezkuwi-sdk | Digital state for Kurdish nation on blockchain | Rust | paritytech/polkadot-sdk |
|
||||
| polkadot-sdk | The Parity Polkadot Blockchain SDK (fork) | Rust | paritytech/polkadot-sdk |
|
||||
| pezkuwi-subxt | Interact with Substrate based nodes | Rust | paritytech/subxt |
|
||||
| pezkuwi-zombienet-sdk | ZombieNet SDK | Rust | paritytech/zombienet-sdk |
|
||||
|
||||
### Template Repositories
|
||||
| Repository | Description | Language | Upstream |
|
||||
|------------|-------------|----------|----------|
|
||||
| pezkuwi-sdk-minimal-template | Minimal Testing/Learning Template | Rust | paritytech/polkadot-sdk-minimal-template |
|
||||
| pezkuwi-sdk-solochain-template | Solochain-Ready Template | Rust | paritytech/polkadot-sdk-solochain-template |
|
||||
| pezkuwi-sdk-teyrchain-template | Teyrchain template for Pezkuwi SDK | Rust | paritytech/polkadot-sdk-parachain-template |
|
||||
| polkadot-runtime-templates | Runtime Templates for Pezkuwi Teyrchains | Rust | - |
|
||||
|
||||
### Library Forks
|
||||
| Repository | Description | Language | Upstream |
|
||||
|------------|-------------|----------|----------|
|
||||
| parity-db | Experimental blockchain database | Rust | paritytech/parity-db |
|
||||
| parity-scale-codec | Binary serialization codec | Rust | paritytech/parity-scale-codec |
|
||||
| pezframe-metadata | FRAME metadata parser tools | Rust | paritytech/frame-metadata |
|
||||
| merkle-mountain-range | MMR implementation | Rust | nervosnetwork/merkle-mountain-range |
|
||||
| wasm-instrument | WASM module instrumentation | Rust | parity/wasm-instrument |
|
||||
| consensus | Consensus for Web3 | TeX | parity/consensus |
|
||||
|
||||
### Community & Documentation
|
||||
| Repository | Description | Language | Upstream |
|
||||
|------------|-------------|----------|----------|
|
||||
| awesome-hez | Awesome resources in Polkadot ecosystem | - | parity/awesome-substrate |
|
||||
| pezkuwi-fellows | Fellowship proposals | Handlebars | polkadot-fellows/rfc |
|
||||
| kurdistan_blockchain-akademy | Blockchain Academy Rust Qualifier | Rust | polkadot-blockchain-academy |
|
||||
| docs | PezkuwiChain documentation | Rust | - |
|
||||
| labels | Label rules for repositories | Shell | paritytech/labels |
|
||||
|
||||
### JavaScript/TypeScript Libraries
|
||||
| Repository | Description | Language | Upstream | NPM Packages |
|
||||
|------------|-------------|----------|----------|--------------|
|
||||
| pezkuwi-api | Polkadot.js API fork for PezkuwiChain | TypeScript | polkadot-js/api | @pezkuwi/api, @pezkuwi/types, @pezkuwi/rpc-* (13 packages) |
|
||||
| pezkuwi-extension | Browser extension packages | TypeScript | polkadot-js/extension | @pezkuwi/extension-dapp, @pezkuwi/extension-inject |
|
||||
| pezkuwi-common | Common utilities and cryptography | TypeScript | polkadot-js/common | @pezkuwi/util, @pezkuwi/util-crypto, @pezkuwi/keyring (14 packages) |
|
||||
|
||||
### Applications
|
||||
| Repository | Description | Language |
|
||||
|------------|-------------|----------|
|
||||
| DKSweb | Sovereign Blockchain for Kurdish Nation | TypeScript |
|
||||
| pezkuwi-mobile-app | Official Mobile App | TypeScript |
|
||||
| pwap | Web and mobile applications monorepo | TypeScript |
|
||||
| pezkuwi-validator-v1.0.0 | Validator installer scripts | Shell |
|
||||
| testnet | Testnet configuration | Shell |
|
||||
| workflow-stopper | CI/CD workflow management | - |
|
||||
|
||||
---
|
||||
|
||||
## URL Mapping Reference
|
||||
|
||||
### Repositories We Own (use pezkuwichain URLs)
|
||||
```
|
||||
# Core SDK (Rust)
|
||||
github.com/pezkuwichain/pezkuwi-sdk
|
||||
github.com/pezkuwichain/pezkuwi-subxt
|
||||
github.com/pezkuwichain/pezkuwi-zombienet-sdk
|
||||
|
||||
# JavaScript/TypeScript Libraries
|
||||
github.com/pezkuwichain/pezkuwi-api
|
||||
github.com/pezkuwichain/pezkuwi-extension
|
||||
github.com/pezkuwichain/pezkuwi-common
|
||||
|
||||
# Library Forks
|
||||
github.com/pezkuwichain/parity-db
|
||||
github.com/pezkuwichain/parity-scale-codec
|
||||
github.com/pezkuwichain/pezframe-metadata
|
||||
github.com/pezkuwichain/merkle-mountain-range
|
||||
github.com/pezkuwichain/wasm-instrument
|
||||
|
||||
# Community
|
||||
github.com/pezkuwichain/pezkuwi-fellows
|
||||
github.com/pezkuwichain/awesome-hez
|
||||
github.com/pezkuwichain/kurdistan_blockchain-akademy
|
||||
```
|
||||
|
||||
### External Repositories (use original URLs)
|
||||
| Our Reference | Original URL |
|
||||
|---------------|--------------|
|
||||
| xcm-format | github.com/polkadot-fellows/xcm-format |
|
||||
| try-runtime-cli | github.com/paritytech/try-runtime-cli |
|
||||
| trie | github.com/paritytech/trie |
|
||||
| srtool | github.com/paritytech/srtool |
|
||||
| parity-common | github.com/paritytech/parity-common |
|
||||
| arkworks-extensions | github.com/paritytech/arkworks-extensions |
|
||||
| chainextension-registry | github.com/parity/chainextension-registry |
|
||||
| substrate-developer-hub | github.com/substrate-developer-hub |
|
||||
|
||||
### External Websites (use original URLs)
|
||||
| Our Reference | Original URL |
|
||||
|---------------|--------------|
|
||||
| shawntabrizi.com/bizinikiwi-* | shawntabrizi.com/substrate-* |
|
||||
| pezkuwichain.github.io | paritytech.github.io |
|
||||
|
||||
---
|
||||
|
||||
## Code Usage Examples
|
||||
|
||||
```rust
|
||||
// Website URLs (.io)
|
||||
"https://pezkuwichain.io"
|
||||
"https://network.pezkuwichain.io"
|
||||
"https://docs.pezkuwichain.io"
|
||||
|
||||
// Application URLs (.app)
|
||||
"https://pezkuwichain.app"
|
||||
"https://www.pezkuwichain.app"
|
||||
"https://docs.pezkuwichain.app"
|
||||
"https://js.pezkuwichain.app"
|
||||
"https://releases.pezkuwichain.app"
|
||||
"https://telemetry.pezkuwichain.app"
|
||||
|
||||
// RPC Endpoints
|
||||
"wss://rpc.pezkuwichain.io" // Mainnet WS
|
||||
"wss://zagros-rpc.pezkuwichain.io" // Zagros WS
|
||||
|
||||
// GitHub Repositories
|
||||
"https://github.com/pezkuwichain/pezkuwi-sdk"
|
||||
"https://github.com/pezkuwichain/pezkuwi-api"
|
||||
"https://github.com/pezkuwichain/pezkuwi-extension"
|
||||
"https://github.com/pezkuwichain/awesome-hez"
|
||||
|
||||
// NPM Packages
|
||||
"@pezkuwi/api"
|
||||
"@pezkuwi/types"
|
||||
"@pezkuwi/util"
|
||||
"@pezkuwi/util-crypto"
|
||||
"@pezkuwi/keyring"
|
||||
"@pezkuwi/extension-dapp"
|
||||
"@pezkuwi/extension-inject"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
---
|
||||
|
||||
## VPS Runner Infrastructure
|
||||
|
||||
**GitHub Actions Self-Hosted Runners:**
|
||||
|
||||
| VPS | IP Address | SSH | Runner Label | Status |
|
||||
|-----|------------|-----|--------------|--------|
|
||||
| VPS1 | 37.60.230.9 | `ssh root@37.60.230.9` | ubuntu-large | Active |
|
||||
| VPS2 | 62.146.235.186 | `ssh root@62.146.235.186` | ubuntu-xlarge | Active |
|
||||
|
||||
**Runner Configuration:**
|
||||
- Both runners work in parallel for CI workloads
|
||||
- VPS1: Primary domain server + runner
|
||||
- VPS2: Dedicated runner for larger jobs
|
||||
|
||||
**Monitoring:**
|
||||
```bash
|
||||
# Check runner status
|
||||
gh run list --limit 10
|
||||
|
||||
# SSH to runners
|
||||
ssh root@37.60.230.9
|
||||
ssh root@62.146.235.186
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
*Last updated: 2026-01-06*
|
||||
@@ -1,152 +0,0 @@
|
||||
# Rebrand İlerleme Listesi
|
||||
|
||||
**Son Güncelleme:** 2025-12-16
|
||||
**Toplam Crate:** 76 (REBRAND_MAP'ten)
|
||||
**Rebrand Durumu:** 75/76 tamamlandı (98.7%)
|
||||
|
||||
## Durum Açıklamaları
|
||||
- ⏳ Bekliyor
|
||||
- ✅ Rebrand Tamamlandı (Cargo.toml name doğru)
|
||||
- 🔨 Derleme Hatası (rebrand tamam ama compile hatası var)
|
||||
- ❌ Eksik/Bulunamadı
|
||||
|
||||
---
|
||||
|
||||
## Özet
|
||||
|
||||
| Kategori | Toplam | Tamamlanan | Durum |
|
||||
| --- | --- | --- | --- |
|
||||
| pez-* prefix | 29 | 29 | ✅ |
|
||||
| pezbridge-* | 8 | 8 | ✅ |
|
||||
| pezsnowbridge-* | 25 | 24 | ⚠️ 1 eksik |
|
||||
| xcm-pez-* | 8 | 8 | ✅ |
|
||||
| pezmmr-* | 2 | 2 | ✅ |
|
||||
| bp/pezbp-* | 2 | 2 | ✅ |
|
||||
| peztest-* | 1 | 1 | ✅ |
|
||||
| asset-test-pezutils | 1 | 1 | ✅ |
|
||||
| **TOPLAM** | **76** | **75** | **98.7%** |
|
||||
|
||||
---
|
||||
|
||||
## İlerleme Tablosu
|
||||
|
||||
| # | Yeni İsim | Durum | Konum |
|
||||
| --- | --- | --- | --- |
|
||||
| 1 | asset-test-pezutils | ✅ | pezcumulus/teyrchains/runtimes/assets/test-utils |
|
||||
| 2 | pez-chain-spec-guide-runtime | ✅ | docs/sdk/src/reference_docs/chain_spec_runtime |
|
||||
| 3 | pez-equivocation-detector | ✅ | pezbridges/relays/equivocation |
|
||||
| 4 | pez-erasure-coding-fuzzer | ✅ | pezkuwi/erasure-coding/fuzzer |
|
||||
| 5 | pez-ethereum-standards | ✅ | bizinikiwi/primitives/pez-ethereum-standards |
|
||||
| 6 | pez-finality-relay | ✅ | pezbridges/relays/finality |
|
||||
| 7 | pez-fork-tree | ✅ | bizinikiwi/utils/pez-fork-tree |
|
||||
| 8 | pez-generate-bags | ✅ | bizinikiwi/utils/pezframe/pez-generate-bags |
|
||||
| 9 | pez-kitchensink-runtime | ✅🔨 | bizinikiwi/bin/node/runtime (622 derleme hatası) |
|
||||
| 10 | pez-messages-relay | ✅ | pezbridges/relays/messages |
|
||||
| 11 | pez-minimal-template-node | ✅ | templates/minimal/node |
|
||||
| 12 | pez-minimal-template-runtime | ✅ | templates/minimal/runtime |
|
||||
| 13 | pez-node-bench | ✅ | bizinikiwi/bin/node/bench |
|
||||
| 14 | pez-node-primitives | ✅ | bizinikiwi/bin/node/primitives |
|
||||
| 15 | pez-node-rpc | ✅ | bizinikiwi/bin/node/rpc |
|
||||
| 16 | node-runtime-pez-generate-bags | ✅ | bizinikiwi/utils/pezframe/pez-generate-bags/node-runtime |
|
||||
| 17 | pez-node-template-release | ✅ | bizinikiwi/scripts/ci/pez-node-template-release |
|
||||
| 18 | pez-node-testing | ✅ | bizinikiwi/bin/node/testing |
|
||||
| 19 | pez-penpal-emulated-chain | ✅ | pezcumulus/teyrchains/integration-tests/emulated/chains/teyrchains/testing/penpal |
|
||||
| 20 | pez-penpal-runtime | ✅ | pezcumulus/teyrchains/runtimes/testing/penpal |
|
||||
| 21 | pez-remote-ext-tests-bags-list | ✅ | pezkuwi/utils/remote-ext-tests/bags-list |
|
||||
| 22 | pez-revive-dev-node | ✅ | bizinikiwi/pezframe/revive/dev-node/node |
|
||||
| 23 | pez-revive-dev-runtime | ✅ | bizinikiwi/pezframe/revive/dev-node/runtime |
|
||||
| 24 | pez-slot-range-helper | ✅ | pezkuwi/runtime/common/pez-slot-range-helper |
|
||||
| 25 | pez-solochain-template-node | ✅ | templates/solochain/node |
|
||||
| 26 | pez-solochain-template-runtime | ✅ | templates/solochain/runtime |
|
||||
| 27 | pez-subkey | ✅ | bizinikiwi/bin/utils/pez-subkey |
|
||||
| 28 | pez-template-zombienet-tests | ✅ | templates/zombienet |
|
||||
| 29 | peztest-runtime-constants | ✅ | pezkuwi/runtime/test-runtime/constants |
|
||||
| 30 | pez-tracing-gum | ✅ | pezkuwi/node/gum |
|
||||
| 31 | pez-tracing-gum-proc-macro | ✅ | pezkuwi/node/gum/proc-macro |
|
||||
| 32 | bp-header-pez-chain | ✅ | pezbridges/primitives/header-chain |
|
||||
| 33 | pezbp-runtime | ✅ | pezbridges/primitives/runtime |
|
||||
| 34 | pezbridge-hub-pezkuwichain-emulated-chain | ✅ | pezcumulus/teyrchains/integration-tests/emulated/chains/teyrchains/pezbridges/bridge-hub-pezkuwichain |
|
||||
| 35 | pezbridge-hub-pezkuwichain-integration-tests | ✅ | pezcumulus/teyrchains/integration-tests/emulated/tests/pezbridges/bridge-hub-pezkuwichain |
|
||||
| 36 | pezbridge-hub-pezkuwichain-runtime | ✅ | pezcumulus/teyrchains/runtimes/bridge-hubs/bridge-hub-pezkuwichain |
|
||||
| 37 | pezbridge-hub-test-utils | ✅ | pezcumulus/teyrchains/runtimes/bridge-hubs/test-utils |
|
||||
| 38 | pezbridge-hub-zagros-emulated-chain | ✅ | pezcumulus/teyrchains/integration-tests/emulated/chains/teyrchains/pezbridges/bridge-hub-zagros |
|
||||
| 39 | pezbridge-hub-zagros-integration-tests | ✅ | pezcumulus/teyrchains/integration-tests/emulated/tests/pezbridges/bridge-hub-zagros |
|
||||
| 40 | pezbridge-hub-zagros-runtime | ✅ | pezcumulus/teyrchains/runtimes/bridge-hubs/bridge-hub-zagros |
|
||||
| 41 | pezbridge-runtime-common | ✅ | pezbridges/bin/runtime-common |
|
||||
| 42 | pezmmr-gadget | ✅ | bizinikiwi/client/merkle-mountain-range |
|
||||
| 43 | pezmmr-rpc | ✅ | bizinikiwi/client/merkle-mountain-range/rpc |
|
||||
| 44 | pezsnowbridge-beacon-primitives | ✅ | pezbridges/snowbridge/primitives/beacon |
|
||||
| 45 | pezsnowbridge-core | ✅ | pezbridges/snowbridge/primitives/core |
|
||||
| 46 | pezsnowbridge-ethereum | ✅ | pezbridges/snowbridge/primitives/ethereum |
|
||||
| 47 | pezsnowbridge-inbound-queue-primitives | ✅ | pezbridges/snowbridge/primitives/inbound-queue |
|
||||
| 48 | pezsnowbridge-merkle-tree | ✅ | pezbridges/snowbridge/primitives/merkle-tree |
|
||||
| 49 | pezsnowbridge-outbound-queue-primitives | ✅ | pezbridges/snowbridge/primitives/outbound-queue |
|
||||
| 50 | pezsnowbridge-outbound-queue-runtime-api | ✅ | pezbridges/snowbridge/pezpallets/outbound-queue/runtime-api |
|
||||
| 51 | pezsnowbridge-outbound-queue-v2-runtime-api | ✅ | pezbridges/snowbridge/pezpallets/outbound-queue-v2/runtime-api |
|
||||
| 52 | pezsnowbridge-pezpallet-ethereum-client | ✅ | pezbridges/snowbridge/pezpallets/ethereum-client |
|
||||
| 53 | pezsnowbridge-pezpallet-ethereum-client-fixtures | ✅ | pezbridges/snowbridge/pezpallets/ethereum-client/fixtures |
|
||||
| 54 | pezsnowbridge-pezpallet-inbound-queue | ✅ | pezbridges/snowbridge/pezpallets/inbound-queue |
|
||||
| 55 | pezsnowbridge-pezpallet-inbound-queue-fixtures | ✅ | pezbridges/snowbridge/pezpallets/inbound-queue/fixtures |
|
||||
| 56 | pezsnowbridge-pezpallet-inbound-queue-v2 | ✅ | pezbridges/snowbridge/pezpallets/inbound-queue-v2 |
|
||||
| 57 | pezsnowbridge-pezpallet-inbound-queue-v2-fixtures | ✅ | pezbridges/snowbridge/pezpallets/inbound-queue-v2/fixtures |
|
||||
| 58 | pezsnowbridge-pezpallet-outbound-queue | ✅ | pezbridges/snowbridge/pezpallets/outbound-queue |
|
||||
| 59 | pezsnowbridge-pezpallet-outbound-queue-v2 | ✅ | pezbridges/snowbridge/pezpallets/outbound-queue-v2 |
|
||||
| 60 | pezsnowbridge-pezpallet-system | ✅ | pezbridges/snowbridge/pezpallets/system |
|
||||
| 61 | pezsnowbridge-pezpallet-system-frontend | ✅ | pezbridges/snowbridge/pezpallets/system-frontend |
|
||||
| 62 | pezsnowbridge-pezpallet-system-v2 | ✅ | pezbridges/snowbridge/pezpallets/system-v2 |
|
||||
| 63 | pezsnowbridge-runtime-common | ❌ | Mevcut değil veya farklı isimle |
|
||||
| 64 | pezsnowbridge-runtime-test-common | ✅ | pezbridges/snowbridge/runtime/test-common |
|
||||
| 65 | pezsnowbridge-system-runtime-api | ✅ | pezbridges/snowbridge/pezpallets/system/runtime-api |
|
||||
| 66 | pezsnowbridge-system-v2-runtime-api | ✅ | pezbridges/snowbridge/pezpallets/system-v2/runtime-api |
|
||||
| 67 | pezsnowbridge-test-utils | ✅ | pezbridges/snowbridge/test-utils |
|
||||
| 68 | pezsnowbridge-verification-primitives | ✅ | pezbridges/snowbridge/primitives/verification |
|
||||
| 69 | xcm-pez-docs | ✅ | pezkuwi/xcm/docs |
|
||||
| 70 | xcm-pez-emulator | ✅ | pezcumulus/xcm/xcm-pez-emulator |
|
||||
| 71 | xcm-pez-executor-integration-tests | ✅ | pezkuwi/xcm/xcm-executor/integration-tests |
|
||||
| 72 | xcm-pez-procedural | ✅ | pezkuwi/xcm/procedural |
|
||||
| 73 | xcm-runtime-pezapis | ✅ | pezkuwi/xcm/xcm-runtime-pezapis |
|
||||
| 74 | xcm-pez-simulator | ✅ | pezkuwi/xcm/xcm-pez-simulator |
|
||||
| 75 | xcm-pez-simulator-example | ✅ | pezkuwi/xcm/xcm-pez-simulator/example |
|
||||
| 76 | xcm-pez-simulator-fuzzer | ✅ | pezkuwi/xcm/xcm-pez-simulator/fuzzer |
|
||||
|
||||
---
|
||||
|
||||
## Bilinen Derleme Sorunları
|
||||
|
||||
Bu crate'lerin rebrand'i tamamlandı ancak derleme hataları var:
|
||||
|
||||
1. **pez-kitchensink-runtime** - 622 hata (macro expansion ve type resolution sorunları)
|
||||
2. **pezkuwi-sdk (umbrella)** - pezframe_benchmarking_pezpallet_pov import düzeltildi
|
||||
|
||||
### Bu Oturumda Düzeltilen Sorunlar:
|
||||
|
||||
1. `pezpallet-contracts-fixtures/build/Cargo.toml` - workspace inheritance kaldırıldı
|
||||
2. `pezpallet-revive-fixtures/build.rs` - panic_immediate_abort yeni syntax'a güncellendi
|
||||
3. `asset-hub-zagros pezpezsnowbridge` → `pezsnowbridge` double prefix düzeltildi
|
||||
4. `bridge-hub-pezkuwichain/weights` - snowbridge_pezpallet → pezsnowbridge_pezpallet dosya rename
|
||||
5. `bridge-hub-zagros/weights` - aynı rename
|
||||
6. `umbrella/src/lib.rs` - pezframe_benchmarking_pallet_pov → pezframe_benchmarking_pezpallet_pov
|
||||
|
||||
---
|
||||
|
||||
## Sonraki Adımlar
|
||||
|
||||
1. [ ] Derleme hatalarını düzelt (pez-kitchensink-runtime öncelikli)
|
||||
2. [ ] Workspace-wide cargo check geçmeli
|
||||
3. [ ] Crates.io publish planına geç
|
||||
4. [ ] CI/CD workflow'larını güncelle
|
||||
|
||||
---
|
||||
|
||||
## Log
|
||||
|
||||
### 2025-12-16
|
||||
- Rebrand durumu tam olarak değerlendirildi
|
||||
- 75/76 crate rebrand tamamlanmış bulundu
|
||||
- pezsnowbridge-runtime-common mevcut değil (muhtemelen merge edilmiş)
|
||||
- REBRAND_PROGRESS.md gerçek durumu yansıtacak şekilde güncellendi
|
||||
- Birkaç derleme hatası düzeltildi (fixtures build scripts, weight file renames)
|
||||
|
||||
### 2025-12-15
|
||||
- İlerleme listesi oluşturuldu
|
||||
- scan_old_words.py scripti hazırlandı
|
||||
@@ -1,127 +0,0 @@
|
||||
import os
|
||||
import sys
|
||||
|
||||
# HARİÇ TUTULACAK KLASÖRLER
|
||||
EXCLUDE_DIRS = {'crate_placeholders', '.git', 'target', 'node_modules', '__pycache__'}
|
||||
|
||||
# Düzeltilecek Kalıplar ve Yerine Geçecek Değerler
|
||||
# Tekrar eden önekleri temizler.
|
||||
REPLACEMENT_MAP = {
|
||||
"pezpez": "pez",
|
||||
"Pezpez": "Pez",
|
||||
"PEZPEZ": "PEZ",
|
||||
"PeZPeZ": "PeZ",
|
||||
"pezPez": "pez",
|
||||
"PEZpez": "PEZ",
|
||||
}
|
||||
|
||||
def is_path_excluded(path):
|
||||
"""Verilen yolun yasaklı bir klasörün içinde olup olmadığını kontrol eder."""
|
||||
parts = path.split(os.sep)
|
||||
return any(excluded in parts for excluded in EXCLUDE_DIRS)
|
||||
|
||||
def fix_double_prefix(text):
|
||||
"""Metin içindeki çift PEZ öneklerini tek PEZ önekiyle değiştirir."""
|
||||
for old_prefix, new_prefix in REPLACEMENT_MAP.items():
|
||||
text = text.replace(old_prefix, new_prefix)
|
||||
return text
|
||||
|
||||
def process_content_updates(root_dir):
|
||||
"""Belirtilen dizin altındaki tüm hedef dosyaların içeriğini günceller."""
|
||||
# Sadece .rs ve .toml gibi kod dosyalarını hedefleyelim.
|
||||
TARGET_EXTENSIONS = ('.rs', '.toml', '.md', '.txt', '.yml', '.yaml', '.json', '.py')
|
||||
|
||||
print("--- Adım 1: Dosya İçeriklerinde Çift Önek Düzeltme ---")
|
||||
for dirpath, dirnames, filenames in os.walk(root_dir, topdown=True):
|
||||
dirnames[:] = [d for d in dirnames if d not in EXCLUDE_DIRS]
|
||||
if is_path_excluded(dirpath):
|
||||
continue
|
||||
|
||||
for filename in filenames:
|
||||
if filename.endswith(TARGET_EXTENSIONS) or filename == 'Cargo.lock':
|
||||
filepath = os.path.join(dirpath, filename)
|
||||
|
||||
if os.path.basename(filepath) == os.path.basename(sys.argv[0]):
|
||||
continue
|
||||
|
||||
try:
|
||||
with open(filepath, 'r', encoding='utf-8', errors='ignore') as f:
|
||||
content = f.read()
|
||||
|
||||
original_content = content
|
||||
content = fix_double_prefix(content)
|
||||
|
||||
if content != original_content:
|
||||
with open(filepath, 'w', encoding='utf-8') as f:
|
||||
f.write(content)
|
||||
print(f" [İÇERİK DÜZELTİLDİ] Dosya içeriği: {filepath}")
|
||||
|
||||
except Exception as e:
|
||||
print(f" [HATA] İçerik düzeltilirken: {filepath} -> {e}")
|
||||
|
||||
def rename_pezpez_paths(root_dir):
|
||||
"""Dosya ve klasör adlarında geçen 'pezpez' önekini 'pez' olarak düzeltir (bottom-up)."""
|
||||
|
||||
# 2. Klasör İsimlerini Düzelt (topdown=False, en alttan yukarı güvenli işlem)
|
||||
print("\n--- Adım 2: Klasör İsimlerinin Düzeltilmesi (pezpez -> pez) ---")
|
||||
for dirpath, dirnames, filenames in os.walk(root_dir, topdown=False):
|
||||
|
||||
if any(excluded in dirpath.split(os.sep) for excluded in EXCLUDE_DIRS):
|
||||
continue
|
||||
|
||||
dirname = os.path.basename(dirpath)
|
||||
original_dirname = dirname
|
||||
new_dirname = fix_double_prefix(dirname)
|
||||
|
||||
if new_dirname != original_dirname:
|
||||
old_path = dirpath
|
||||
new_path = os.path.join(os.path.dirname(dirpath), new_dirname)
|
||||
|
||||
if os.path.exists(old_path) and not os.path.exists(new_path):
|
||||
try:
|
||||
os.rename(old_path, new_path)
|
||||
print(f" [RENAME-DIR] {original_dirname} -> {new_dirname}")
|
||||
except OSError as e:
|
||||
print(f" [HATA] Klasör adlandırılamadı {original_dirname}: {e}")
|
||||
|
||||
# 3. Dosya İsimlerini Düzelt (topdown=True, kökten aşağı)
|
||||
print("\n--- Adım 3: Dosya İsimlerinin Düzeltilmesi (pezpez -> pez) ---")
|
||||
for dirpath, dirnames, filenames in os.walk(root_dir, topdown=True):
|
||||
|
||||
dirnames[:] = [d for d in dirnames if d not in EXCLUDE_DIRS]
|
||||
if is_path_excluded(dirpath):
|
||||
continue
|
||||
|
||||
for filename in filenames:
|
||||
original_filename = filename
|
||||
new_filename = fix_double_prefix(filename)
|
||||
|
||||
if new_filename != original_filename:
|
||||
old_path = os.path.join(dirpath, original_filename)
|
||||
new_path = os.path.join(dirpath, new_filename)
|
||||
|
||||
if os.path.exists(old_path) and not os.path.exists(new_path):
|
||||
try:
|
||||
os.rename(old_path, new_path)
|
||||
print(f" [RENAME-FILE] {original_filename} -> {new_filename}")
|
||||
except OSError as e:
|
||||
print(f" [HATA] Dosya adlandırılamadı {original_filename}: {e}")
|
||||
|
||||
|
||||
def main():
|
||||
root_dir = os.getcwd()
|
||||
print("==================================================")
|
||||
print(f"🔧 PEZPEZ DÜZELTME (İçerik ve Ad) İşlemi Başlatılıyor...")
|
||||
print(f"⚠️ Çalışma Dizini: {root_dir}")
|
||||
print("==================================================")
|
||||
|
||||
# Önce içerikleri düzelt (dosya yolları değişmeden)
|
||||
process_content_updates(root_dir)
|
||||
|
||||
# Ardından dosya ve klasör adlarını düzelt
|
||||
rename_pezpez_paths(root_dir)
|
||||
|
||||
print("\n✅ PEZPEZ Düzeltme işlemi tamamlandı.")
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
@@ -1,96 +0,0 @@
|
||||
import os
|
||||
import sys
|
||||
|
||||
# HARİÇ TUTULACAK KLASÖRLER
|
||||
EXCLUDE_DIRS = {'crate_placeholders', '.git', 'target', 'node_modules', '__pycache__'}
|
||||
|
||||
# Yeniden adlandırma haritası (Basit: sadece 'pallet'in önüne 'pez' ekle)
|
||||
RENAME_MAP = {
|
||||
# Tireli (kebab-case) isimlendirmeler için
|
||||
"pallet-": "pezpallet-",
|
||||
# Alt çizgili (snake_case) isimlendirmeler için
|
||||
"pallet_": "pezpallet_",
|
||||
}
|
||||
|
||||
# Not: Bu betik, 'Pallet-' veya 'PALLET-' gibi büyük harf varyasyonlarını dosya sisteminde
|
||||
# (çoğunlukla küçük harf veya tireli kullanılan) adreslemeyebilir, ancak en yaygın olanları hedefler.
|
||||
|
||||
def is_path_excluded(path):
|
||||
"""Verilen yolun yasaklı bir klasörün içinde olup olmadığını kontrol eder."""
|
||||
parts = path.split(os.sep)
|
||||
return any(excluded in parts for excluded in EXCLUDE_DIRS)
|
||||
|
||||
def rename_paths(root_dir):
|
||||
"""
|
||||
Dosya ve klasör adlarında geçen 'pallet' önekini 'pezpallet' olarak değiştirir.
|
||||
Bottom-up (en alttan yukarı) yaklaşımıyla klasör adlarını güvenli bir şekilde değiştirir.
|
||||
"""
|
||||
|
||||
# Adım 1: Dosya İsimlerini Düzelt (topdown=True, kökten aşağı)
|
||||
print("--- Adım 1: Dosya İsimlerinin Güncellenmesi (pallet -> pezpallet) ---")
|
||||
for dirpath, dirnames, filenames in os.walk(root_dir, topdown=True):
|
||||
|
||||
# Yasaklı klasörleri atla
|
||||
dirnames[:] = [d for d in dirnames if d not in EXCLUDE_DIRS]
|
||||
if any(excluded in dirpath.split(os.sep) for excluded in EXCLUDE_DIRS):
|
||||
continue
|
||||
|
||||
for filename in filenames:
|
||||
original_filename = filename
|
||||
new_filename = filename
|
||||
|
||||
for old_prefix, new_prefix in RENAME_MAP.items():
|
||||
if old_prefix in new_filename:
|
||||
# Basit string değiştirme, pez yaratma riskini taşıyoruz.
|
||||
new_filename = new_filename.replace(old_prefix, new_prefix)
|
||||
|
||||
if new_filename != original_filename:
|
||||
old_path = os.path.join(dirpath, original_filename)
|
||||
new_path = os.path.join(dirpath, new_filename)
|
||||
|
||||
if os.path.exists(old_path) and not os.path.exists(new_path):
|
||||
try:
|
||||
os.rename(old_path, new_path)
|
||||
print(f" [RENAME-FILE] {original_filename} -> {new_filename}")
|
||||
except OSError as e:
|
||||
print(f" [HATA] Dosya adlandırılamadı {original_filename}: {e}")
|
||||
|
||||
# Adım 2: Klasör İsimlerini Düzelt (topdown=False, en alttan yukarı güvenli işlem)
|
||||
print("\n--- Adım 2: Klasör İsimlerinin Güncellenmesi (pallet -> pezpallet) ---")
|
||||
for dirpath, dirnames, filenames in os.walk(root_dir, topdown=False):
|
||||
|
||||
if any(excluded in dirpath.split(os.sep) for excluded in EXCLUDE_DIRS):
|
||||
continue
|
||||
|
||||
dirname = os.path.basename(dirpath)
|
||||
original_dirname = dirname
|
||||
new_dirname = dirname
|
||||
|
||||
for old_prefix, new_prefix in RENAME_MAP.items():
|
||||
if old_prefix in new_dirname:
|
||||
new_dirname = new_dirname.replace(old_prefix, new_prefix)
|
||||
|
||||
if new_dirname != original_dirname:
|
||||
old_path = dirpath
|
||||
new_path = os.path.join(os.path.dirname(dirpath), new_dirname)
|
||||
|
||||
if os.path.exists(old_path) and not os.path.exists(new_path):
|
||||
try:
|
||||
os.rename(old_path, new_path)
|
||||
print(f" [RENAME-DIR] {original_dirname} -> {new_dirname}")
|
||||
except OSError as e:
|
||||
print(f" [HATA] Klasör adlandırılamadı {original_dirname}: {e}")
|
||||
|
||||
def main():
|
||||
root_dir = os.getcwd()
|
||||
print("==================================================")
|
||||
print(f"🗂️ Dosya Adı Düzeltme İşlemi Başlatılıyor (pallet -> pezpallet)...")
|
||||
print(f"⚠️ Çalışma Dizini: {root_dir}")
|
||||
print("==================================================")
|
||||
|
||||
rename_paths(root_dir)
|
||||
|
||||
print("\n✅ Dosya Adları Düzeltme işlemi tamamlandı.")
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user