Satoshi Qazi Muhammed cc246664ee fix(usdt-bridge): replay protection, real recipients, working withdraw path, reserve check
The withdrawal direction (burn wUSDT -> release real USDT) had no
listener at all - nothing watched Pezkuwi for redemption deposits, and
the manual ProcessWithdrawals command was an empty stub. The deposit
listener also had two real bugs: it minted to the bridge's own address
instead of the sender's (a leftover "for demo" placeholder), and it
never checked whether a deposit had already been processed before
minting again.

- Add is_deposit_processed/is_withdrawal_processed idempotency checks,
  enforced before every mint/burn/release, not just recorded after.
- Fix listen_deposits() to mint to the sender's actual Pezkuwi address
  (same AccountId32, re-encoded under Pezkuwi's SS58 prefix - both
  chains share one derivation, so no memo/registration is needed) and
  to persist processed deposits to the database, which it never did.
- Add listen_withdrawals(), mirroring the deposit listener: detects
  wUSDT sent to bridge custody, burns it, verifies the Polkadot
  custody wallet actually holds enough real USDT before releasing
  (circuit breaker - an under-collateralized peg must halt loudly,
  not silently short-pay), then releases to the sender's Polkadot
  address.
- Add max_single_tx cap so one bad/anomalous event can't move an
  unbounded amount automatically.
- Add a Reserves command reporting real custody balance vs circulating
  wUSDT supply - the exact invariant that, when broken, is what the
  wallet's "waiting for liquidity" banner was masking.
- load_keypair() now prefers BRIDGE_SEED_MNEMONIC (meant to be
  Vault-injected, matching how the exchange's hot wallets are already
  provisioned) over the plaintext seed_path file, which remains only
  as a local/dev fallback with a loud warning.

Flagged, not fixed here: the event-matching in both listeners
(Debug-formatted Value string containing a slice of the bridge's SS58
text) is unverified against a live node in this environment and should
be replaced with subxt's typed/codegen API before this handles real
value. Custody is still single-keypair (no multisig/MPC threshold
signing) - that is an infrastructure/key-ceremony decision, not a code
change, and is the highest-priority follow-up.
2026-07-13 13:03:16 -07:00
2026-04-21 20:26:51 +00:00
2026-04-21 20:27:08 +00:00

Pezkuwi SDK — Sovereign Blockchain Infrastructure

Developed and maintained by Kurdistan Tech Institute

Pezkuwi SDK is a fully independent blockchain development framework, providing all the tools needed to build sovereign, interoperable blockchain networks for stateless nations and distributed communities.


Origin

Pezkuwi SDK originated as a fork of Polkadot SDK (stable2512). It has since been completely rebranded and restructured as an independent project under Kurdistan Tech Institute stewardship. All crate names, dependencies, and documentation have been updated to reflect this independence.


Architecture

┌─────────────────────────────────────────────────────────────┐
│                    Pezkuwi SDK Ecosystem                    │
├─────────────────────────────────────────────────────────────┤
│                                                              │
│   ┌─────────────────────┐    ┌─────────────────────────┐    │
│   │   Bizinikiwi        │    │      PezCumulus         │    │
│   │   (Core Framework)  │    │     (TeyrChain SDK)     │    │
│   │                     │    │                         │    │
│   │  • Runtime Engine   │    │  • Collator Framework   │    │
│   │  • Consensus        │    │  • XCM Integration      │    │
│   │  • Networking       │    │  • Relay Chain Bridge   │    │
│   └─────────────────────┘    └─────────────────────────┘    │
│              │                          │                    │
│              └──────────┬───────────────┘                    │
│                         │                                    │
│              ┌──────────▼───────────┐                        │
│              │   PezkuwiChain       │                        │
│              │   (Reference Impl)   │                        │
│              │   • TeyrChain        │                        │
│              │   • Zagros Runtime   │                        │
│              └──────────────────────┘                        │
└─────────────────────────────────────────────────────────────┘

Crate Naming Convention

Pezkuwi SDK uses a distinct naming scheme to ensure complete independence:

