@@ -421,7 +421,9 @@ impl<Signer: SignerTrait<T>, T: StacksMessageCodec + Clone + Send + Debug> RunLo
421
421
"reward_cycle_before_refresh" => reward_cycle_before_refresh,
422
422
"current_reward_cycle" => current_reward_cycle,
423
423
"configured_for_current" => Self :: is_configured_for_cycle( & self . stacks_signers, current_reward_cycle) ,
424
+ "registered_for_current" => Self :: is_registered_for_cycle( & self . stacks_signers, current_reward_cycle) ,
424
425
"configured_for_next" => Self :: is_configured_for_cycle( & self . stacks_signers, next_reward_cycle) ,
426
+ "registered_for_next" => Self :: is_registered_for_cycle( & self . stacks_signers, next_reward_cycle) ,
425
427
"is_in_next_prepare_phase" => is_in_next_prepare_phase,
426
428
) ;
427
429
@@ -456,6 +458,17 @@ impl<Signer: SignerTrait<T>, T: StacksMessageCodec + Clone + Send + Debug> RunLo
456
458
signer. reward_cycle ( ) == reward_cycle
457
459
}
458
460
461
+ fn is_registered_for_cycle (
462
+ stacks_signers : & HashMap < u64 , ConfiguredSigner < Signer , T > > ,
463
+ reward_cycle : u64 ,
464
+ ) -> bool {
465
+ let Some ( signer) = stacks_signers. get ( & ( reward_cycle % 2 ) ) else {
466
+ return false ;
467
+ } ;
468
+ signer. reward_cycle ( ) == reward_cycle
469
+ && matches ! ( signer, ConfiguredSigner :: RegisteredSigner ( _) )
470
+ }
471
+
459
472
fn cleanup_stale_signers ( & mut self , current_reward_cycle : u64 ) {
460
473
let mut to_delete = Vec :: new ( ) ;
461
474
for ( idx, signer) in & mut self . stacks_signers {
0 commit comments