diff --git a/.claude/CRITICAL_STATE.md b/.claude/CRITICAL_STATE.md new file mode 100644 index 00000000..8c109076 --- /dev/null +++ b/.claude/CRITICAL_STATE.md @@ -0,0 +1,131 @@ +# PEZKUWI MAİNNET KRİTİK DURUM + +**Son Guncelleme:** 2026-02-14 UTC +**Bu dosyayi her oturum basinda OKU!** + +--- + +## 1. VPS ERİŞİMİ + +**BAĞLANTI:** `ssh root@` - Tum VPS'lere root erisimi var. +**Toplam:** 18 VPS | 21 Validator | 4 Collator + +| VPS | IP | Rol | Calisan Node'lar | +|-----|-----|-----|------------------| +| VPS1 | 37.60.230.9 | Web + CI | Landing page + transfer service + CI runner | +| VPS2 | 62.146.235.186 | Merkez | val [5,6,7,21] + telemetry + CI runner | +| **VPS3** | **217.77.6.126** | **Ana Sunucu (94GB)** | val [1,2,3,4] + col [Azad(AH), Erin(People)] + bridge + zagros + CI runner | +| VPS-A | 217.77.15.51 | Validator | val [14] | +| VPS-B | 161.97.183.44 | Validator | val [13] | +| VPS-C | 161.97.185.100 | Validator | val [12] | +| VPS-D | 109.123.229.159 | Validator | val [16] | +| VPS-E | 161.97.116.241 | Validator | val [17] | +| VPS-F | 46.250.241.121 | Validator | val [18] | +| VPS-G | 164.68.121.181 | Validator | val [19] | +| VPS-H | 158.220.93.23 | Validator | val [20] | +| VPS-I | 207.180.194.103 | Validator | val [11] | +| VPS-J | 173.249.57.228 | Collator | col [Beritan(AH), Firaz(People)] | +| VPS-K | 173.249.48.125 | Bos | BOS (binary var, kurulmamis) | +| VPS-L | 167.86.70.241 | Validator | val [10] | +| VPS-M | 167.86.108.190 | Validator | val [9] | +| VPS-N | 207.180.233.147 | Validator | val [8] | +| VPS-O | 178.18.252.120 | Validator | val [15] | + +--- + +## 2. MEVCUT NETWORK DURUMU + +### Relay Chain (PezkuwiChain Mainnet) +- **Durum:** CALISIYOR +- **spec_version:** 1_020_003 +- **Validator Sayisi:** 21 +- **Bootnode:** `/ip4/217.77.6.126/tcp/30333/p2p/12D3KooWHY3k8ksTjT7izsUTbns1QLs8TraFVMcANtYhYKB4N69P` +- **RPC:** VPS3 port 9944 + +### Teyrchains +| Para ID | Isim | Durum | spec_version | +|---------|------|-------|-------------| +| 1000 | Asset Hub | CALISIYOR | 1_020_003 | +| 1004 | People Chain | CALISIYOR | 1_020_003 | + +--- + +## 3. COLLATOR KEY'LERİ + +### Asset Hub Collator'lari +``` +Azad: + public: 0x7c8c6f463d124a601fbc7d425daad82651193f35730957982519dbcff6d55f71 + ss58: 5Et1WgtNjUdMxyvHjAKGN8Nq1ivhUyANYjwKpCL8a46D8mCp + +Beritan: + public: 0x845fd9541c46c3dc4325ddcbae06596382771d943f49d9659bdbbed4abd4eb09 + ss58: 5F4GeiJE2oBcPdxfeYfWL4bu4iJfduzJk4aHhttemwhpscpQ +``` + +### People Chain Collator'lari +``` +Erin: + public: 0xb0f474e2f94868485e7269e503d6b327af392449c0878670021365ac7e173206 + ss58: 5G4iuN7MvkhdwN4ikZd9uijBzxV78LUWQro3rc9HrfWWzeuS + +Firaz: + public: 0x7244ec68c6f873e386ef8039ad6e9436e5e97c0d28bab4499090b9443034eb04 + ss58: 5EeXnoiPoXko3Hqggy74oSgxCFKpkNoppqTcV9MWUQAtmZHj +``` + +--- + +## 4. SUDO KEY (FOUNDER) + +``` +Address: 5CyuFfbF95rzBxru7c9yEsX4XmQXUxpLUcbj9RLg9K1cGiiF +Scheme: sr25519 +``` + +--- + +## 4.1 TEST WALLET + +``` +Mnemonic: REDACTED_MNEMONIC +Address: 5DXv3Dc5xELckTgcYa2dm1TSZPgqDPxVDW3Cid4ALWpVjY3w +``` + +--- + +## 5. SONRAKİ ADIMLAR (YAPILMASI GEREKEN) + +### Runtime Upgrade Gerektiren Degisiklikler +1. [ ] **NominationPoolsApi** - Asset Hub runtime'a eklendi (kod hazir, deploy gerekli) +2. [ ] **StakingApi** - Asset Hub runtime'a eklendi (kod hazir, deploy gerekli) +3. [ ] Trust Score sistemi migration'lari (People Chain) + +### Sudo ile Yapilmasi Gereken Ayarlar (Runtime Upgrade Sonrasi) +4. [ ] **MinJoinBond** - NominationPools palet'inde sudo ile ayarlanmali (Asset Hub) +5. [ ] **MinCreateBond** - NominationPools palet'inde sudo ile ayarlanmali (Asset Hub) + +### Diger +6. [ ] Tiki pallet Collection 0 olusturma (XCM script hazir) +7. [ ] Nova Wallet uyumluluk testi (NominationPoolsApi eklenince) + +--- + +## 6. MAINNET WALLETS DOSYASI + +**Konum:** `/home/mamostehp/res/MAINNET_WALLETS_20260128_235407.json` + +--- + +## 7. RPC BAGLANTILARI + +| Chain | Endpoint | +|-------|----------| +| Relay | `ws://217.77.6.126:9944` | +| Asset Hub | `ws://217.77.6.126:40944` | +| People Chain | `ws://217.77.6.126:41944` | +| Public RPC | `wss://rpc.pezkuwichain.io` | + +--- + +*Bu dosya her oturum basinda okunmali ve her onemli degisiklikte guncellenmelidir.* diff --git a/pezcumulus/teyrchains/runtimes/assets/asset-hub-pezkuwichain/src/lib.rs b/pezcumulus/teyrchains/runtimes/assets/asset-hub-pezkuwichain/src/lib.rs index c51f3d3a..dfcf3721 100644 --- a/pezcumulus/teyrchains/runtimes/assets/asset-hub-pezkuwichain/src/lib.rs +++ b/pezcumulus/teyrchains/runtimes/assets/asset-hub-pezkuwichain/src/lib.rs @@ -1898,6 +1898,66 @@ impl_runtime_apis! { } } + impl pezpallet_nomination_pools_runtime_api::NominationPoolsApi< + Block, + AccountId, + Balance, + > for Runtime { + fn pending_rewards(member: AccountId) -> Balance { + NominationPools::api_pending_rewards(member).unwrap_or_default() + } + + fn points_to_balance(pool_id: pezpallet_nomination_pools::PoolId, points: Balance) -> Balance { + NominationPools::api_points_to_balance(pool_id, points) + } + + fn balance_to_points(pool_id: pezpallet_nomination_pools::PoolId, new_funds: Balance) -> Balance { + NominationPools::api_balance_to_points(pool_id, new_funds) + } + + fn pool_pending_slash(pool_id: pezpallet_nomination_pools::PoolId) -> Balance { + NominationPools::api_pool_pending_slash(pool_id) + } + + fn member_pending_slash(member: AccountId) -> Balance { + NominationPools::api_member_pending_slash(member) + } + + fn pool_needs_delegate_migration(pool_id: pezpallet_nomination_pools::PoolId) -> bool { + NominationPools::api_pool_needs_delegate_migration(pool_id) + } + + fn member_needs_delegate_migration(member: AccountId) -> bool { + NominationPools::api_member_needs_delegate_migration(member) + } + + fn member_total_balance(member: AccountId) -> Balance { + NominationPools::api_member_total_balance(member) + } + + fn pool_balance(pool_id: pezpallet_nomination_pools::PoolId) -> Balance { + NominationPools::api_pool_balance(pool_id) + } + + fn pool_accounts(pool_id: pezpallet_nomination_pools::PoolId) -> (AccountId, AccountId) { + NominationPools::api_pool_accounts(pool_id) + } + } + + impl pezpallet_staking_runtime_api::StakingApi for Runtime { + fn nominations_quota(balance: Balance) -> u32 { + Staking::api_nominations_quota(balance) + } + + fn eras_stakers_page_count(era: pezsp_staking::EraIndex, account: AccountId) -> pezsp_staking::Page { + Staking::api_eras_stakers_page_count(era, account) + } + + fn pending_rewards(era: pezsp_staking::EraIndex, account: AccountId) -> bool { + Staking::api_pending_rewards(era, account) + } + } + #[cfg(feature = "try-runtime")] impl pezframe_try_runtime::TryRuntime for Runtime { fn on_runtime_upgrade(checks: pezframe_try_runtime::UpgradeCheckSelect) -> (Weight, Weight) { diff --git a/vendor/ss58-registry/src/token.rs b/vendor/ss58-registry/src/token.rs index 4af1ded4..adfdabce 100644 --- a/vendor/ss58-registry/src/token.rs +++ b/vendor/ss58-registry/src/token.rs @@ -39,7 +39,7 @@ impl Token { /// `TokenRegistry` variant. /// /// ``` - /// # use pezkuwi_ss58_registry::{Token, TokenRegistry}; + /// # use pezsp_ss58_registry::{Token, TokenRegistry}; /// # #[cfg(feature = "std")] /// # fn x() { /// let token: Token = TokenRegistry::Hez.into(); @@ -60,7 +60,7 @@ impl Token { /// different amounts. /// /// ``` -/// # use pezkuwi_ss58_registry::{Token, TokenAmount}; +/// # use pezsp_ss58_registry::{Token, TokenAmount}; /// # #[cfg(feature = "std")] /// # fn x() { /// let token = Token { name: "I❤U", decimals: 8 };