Component Prefix Example
Core Framework bizinikiwi- bizinikiwi-runtime
TeyrChain SDK pezcumulus- pezcumulus-client
Client Crates pezsc- pezsc-network, pezsc-consensus
Primitives pezsp- pezsp-runtime, pezsp-core
Framework pezframe- pezframe-support, pezframe-system
Pallets pezpallet- pezpallet-balances, pezpallet-staking
Staging pezstaging- pezstaging-xcm

PezkuwiChain — Reference Implementation

PezkuwiChain is the flagship blockchain built on Pezkuwi SDK, designed for Kurdish digital sovereignty.

Token Economics

HEZ — Native Gas Token

  • Purpose: Transaction fees, staking, network security
  • Model: Inflationary with staking rewards
  • Distribution: 85% staking rewards, 15% treasury

PEZ — Governance Token

  • Total Supply: 5,000,000,000 PEZ
  • Model: Fixed supply with halving cycles
  • Access: Citizenship-gated rewards

Custom Pallets

Pallet Purpose
pezpallet-presale Multi-round token launches with vesting
pezpallet-identity-kyc Decentralized identity verification
pezpallet-welati Democratic governance and voting
pezpallet-perwerde Educational platform and certificates
pezpallet-pez-treasury Community treasury with halving
pezpallet-pez-rewards Trust-based staking rewards
pezpallet-validator-pool Validator participation
pezpallet-staking-score Reputation-based metrics
pezpallet-trust Peer-to-peer trust system
pezpallet-referral Referral incentives
pezpallet-tiki NFT-based citizenship
pezpallet-token-wrapper Asset wrapping

TNPoS Consensus

Trust-enhanced Nominated Proof-of-Stake combines:

  • Economic Stake (HEZ)
  • Social Trust metrics
  • Performance scoring

TNPoS Consensus — World's First Trust-Augmented PoS

Trust-enhanced Nominated Proof-of-Stake combines:

  • Economic Stake: Traditional staking (HEZ)
  • Social Trust: Peer endorsements, citizenship level, governance participation
  • Performance Metrics: Uptime, finality participation, historical behavior

Key Innovations:

  • First implementation of social trust in consensus (academic contribution)
  • Parliamentary NFT System: 201 non-transferable governance seats
  • Sybil-resistant via citizenship verification (Tiki pallet)
  • Multi-dimensional validator scoring

Cross-Chain Integration (XCM v5)

Polkadot Asset Hub (USDT)
         │
         │ XCM Reserve Transfer
         ▼
TeyrChain (Parachain)
         │
         ├─► Presale contributions
         ├─► DEX trading (future)
         └─► Withdraw back to Asset Hub
  • Full XCM v5 implementation
  • Reserve-backed wUSDT bridge
  • HRMP channels for system teyrchains
  • Future bridges: wETH, wBTC, Ethereum, Tron, BSC

Network Roadmap

Stage Validators Status
Dev Mode 1 ✅
Local Testnet 2 ✅
Alfa Testnet 4 ✅
Beta Testnet 8 Q1 2026
Staging 20 Q1 2026
Mainnet 100 Q2 2026

Multi-Nation Platform Vision

PezkuwiChain is designed to host multiple digital nations simultaneously:

Nation Type Example Target Population
Ethnic Kurdish (PEZ) 40M+ globally
Ethnic Catalan 10M+
Ethnic Tibetan 6M+ diaspora
Ethnic Uyghur 12M+
Ethnic Basque 3M+
Cultural Armenian diaspora 8M+
Cultural Romani 10M+ worldwide
Indigenous Various tribes Land rights, heritage

Shared Infrastructure: All nations use HEZ for transactions Nation-Specific Tokens: Each group issues citizenship-gated tokens (PEZ model) Interoperable Governance: Cross-nation commerce, diplomacy on single blockchain


