43 Commits

Author SHA1 Message Date
pezkuwichain a683b836fe chore: repo cleanup and security hardening
- Remove stale root files: chain_spec.json, pezkuwi.gbp, publish.log,
  test-asset-hub.toml (moved to .claude/)
- Move publish_batch.sh and publish_crates.sh to scripts/
- Remove hardcoded /home/mamostehp/res/ paths from scripts and comments
  (WALLETS_FILE env var now required, no silent fallback)
- Update .gitignore: add protection entries for regenerable artifacts
  and .claude/ experience files
2026-04-13 21:30:38 +03:00
pezkuwichain c5ce61616e fix(rc-runtime): use TeleportTracking for CheckedAccount in XCM benchmarks
CheckAccount returns AccountId but CheckedAccount expects
Get<Option<(AccountId, MintLocation)>>. TeleportTracking already has
the correct type signature (set to None post-AH migration).
2026-02-23 00:07:38 +03:00
pezkuwichain 5eb2769add fix: cargo fmt + LocalCheckAccount→CheckAccount rename + AH MintLocation fix
- Fix xcm_config.rs import line exceeding rustfmt max width
- Rename LocalCheckAccount to CheckAccount in RC runtime (import + type alias)
- Set AH TeleportTracking to None for teleport compatibility (RC 1_020_007, AH 1_020_007)
- Regenerate umbrella crate
2026-02-22 18:47:46 +03:00
pezkuwichain 0e7a3856c2 fix(xcm): correct MintLocation for AH migration (RC 1_020_007, AH 1_020_006)
Relay Chain no longer has mint authority — teleport tracking set to None.
Asset Hub is now the canonical minter with MintLocation::Local tracking.

RC: LocalCheckAccount → TeleportTracking = None
AH: () → TeleportTracking = Some((CheckingAccount, MintLocation::Local))
2026-02-21 04:55:14 +03:00
pezkuwichain fcb303b96e chore: cargo fmt + regenerate umbrella crate 2026-02-21 00:38:40 +03:00
pezkuwichain a516ffec65 fix(rc-runtime): remove old pezpallet_staking and related pallets for RC 1_020_006
StakingAhClient (index 67) is now Active — old NPoS staking on RC is unused.

Removed pallets:
- Staking (pezpallet_staking, index 9)
- FastUnstake (pezpallet_fast_unstake, index 15)
- VoterBagsList (pezpallet_bags_list Instance1, index 100)

Changes:
- Added NoopFallback struct for ah_client::Config::Fallback
- Updated validator_manager to use StakingAhClient
- Added RemovePallet migrations for on-chain storage cleanup
- Removed StakingConfig from genesis presets
- Cleaned up unused imports and dependencies
- Updated upgrade scripts (ah_upgrade, rc_upgrade, people_upgrade, set_ah_client_active)
2026-02-21 00:22:12 +03:00
pezkuwichain 90a6917616 chore: bump spec versions for mainnet upgrade (RC 1_020_005, AH 1_020_005, People 1_020_008) 2026-02-20 15:26:17 +03:00
pezkuwichain 21d1bc2375 test(governance): add OpenGov track configuration unit tests
Verify all 18 tracks (15 standard + 3 welati) have correct production
periods, unique IDs/names, proper origin mappings, and no leftover
test values.
2026-02-19 00:10:21 +03:00
pezkuwichain ce79d33f0d feat(governance): activate OpenGov production periods and add Welati tracks
Upgrade all 15 OpenGov track periods from Westend test values (minutes)
to Polkadot production values (hours/days). Add 3 new Welati governance
tracks (welati_election, welati_admin, citizenship_admin) with origins
and XCM routing for RC → People Chain governance via OpenGov referenda.

