Completely replace implementation #1

Manually merged
jjkiers merged 12 commits from push-wtvsvxromnno into master 2025-11-29 00:25:36 +00:00
3 changed files with 15 additions and 17 deletions
Showing only changes of commit 508975a086 - Show all commits

View File

@@ -148,6 +148,7 @@ mod tests {
- Use `cargo fmt` for formatting
- Use `cargo clippy` for linting
- Ensure documentation for public APIs
- _ALWAYS_ format and lint after making a change, and fix the linting errors
### 4. Commit Standards
- Commit both code and tests together

View File

@@ -119,15 +119,14 @@ impl TransactionSource for GoCardlessAdapter {
}
// Optimization: Stop if we found all wanted accounts
if let Some(_) = wanted_set {
if found_count >= target_count && target_count > 0 {
if wanted_set.is_some()
&& found_count >= target_count && target_count > 0 {
info!("Found all {} wanted accounts. Stopping search.", target_count);
return Ok(accounts);
}
}
}
}
}
info!("Found {} matching accounts in GoCardless", accounts.len());
Ok(accounts)

View File

@@ -166,8 +166,7 @@ async fn process_single_account(
if dry_run {
info!("[DRY RUN] Would create transaction {}", tx.internal_id);
stats.created += 1;
} else {
if let Err(e) = destination.create_transaction(&dest_id, &tx).await {
} else if let Err(e) = destination.create_transaction(&dest_id, &tx).await {
// Firefly might still reject it as duplicate if hash matches, even if we didn't find it via heuristic
// (unlikely if heuristic is good, but possible)
let err_str = e.to_string();
@@ -184,7 +183,6 @@ async fn process_single_account(
}
}
}
}
Ok(stats)
}