Use Cases

  1. Digital Governance — Parliamentary NFTs, on-chain voting, treasury management
  2. Token Launches — Compliant multi-round presales with vesting
  3. Education — Blockchain-verified certificates (Perwerde)
  4. Identity — Self-sovereign KYC and citizenship verification
  5. Cross-Chain Finance — wUSDT bridge, DeFi primitives
  6. Cultural Preservation — Language, heritage, oral tradition on-chain
  7. Remittance — Low-cost diaspora→homeland transfers ($20B+ Kurdish annual flows)

Quick Start

# Clone repository
git clone https://git.pezkuwichain.io/pezkuwichain/pezkuwi-sdk.git
cd pezkuwi-sdk

# Build release
cargo build --release

# Build with benchmarks
cargo build --release --features runtime-benchmarks

# Run local testnet
./target/release/pezkuwi-node --dev

Resource URL
Website pezkuwichain.io
App app.pezkuwichain.io
Explorer explorer.pezkuwichain.io
Documentation docs.pezkuwichain.io
RPC Endpoint wss://rpc.pezkuwichain.io

Community

Platform Link
Telegram @pezkuwichain
Discord discord.gg/pezkuwichain
Twitter @pezkuwichain
Gitea git.pezkuwichain.io/pezkuwichain
Medium @pezkuwichain
Facebook PezkuwiChain

SDK Logo SDK Logo

Pezkuwi SDK

GitLab stars  GitLab forks

StackExchange  GitLab contributors  GitLab last commit

The Pezkuwi SDK repository provides all the components needed to start building on the PezkuwiChain network, a multi-chain blockchain platform that enables different blockchains to interoperate and share information in a secure and scalable way.

Quickstart

If you want to get an example node running quickly you can execute the following getting started script:

curl --proto '=https' --tlsv1.2 -sSf https://gitlab.com/pezkuwichain/pezkuwi-sdk/-/raw/main/scripts/getting-started.sh | bash

Building

In order to build this project you need to install some dependencies, follow the instructions in this guide.

Documentation

Releases

The Pezkuwi SDK is released every three months as a Pezkuwi stableYYMM release. Each stable release is supported for one year with patches. See the release history in CHANGELOG.md and release documentation in RELEASE.md.

You can use psvm to update all dependencies to a specific version without needing to manually select the correct version for each crate.

Tooling

Pezkuwi SDK Version Manager: A simple tool to manage and update the Pezkuwi SDK dependencies in any Cargo.toml file. It will automatically update the Pezkuwi SDK dependencies to their correct crates.io version.

Security

The security policy and procedures can be found in docs/contributor/SECURITY.md.

Contributing & Code of Conduct

Ensure you follow our contribution guidelines. In every interaction and contribution, this project adheres to the Contributor Covenant Code of Conduct.

Ready to Contribute?

Take a look at the issues labeled with mentor to get started! We always recognize valuable contributions by proposing an on-chain tip to the PezkuwiChain network as a token of our appreciation.

Pezkuwi Fellowship

Development in this repo usually goes hand in hand with the fellowship organization. In short, this repository provides all the SDK pieces needed to build both PezkuwiChain and its teyrchains. But, the actual PezkuwiChain runtime lives in the fellowship/runtimes repository. Read more about the fellowship, this separation, and the RFC process in the Pezkuwi Fellows repository.

History

This repository is the amalgamation of 3 separate repositories that used to make up Pezkuwi SDK, namely Bizinikiwi, Pezkuwi and PezCumulus. Read more about the SDK in the Pezkuwi SDK Documentation.


License

Pezkuwi SDK is a derivative work based on Polkadot SDK by Parity Technologies (UK) Ltd., used under Apache-2.0 and GPL-3.0-only.

Individual crates in this repository are licensed under one of:

See each crate's Cargo.toml license field and each source file's SPDX-License-Identifier header for the applicable license.

For full attribution, significant changes, and third-party component notices, see NOTICE.


Kurdistan Tech Institute

Building sovereign infrastructure for stateless nations

S
Description
No description provided
Readme GPL-3.0
113 MiB
1 Watchers 0 Forks
Languages
Rust 98.6%
Shell 0.4%
WebAssembly 0.3%
Python 0.3%
TypeScript 0.1%