Bump spec_version: 1_020_007 → 1_020_008
2026-02-18 23:36:31 +03:00
pezkuwichain 4509287cf4 feat(rc): update BEEFY keys from mainnet keystore and add mainnet simulation preset
- Replace placeholder BEEFY public keys with actual mainnet keystore-derived keys for all 21 validators
- Add mainnet-sim chain spec (2 validators + real sudo key) for local upgrade testing
2026-02-18 21:23:09 +03:00
pezkuwichain 098e3041bb feat(rc): integrate StakingAhClient pallet and upgrade staking to production parameters
- Add pezpallet-staking-async-ah-client and rc-client dependencies
- Wire StakingAhClient as SessionManager and EventHandler (replacing ValidatorManager for session routing)
- Replace FullIdentificationOf with ExposureOfOrDefault for proper historical session tracking
- Route parachain reward_points through RewardValidatorsWithEraPoints
- EraPayout: switch from dynamic total_issuance to fixed 200M HEZ baseline (prevents compound inflation)
- MaxExposurePageSize: 64 → 512 (Polkadot production value)
- MaxSessionReportRetries: 5 → 64 (~6min retry window for AH reliability)
- Bump spec_version to 1_020_007
2026-02-18 21:22:45 +03:00
pezkuwichain da3a8f23c0 fix: remove staking-score from relay chain, fix CI quick-checks
- Remove pezpallet_staking_score from relay chain runtime (noter model
  lives on People Chain only)
- Update welati mock to current staking-score Config trait
- Fix staking-score feature propagation (zepter: std, runtime-benchmarks)
- Format vendor subxt example files (rustfmt)
- Regenerate umbrella crate
- Update CRITICAL_STATE.md with noter delegation status
2026-02-16 19:50:13 +03:00
pezkuwichain 9667dbb30a fix: validator stash balance must exceed bond amount + existential deposit
STASH*2 ensures validators have enough balance to cover both the
staking bond and the existential deposit at genesis.
2026-02-15 00:48:18 +03:00
pezkuwichain 3fa2fe3ea6 bump: spec_version 1_020_003 → 1_020_004 for fresh mainnet launch 2026-02-14 23:40:18 +03:00
pezkuwichain 0a61d6ccbe fix: connect authorship EventHandler to Staking for reward point distribution
Without this, block authors are never reported to the staking pallet,
resulting in zero reward points and no era payouts.
2026-02-14 20:31:30 +03:00
pezkuwichain 3e8ad87e15 chore: bump spec_version to 1_020_003 for runtime upgrade
Bump all three runtime spec_versions from 1_020_002 to 1_020_003
to prepare for on-chain runtime upgrade deploying trust score
system changes to the live chain.
2026-02-13 23:47:48 +03:00
pezkuwichain 54e77cfc61 chore: register tiki v2 migration and bump spec_version to 1_020_002
- Added pezpallet_tiki::migrations::v2::MigrateToV2 to People chain
  Migrations tuple (populates TikiHolder on upgrade)
- Bumped spec_version 1_020_001 -> 1_020_002 for both relay chain
  and People chain runtimes
2026-02-11 04:38:18 +03:00
pezkuwichain 9cc8bd1095 fix: forward session events to Staking pallet for era management
ValidatorManager now forwards session hooks to Staking pallet:
- new_session: Staking receives session changes to trigger era
- start_session: Staking can initialize era stakers
- end_session: Staking can finalize era rewards

This fixes the issue where staking era never started because
session events were not being forwarded to the Staking pallet.
2026-02-10 16:29:57 +03:00
pezkuwichain b20735a6b0 fix: format pezkuwichain Cargo.toml with taplo 2026-02-10 15:55:04 +03:00
pezkuwichain 172b04e4d4 fix: workflow failures - cargo fmt, taplo fmt, and StakingConfig
- Update taplo.toml exclude patterns to use glob patterns for zombienet files
- Add StakingConfig to genesis_config_presets for proper era initialization
- Fix cargo fmt issues in identity-kyc pallet and pezkuwichain runtime
- Set num_cores to 2 for system teyrchains (Asset Hub + People Chain)
2026-02-10 08:03:10 +03:00
pezkuwichain 1d64a1317a feat: add staking score pallet to relay chain and fix referral default
Relay Chain:
- Add pezpallet-staking-score to runtime
- Implement RelayStakingInfoProvider to read from pallet_staking
- StakingScore pallet index = 92

