From 9c0c309c39c4e6c3ef0c49cd1e37d7e8a4cb2663 Mon Sep 17 00:00:00 2001 From: Aki Wu Date: Thu, 30 Nov 2023 19:09:14 +0800 Subject: [PATCH] fix --- Rakefile | 5 ++++- src/account.rb | 4 ++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/Rakefile b/Rakefile index 87cd1e5..efdcb11 100644 --- a/Rakefile +++ b/Rakefile @@ -103,6 +103,8 @@ task :update_nominees, [:network_name] do |_t, args| kton_pool = get_storage(rpc, metadata, 'darwinia_staking', 'kton_pool', nil, nil) collator_commissions = get_collator_commissions(rpc, metadata) # includes active and waiting collators active_collator_addresses = get_active_collators(rpc, metadata) + current_exposures = get_current_exposures(rpc, metadata) + collators_no_session_key = current_exposures - active_collator_addresses identities = get_identities(rpc, metadata) # address => name commission_updates_count = CommissionUpdates.commission_updates_count(SubsquidClient.send(network_name)) @@ -183,7 +185,8 @@ task :update_nominees, [:network_name] do |_t, args| commission: collator_commissions[nominee_address], commission_updates_count: commission_updates_count[nominee_address]&.[](:count) || 0, commission_max_increase: commission_updates_count[nominee_address]&.[](:max_increase), - status: get_nominee_status(active_collator_addresses, waiting_collator_addresses, nominee_address) + status: get_nominee_status(active_collator_addresses, waiting_collator_addresses, nominee_address), + no_session_key: collators_no_session_key.include?(nominee_address) } ] end.to_h diff --git a/src/account.rb b/src/account.rb index 4092ff2..60a6e6d 100644 --- a/src/account.rb +++ b/src/account.rb @@ -192,6 +192,10 @@ def get_collator_commissions(rpc, metadata) end def get_active_collators(rpc, metadata) + get_storage(rpc, metadata, 'session', 'validators', nil, nil) +end + +def get_current_exposures(rpc, metadata) exposures_cache_id = get_storage(rpc, metadata, 'darwinia_staking', 'exposure_cache_states', nil, nil).index('Current') exposures_storage_name = "exposure_cache#{exposures_cache_id}"