You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
if context.donate_to_option.is_some(){println!("Donation Target: {}", context.donate_to_option.unwrap());}
36
36
37
37
letmut current_challenge_id = String::new();
38
+
letmut last_active_challenge_data:Option<ChallengeData> = None;// ADDED: Store last valid challenge data
38
39
loop{
39
-
let challenge_params = match utils::get_challenge_params(&context.client,&context.api_url, context.cli_challenge,&mut current_challenge_id){
40
-
Ok(Some(params)) => params,
40
+
let challenge_params:ChallengeData = match utils::get_challenge_params(&context.client,&context.api_url, context.cli_challenge,&mut current_challenge_id){
41
+
Ok(Some(params)) => {
42
+
last_active_challenge_data = Some(params.clone());// Store on success
43
+
params
44
+
},
41
45
Ok(None) => continue,
42
46
Err(e) => {
43
-
eprintln!("⚠️ Critical API Error during challenge check: {}. Retrying in 1 minute...", e);
let old_challenge_id = last_seen_challenge_id.clone();
119
134
current_challenge_id.clear();
120
135
121
-
let challenge_params = match utils::get_challenge_params(&context.client,&context.api_url, context.cli_challenge,&mut current_challenge_id){
136
+
let challenge_params:ChallengeData = match utils::get_challenge_params(&context.client,&context.api_url, context.cli_challenge,&mut current_challenge_id){
122
137
Ok(Some(params)) => {
123
138
backoff_challenge.reset();
139
+
last_active_challenge_data = Some(params.clone());// Store on success
124
140
if first_run || (context.cli_challenge.is_none() && params.challenge_id != old_challenge_id){
125
141
// Create a dummy DataDir with index 0 to calculate the base path for scanning
126
142
let temp_data_dir = DataDir::Mnemonic(DataDirMnemonic{mnemonic:&mnemonic_phrase,account: cli.mnemonic_account,deriv_index:0});
letmut last_active_challenge_data:Option<ChallengeData> = None;// ADDED: Store last valid challenge data
216
246
217
247
loop{
218
-
let challenge_params = match utils::get_challenge_params(&context.client,&context.api_url, context.cli_challenge,&mut current_challenge_id){
219
-
Ok(Some(p)) => p,
248
+
let challenge_params:ChallengeData = match utils::get_challenge_params(&context.client,&context.api_url, context.cli_challenge,&mut current_challenge_id){
249
+
Ok(Some(p)) => {
250
+
last_active_challenge_data = Some(p.clone());// Store on success
251
+
p
252
+
},
220
253
Ok(None) => continue,
221
254
Err(e) => {
222
-
eprintln!("⚠️ Could not fetch active challenge (Ephemeral Key Mode): {}. Retrying in 5 minutes...", e);
0 commit comments