People Chain:
- Add DefaultReferrer type to identity-kyc pallet Config
- Change DefaultReferrer from Alice to founder address
- Make referrer parameter optional in apply_for_citizenship
- Fallback to DefaultReferrer when no valid referrer provided
2026-02-07 00:43:28 +03:00
pezkuwichain 6a02481f00 feat: update mainnet genesis configuration
- Update validator and collator addresses in genesis presets
- Update special account addresses (founder, treasury, presale, rewards)
- Reduce Asset Hub collators from 4 to 2
- Remove obsolete zombienet config files
2026-01-29 15:25:53 +03:00
pezkuwichain 267fcec12d fix: quick-checks CI failures - taplo format, zepter, umbrella
1. TOML format (taplo): 123 files reformatted using correct config
   - Command: taplo format --config .config/taplo.toml

2. Zepter feature propagation fix:
   - pezframe-support: added pezsp-timestamp/try-runtime to try-runtime feature

3. generate-umbrella.py bug fix:
   - Script crashed when Cargo.toml/src didn't exist in umbrella dir
   - Added existence checks before deletion
2026-01-26 00:39:59 +03:00
pezkuwichain 204a41a17f fix: upgrade alloy crates to 1.5.x for Rust 1.88 compatibility
- alloy-consensus: 1.0.41 → 1.5.2
- alloy-core: 1.2.1 → 1.5.2
- alloy-primitives: 1.2.1 → 1.5.2
- alloy-trie: 0.9.1 → 0.9.3

Fixes TransactionEnvelope derive macro compatibility issue with Rust 1.88.0.
Also removes unused imports in genesis_config_presets.rs.
2026-01-25 02:47:40 +03:00
pezkuwichain 954e2703e2 rebrand: kusama → dicle
- Replace all kusama/Kusama references with dicle/Dicle
- Rename weight files from ksm_size to dcl_size
- Update papi-tests files from ksm to dcl
- Remove chain-specs/kusama.json files
- cargo check --workspace successful (Finished output)
- Update MAINNET_ROADMAP.md: FAZ 8 completed
2026-01-07 09:41:15 +03:00
pezkuwichain bd2d665c4e fix: comprehensive feature propagation and dep:serde fixes
- Fix serde optional dependency issues by adding dep:serde to serde features (24 crates)
- Run zepter to propagate runtime-benchmarks, std, try-runtime, serde, experimental, with-tracing, tuples-96 features
- Regenerate umbrella crate with proper feature propagation
- Format all TOML files with taplo

This resolves check-umbrella and check-zepter CI failures.
2026-01-04 20:37:14 +03:00
pezkuwichain 5bdc1a900a style: apply taplo format to all Cargo.toml files 2026-01-04 17:37:38 +03:00
pezkuwichain 57fef835e3 fix(ci): resolve all quick-checks failures
- Remove missing cli crate from workspace members
- Fix TOML array syntax errors in pvf and benchmarking-cli Cargo.toml
- Fix Rust import ordering with cargo fmt
- Fix feature propagation with zepter (try-runtime, runtime-benchmarks, std)
2026-01-04 17:22:12 +03:00
pezkuwichain 241bace6ad FAZ 1 Complete: Workspace compile fixes, warning cleanup, version bumps
- Fixed is_using_frame_crate() macro to check for pezframe/pezkuwi_sdk
- Removed disable_pezframe_system_supertrait_check temporary bypasses
- Feature-gated storage-benchmark and teyrchain-benchmarks code
- Fixed dead_code warnings with underscore prefix (_Header)
- Removed unused imports and shadowing use statements
- Version bumps: procedural-tools 10.0.1, benchmarking-cli 32.0.1,
  docs 0.0.2, minimal-runtime 0.0.1, yet-another-teyrchain 0.6.1, umbrella 0.1.2
