Commit Graph

60 Commits

Author SHA1 Message Date
pezkuwichain 0680d646ad fix(metrics): make runtime_can_publish_metrics test more robust
- Wait for 4 finalized blocks instead of 2 (more time for bitfield processing)
- Add retry loop (3 attempts, 2s delay) for metric propagation through wasm tracing
- Replace bare unwrap() with descriptive assertion message
- Lower threshold from > 1 to > 0 for bitfield counter
- Print available teyrchain/pezkuwi metrics on failure for diagnostics
2026-02-22 22:16:57 +03:00
pezkuwichain 1a1f046935 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 a654d2a66e 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 1b68751b6e chore: cargo fmt + regenerate umbrella crate 2026-02-21 00:38:40 +03:00
pezkuwichain 8178617efc 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 a162dcd694 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 44d12fcba2 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 3881557470 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 cedf51fcde 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 0f9be4aa03 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 6bbbd683ab 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 fe7319182d 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 dd78f55ba8 bump: spec_version 1_020_003 → 1_020_004 for fresh mainnet launch 2026-02-14 23:40:18 +03:00
pezkuwichain e15fb3db11 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 c6b854209e 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 0055013f6a fix: chain spec corrections - tokenDecimals 18->12, ss58Format, para_id 2026-02-11 04:52:28 +03:00
pezkuwichain 2c7cc226e1 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 bf99794cd5 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 6328308e44 fix: format pezkuwichain Cargo.toml with taplo 2026-02-10 15:55:04 +03:00
pezkuwichain 1a78351842 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 0c70d04ff3 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 99827da3a8 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 77712f7a99 fix: disable WASM-dependent CI jobs and update syscalls
- tests.yml: disable quick-benchmarks (requires WASM)
- build-publish-images.yml: disable all build jobs (require WASM)
- Update execute-worker-syscalls and prepare-worker-syscalls

All disabled due to serde_core + Rust 1.88 + wasm32 bug.
Tracking: https://github.com/pezkuwichain/pezkuwi-sdk/issues/358
2026-01-28 08:10:10 +03:00
pezkuwichain d67b5f4021 fix: update GitHub URLs from master to main branch
- Replace tree/master with tree/main in all documentation and code comments
- Fix issues/168 -> pull/168 reference (issue was converted to PR)
2026-01-27 20:30:20 +03:00
pezkuwichain 78095d125e 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 bdcb9be2c7 feat: add pezkuwichain mainnet configuration
Mainnet Configuration:
- Add pezkuwichain_mainnet_config() in chain_spec.rs with HEZ token properties
- Add "pezkuwichain-mainnet" CLI option in command.rs
- Update relay chain name to "pezkuwichain-mainnet" in asset_hubs.rs

Asset Hub Genesis (asset-hub-pezkuwichain):
- Add wUSDT asset (ID: 1000, 6 decimals) for wrapped USDT
- Update treasury, founder, presale accounts to secure mainnet wallets
- Update collator addresses (Azad, Beritan, Civan, Dildar)

People Chain Genesis (people-pezkuwichain):
- Add PezkuwichainGenesis runtime type for mainnet
- Update founder account to secure mainnet wallet
- Update collator addresses (Erin, Firaz, Goran, Hevi)

Token Configuration:
- HEZ: 18 decimals, SS58 format 42
- PEZ: Asset ID 1, 12 decimals
- wHEZ: Asset ID 2, 12 decimals
- wUSDT: Asset ID 1000, 6 decimals
2026-01-25 19:42:43 +03:00
pezkuwichain 949cb29ba7 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 48e8ce8f2f chore: add dicle.json chain spec
Add the Dicle testnet chain spec that was created during
the Kusama → Dicle rebrand but not committed.
2026-01-24 19:44:48 +03:00
pezkuwichain f291117ad4 fix: taplo format all Cargo.toml files 2026-01-07 18:47:06 +03:00
pezkuwichain 043f6e875a fix: CI - zepter feature propagation (347 issues), taplo format, umbrella 2026-01-07 18:16:03 +03:00
pezkuwichain f68c21c77a fix: CI quick-checks - fmt, taplo, umbrella version 2026-01-07 17:19:27 +03:00
pezkuwichain 5a48ce4498 fix: restore dev-dependencies for clippy --all-targets --all-features
Uncomment dev-dependencies that were previously commented out to break
circular dependencies. These dependencies are needed for tests to compile
when running clippy with --all-targets --all-features.

