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
This commit is contained in:
2025-12-22 16:36:14 +03:00
parent 8acf59c6aa
commit 65b7f5e640
1393 changed files with 17834 additions and 179151 deletions
@@ -15,16 +15,16 @@ targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
codec = { default-features = false, features = ["derive"], workspace = true }
log = { default-features = false, workspace = true }
pezframe-benchmarking = { optional = true, workspace = true }
pezframe-support = { default-features = false, workspace = true }
pezframe-system = { default-features = false, workspace = true }
log = { default-features = false, workspace = true }
pezpallet-identity-kyc = { workspace = true, default-features = false }
scale-info = { default-features = false, features = [
"derive",
], workspace = true }
pezsp-runtime = { default-features = false, workspace = true }
pezsp-std = { default-features = false, workspace = true }
scale-info = { default-features = false, features = [
"derive",
], workspace = true }
# Projemizin özel tiplerini ve trait'lerini içeren kütüphane
pezkuwi-primitives = { workspace = true, default-features = false }
@@ -38,38 +38,38 @@ pezsp-io = { workspace = true }
[features]
default = ["std"]
std = [
"codec/std",
"pezframe-benchmarking?/std",
"pezframe-support/std",
"pezframe-system/std",
"log/std",
"pezpallet-balances/std",
"pezpallet-identity-kyc/std",
"pezpallet-nfts/std",
"pezkuwi-primitives/std",
"scale-info/std",
"pezsp-core/std",
"pezsp-io/std",
"pezsp-runtime/std",
"pezsp-std/std",
"codec/std",
"log/std",
"pezframe-benchmarking?/std",
"pezframe-support/std",
"pezframe-system/std",
"pezkuwi-primitives/std",
"pezpallet-balances/std",
"pezpallet-identity-kyc/std",
"pezpallet-nfts/std",
"pezsp-core/std",
"pezsp-io/std",
"pezsp-runtime/std",
"pezsp-std/std",
"scale-info/std",
]
runtime-benchmarks = [
"pezframe-benchmarking",
"pezframe-benchmarking/runtime-benchmarks",
"pezframe-support/runtime-benchmarks",
"pezframe-system/runtime-benchmarks",
"pezpallet-balances/runtime-benchmarks",
"pezpallet-identity-kyc/runtime-benchmarks",
"pezpallet-nfts/runtime-benchmarks",
"pezkuwi-primitives/runtime-benchmarks",
"pezsp-io/runtime-benchmarks",
"pezsp-runtime/runtime-benchmarks",
"pezframe-benchmarking",
"pezframe-benchmarking/runtime-benchmarks",
"pezframe-support/runtime-benchmarks",
"pezframe-system/runtime-benchmarks",
"pezkuwi-primitives/runtime-benchmarks",
"pezpallet-balances/runtime-benchmarks",
"pezpallet-identity-kyc/runtime-benchmarks",
"pezpallet-nfts/runtime-benchmarks",
"pezsp-io/runtime-benchmarks",
"pezsp-runtime/runtime-benchmarks",
]
try-runtime = [
"pezframe-support/try-runtime",
"pezframe-system/try-runtime",
"pezpallet-balances/try-runtime",
"pezpallet-identity-kyc/try-runtime",
"pezpallet-nfts/try-runtime",
"pezsp-runtime/try-runtime",
"pezframe-support/try-runtime",
"pezframe-system/try-runtime",
"pezpallet-balances/try-runtime",
"pezpallet-identity-kyc/try-runtime",
"pezpallet-nfts/try-runtime",
"pezsp-runtime/try-runtime",
]
@@ -1,9 +1,6 @@
//! Benchmarking setup for pezpallet-referral
#![cfg(feature = "runtime-benchmarks")]
use super::*;
use crate::Pezpallet as Referral;
use pezframe_benchmarking::v2::*;
use pezframe_system::RawOrigin;
@@ -43,5 +40,5 @@ mod benchmarks {
assert_eq!(ReferralCount::<T>::get(&referrer), 1);
}
impl_benchmark_test_suite!(Referral, crate::mock::new_test_ext(), crate::mock::Test);
impl_benchmark_test_suite!(Pezpallet, crate::mock::new_test_ext(), crate::mock::Test);
}
@@ -120,9 +120,11 @@ pub mod pezpallet {
pub struct Pezpallet<T>(_);
#[pezpallet::config]
pub trait Config: pezframe_system::Config + pezpallet_identity_kyc::Config + TypeInfo {
type RuntimeEvent: From<Event<Self>>
+ IsType<<Self as pezframe_system::Config>::RuntimeEvent>;
pub trait Config:
pezframe_system::Config<RuntimeEvent: From<Event<Self>>>
+ pezpallet_identity_kyc::Config
+ TypeInfo
{
type WeightInfo: weights::WeightInfo;
/// Default referrer account - used when no referrer is specified
@@ -3,7 +3,7 @@
use crate as pezpallet_referral;
use pezframe_support::{
construct_runtime, derive_impl, parameter_types,
traits::{ConstU128, ConstU32},
traits::ConstU128,
};
use pezframe_system::EnsureRoot;
use pezsp_core::H256;
@@ -66,7 +66,6 @@ impl pezpallet_identity_kyc::types::CitizenNftProvider<AccountId> for MockCitize
}
impl pezpallet_identity_kyc::Config for Test {
type RuntimeEvent = RuntimeEvent;
type Currency = Balances;
type GovernanceOrigin = EnsureRoot<AccountId>;
type WeightInfo = ();
@@ -87,7 +86,6 @@ impl pezframe_support::traits::Get<AccountId> for DefaultReferrerAccount {
}
impl pezpallet_referral::Config for Test {
type RuntimeEvent = RuntimeEvent;
type WeightInfo = ();
type DefaultReferrer = DefaultReferrerAccount;
type PenaltyPerRevocation = PenaltyPerRevocationAmount;
@@ -124,8 +122,3 @@ pub fn new_test_ext() -> pezsp_io::TestExternalities {
ext.execute_with(|| System::set_block_number(1));
ext
}
/// Build test externalities for penalty tests (needs revoked citizens)
pub fn new_test_ext_with_citizens() -> pezsp_io::TestExternalities {
new_test_ext()
}
@@ -1,5 +1,5 @@
use crate::{
mock::*, pezpallet::ReferralInfo, Error, Event, PendingReferrals, ReferralCount, Referrals,
mock::*, Error, Event, PendingReferrals, ReferralCount, Referrals,
ReferrerStatsStorage,
};
use pezframe_support::{assert_noop, assert_ok};
@@ -215,25 +215,25 @@ fn referral_score_tier_0_to_10() {
new_test_ext().execute_with(|| {
// Update stats directly for testing
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 0;
});
assert_eq!(ReferralPallet::get_referral_score(&REFERRER), 0);
// 1 referral = 10 points
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 1;
});
assert_eq!(ReferralPallet::get_referral_score(&REFERRER), 10);
// 5 referrals = 50 points
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 5;
});
assert_eq!(ReferralPallet::get_referral_score(&REFERRER), 50);
// 10 referrals = 100 points
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 10;
});
assert_eq!(ReferralPallet::get_referral_score(&REFERRER), 100);
@@ -246,19 +246,19 @@ fn referral_score_tier_11_to_50() {
new_test_ext().execute_with(|| {
// 11 referrals: 100 + (1 * 5) = 105
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 11;
});
assert_eq!(ReferralPallet::get_referral_score(&REFERRER), 105);
// 20 referrals: 100 + (10 * 5) = 150
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 20;
});
assert_eq!(ReferralPallet::get_referral_score(&REFERRER), 150);
// 50 referrals: 100 + (40 * 5) = 300
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 50;
});
assert_eq!(ReferralPallet::get_referral_score(&REFERRER), 300);
@@ -271,19 +271,19 @@ fn referral_score_tier_51_to_100() {
new_test_ext().execute_with(|| {
// 51 referrals: 300 + (1 * 4) = 304
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 51;
});
assert_eq!(ReferralPallet::get_referral_score(&REFERRER), 304);
// 75 referrals: 300 + (25 * 4) = 400
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 75;
});
assert_eq!(ReferralPallet::get_referral_score(&REFERRER), 400);
// 100 referrals: 300 + (50 * 4) = 500
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 100;
});
assert_eq!(ReferralPallet::get_referral_score(&REFERRER), 500);
@@ -296,13 +296,13 @@ fn referral_score_capped_at_500() {
new_test_ext().execute_with(|| {
// 101+ referrals capped at 500
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 101;
});
assert_eq!(ReferralPallet::get_referral_score(&REFERRER), 500);
// Even 1000 referrals = 500
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 1000;
});
assert_eq!(ReferralPallet::get_referral_score(&REFERRER), 500);
@@ -315,7 +315,7 @@ fn referral_score_with_balanced_penalty() {
new_test_ext().execute_with(|| {
// 10 good referrals = 100 points
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 10;
stats.revoked_referrals = 0;
});
@@ -325,7 +325,7 @@ fn referral_score_with_balanced_penalty() {
// Penalty: (4 * 10) / 4 = 10 points deducted
// Base score: 6 * 10 = 60
// Final: 60 - 10 = 50
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 10;
stats.revoked_referrals = 4;
});
@@ -335,7 +335,7 @@ fn referral_score_with_balanced_penalty() {
// Penalty: (8 * 10) / 4 = 20 points deducted
// Base score: 100 + (2 * 5) = 110
// Final: 110 - 20 = 90
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 20;
stats.revoked_referrals = 8;
});
@@ -353,7 +353,7 @@ fn referral_score_cannot_go_negative() {
// Penalty: (5 * 10) / 4 = 12 points
// Base score: 0
// Final: 0 - 12 = 0 (saturating_sub)
ReferrerStatsStorage::<Test>::mutate(&REFERRER, |stats| {
ReferrerStatsStorage::<Test>::mutate(REFERRER, |stats| {
stats.total_referrals = 5;
stats.revoked_referrals = 5;
});
@@ -398,7 +398,7 @@ fn get_inviter_returns_none_for_non_referred() {
#[test]
fn force_confirm_referral_works() {
use crate::types::{InviterProvider, ReferralScoreProvider};
use crate::types::InviterProvider;
new_test_ext().execute_with(|| {
// Force confirm referral (sudo-only)