- Updated MAINNET_ROADMAP.md with FAZ 1 completion status
2026-01-02 11:41:09 +03:00
pezkuwichain ed44adfb1e chore: update crates.io publish plan and fix dependencies
- Update CRATES_PUBLISH_PLAN.md with Level 0-2 completion status
- Fix binary-merkle-tree and related dependencies
- Add runtime_logger_tests.rs
- Update various Cargo.toml files
2025-12-28 11:00:56 +03:00
pezkuwichain 4666047395 chore: add Dijital Kurdistan Tech Institute to copyright headers
Updated 4763 files with dual copyright:
- Parity Technologies (UK) Ltd.
- Dijital Kurdistan Tech Institute
2025-12-27 21:28:36 +03:00
pezkuwichain 8c4fcb3288 chore: update documentation URLs to use workspace setting
Replace all docs.rs documentation URLs with documentation.workspace = true
to inherit from the workspace's docs.pezkuwichain.io URL.
2025-12-27 17:56:39 +03:00
pezkuwichain 599a11fc1f fix: add vec macro import for runtime-benchmarks feature 2025-12-24 08:42:20 +03:00
pezkuwichain 5a184fd7dc fix: resolve all broken links for check-links.yml CI
## Changes

### High Impact Fixes (RED)
- Fix radium git URL (https://https:// → github.com/paritytech/radium-0.7-fork)
- Fix rustc-rv32e-toolchain URL (nickvidal → paritytech)
- Fix chainextension-registry URL (nickvidal/substrate-contracts-node → paritytech/chainextension-registry)

### Medium Impact Fixes (YELLOW)
- Fix docs.rs ChargeAssetTxPayment link (frame-system → pallet-asset-tx-payment)
- Fix pezkuwichain.github.io → paritytech.github.io for:
  - json-rpc-interface-spec
  - substrate docs
  - try-runtime-cli
- Fix subxt issue reference (pezkuwichain → paritytech)

### Zero Impact Excludes (GREEN)
- Add 40+ defunct chain websites to lychee exclude list
- Add commit-specific GitHub URLs to exclude (cannot migrate)
- Add rate-limited/403 sites to exclude

### Documentation
- Refactor .claude/domains_repositories.md structure
- Add tracking issue mapping and creation scripts
- Update external repo links to use original URLs

Result: 🔍 9610 Total  6747 OK 🚫 0 Errors
2025-12-23 09:37:12 +03:00
pezkuwichain abc4c3989b style: Migrate to stable-only rustfmt configuration
- Remove nightly-only features from .rustfmt.toml and vendor/ss58-registry/rustfmt.toml
- Removed features: imports_granularity, wrap_comments, comment_width,
  reorder_impl_items, spaces_around_ranges, binop_separator,
  match_arm_blocks, trailing_semicolon, trailing_comma
- Format all 898 affected files with stable rustfmt
- Ensures long-term reliability without nightly toolchain dependency
2025-12-23 09:37:11 +03:00
pezkuwichain 3208f208c0 fix: Resolve cargo clippy errors and add CI workflow plan
## Changes

### Clippy Fixes
- Fixed deprecated `cargo_bin` usage in 27 test files (added #![allow(deprecated)])
- Fixed uninlined_format_args in zombienet-sdk-tests
- Fixed subxt API changes in revive/rpc/tests.rs (fetch signature, StorageValue)
- Fixed dead_code warnings in validator-pool and identity-kyc mocks
- Fixed field name `i` -> `_i` in tasks example

### CI Infrastructure
- Added .claude/WORKFLOW_PLAN.md for tracking CI fix progress
- Updated lychee.toml and taplo.toml configs

### Files Modified
- 27 test files with deprecated cargo_bin fix
- bizinikiwi/pezframe/revive/rpc/src/tests.rs (subxt API)
- pezkuwi/pezpallets/validator-pool/src/{mock,tests}.rs
- pezcumulus/teyrchains/pezpallets/identity-kyc/src/mock.rs
- bizinikiwi/pezframe/examples/tasks/src/tests.rs

## Status
- cargo clippy: PASSING
- Next: cargo fmt, zepter, workspace checks
2025-12-23 09:37:11 +03:00
pezkuwichain 830dcc9bba Development (#172)
* docs: Add CLAUDE_RULES.md with strict rebrand protection rules

- Define immutable rebrand rules that cannot be violated
- Prohibit reverting rebrand for cargo check convenience
- Establish checkpoint and audit trail requirements
- Document correct error handling approach

* refactor: Complete kurdistan-sdk to pezkuwi-sdk rebrand

- Update README.md with pezkuwi-sdk branding
- Replace all kurdistan-sdk URL references with pezkuwi-sdk
- Replace kurdistan-tech with pezkuwichain in workflows
- Update email domains from @kurdistan-tech.io to @pezkuwichain.io
- Rename tool references: kurdistan-tech-publish → pezkuwi-publish
- Update runner names: kurdistan-tech-* → pezkuwichain-*
- Update analytics/forum/matrix domains to pezkuwichain.io
- Keep 'Kurdistan Tech Institute' as organization name
- Keep tech@kurdistan.gov as official government contact
2025-12-19 23:30:43 +03:00
pezkuwichain 193f6b9294 chore: regenerate umbrella crate, fix feature propagation 2025-12-16 11:29:20 +03:00
pezkuwichain 90fd044766 fix: Complete snowbridge pezpallet rebrand and critical bug fixes
- snowbridge-pezpallet-* → pezsnowbridge-pezpallet-* (201 refs)
- pallet/ directories → pezpallet/ (4 locations)
- Fixed pezpallet.rs self-include recursion bug
- Fixed sc-chain-spec hardcoded crate name in derive macro
- Reverted .pezpallet_by_name() to .pallet_by_name() (subxt API)
- Added BizinikiwiConfig type alias for zombienet tests
- Deleted obsolete session state files

Verified: pezsnowbridge-pezpallet-*, pezpallet-staking,
pezpallet-staking-async, pezframe-benchmarking-cli all pass cargo check
2025-12-16 09:57:23 +03:00
pezkuwichain 0c5d19e3a0 Refactoring Checkpoint: (WIP) 2025-12-14 10:29:31 +03:00
pezkuwichain 6588d9a1f2 snapshot before rebranding 2025-12-14 07:37:21 +03:00
pezkuwichain 379cb741ed feat: Rebrand Polkadot/Substrate references to PezkuwiChain
This commit systematically rebrands various references from Parity Technologies'
Polkadot/Substrate ecosystem to PezkuwiChain within the kurdistan-sdk.

Key changes include:
- Updated external repository URLs (zombienet-sdk, parity-db, parity-scale-codec, wasm-instrument) to point to pezkuwichain forks.
- Modified internal documentation and code comments to reflect PezkuwiChain naming and structure.
- Replaced direct references to  with  or specific paths within the  for XCM, Pezkuwi, and other modules.
- Cleaned up deprecated  issue and PR references in various  and  files, particularly in  and  modules.
- Adjusted image and logo URLs in documentation to point to PezkuwiChain assets.
- Removed or rephrased comments related to external Polkadot/Substrate PRs and issues.

This is a significant step towards fully customizing the SDK for the PezkuwiChain ecosystem.
2025-12-14 00:04:10 +03:00
pezkuwichain e4778b4576 feat: initialize Kurdistan SDK - independent fork of Polkadot SDK 2025-12-13 15:44:15 +03:00