Changes include:
- pezkuwi/node/*: Add pezkuwi-node-subsystem-test-helpers, pezkuwi-primitives-test-helpers
- pezkuwi/xcm/*: Add pezpallet-xcm, xcm-pez-simulator
- pezcumulus/client/*: Add test client, runtime, and sproof builder deps
- bizinikiwi/pezframe/*: Add bizinikiwi-test-utils, pezframe-support-test,
  pezpallet-transaction-payment, pezpallet-example-basic, etc.
- vendor/pezkuwi-zombienet-sdk: Fix imports from zombienet_sdk to pezkuwi_zombienet_sdk

All runtime-benchmarks feature flags have been updated accordingly.

cargo clippy --all-targets --all-features --workspace now passes.
2026-01-07 16:53:09 +03:00
pezkuwichain c343223ccd 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 ea341084f0 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 b8990884db style: apply taplo format to all Cargo.toml files 2026-01-04 17:37:38 +03:00
pezkuwichain 479010094e 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 cf463fe8ee 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 e43cc3d4fb 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 b6d35f6faf 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 bfc2cc5284 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 652d7d88fc fix(umbrella): publish pezpallet-root-testing and pezpallet-xcm-benchmarks
These crates were excluded from umbrella due to `publish = false`.
Since Polkadot SDK publishes them, we should too.

- Remove publish = false from pezpallet-root-testing
- Remove publish = false from pezpallet-xcm-benchmarks
- Regenerate umbrella to include both crates
2025-12-26 07:01:38 +03:00
pezkuwichain 5f63b2bccb fix: add vec macro import for runtime-benchmarks feature 2025-12-24 08:42:20 +03:00
pezkuwichain 3c60d579a6 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 e8c03b5c86 fix: address multiple compilation issues
- Revert thiserror to 1.0.69 (fatality 0.1.1 incompatible with 2.x)
- Fix MerkleProofError format string (Rust 2024 compatibility)
- Fix deprecated websocket::framed::WsConfig -> Config in telemetry
- Fix zombienet-sdk import: sc_chain_spec -> pezsc_chain_spec
2025-12-23 09:37:12 +03:00
pezkuwichain 34b4735a2a chore: format TOML files with taplo 2025-12-23 09:37:12 +03:00
pezkuwichain 1912e1b56a fix: resolve all markdownlint errors
- Replace 68 "[here]" links with descriptive text (MD059)
- Fix table separator spacing in 6 project files (MD060)
- Add trailing newlines to 2 files (MD047)
- Disable MD060 rule for .claude/ internal files
- Update markdownlint config with MD060: false

All project files now pass markdownlint --config .github/.markdownlint.yaml

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 09:37:11 +03:00
pezkuwichain 70ddb6516f feat: Vendor pezkuwi-subxt and pezkuwi-zombienet-sdk into monorepo
- Add pezkuwi-subxt crates to vendor/pezkuwi-subxt
- Add pezkuwi-zombienet-sdk crates to vendor/pezkuwi-zombienet-sdk
- Convert git dependencies to path dependencies
- Add vendor crates to workspace members
- Remove test/example crates from vendor (not needed for SDK)
- Fix feature propagation issues detected by zepter
- Fix workspace inheritance for internal dependencies
- All 606 crates now in workspace
- All 6919 internal dependency links verified correct
- No git dependencies remaining
2025-12-23 09:37:11 +03:00
pezkuwichain 4c8f281051 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 65b7f5e640 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 8acf59c6aa fix: Complete rebrand fixes for dockerfiles, scripts, and service files
- Update all Dockerfile references from polkadot to pezkuwi
- Fix package names in scripts (pezpallet-*, pezframe-*)
- Update GitHub repository URLs to pezkuwichain/pezkuwi-sdk
- Fix template Dockerfiles (minimal, solochain, teyrchain)
- Update service file paths and binary names
- Fix path references from bizinikiwi/frame/ to bizinikiwi/pezframe/
2025-12-23 09:37:11 +03:00