Skip to content

Commit eaa43d2

Browse files
committed
feat: reduce saga recovery logging
1 parent 3c6c91f commit eaa43d2

3 files changed

Lines changed: 19 additions & 8 deletions

File tree

crates/cdk-cli/src/main.rs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -252,10 +252,12 @@ async fn main() -> Result<()> {
252252
for wallet in wallets {
253253
// Recover from incomplete operations (required after wallet creation)
254254
let recovery = wallet.recover_incomplete_sagas().await?;
255-
println!(
256-
"Recovered {} operations, {} compensated, {} skipped, {} failed",
257-
recovery.recovered, recovery.compensated, recovery.skipped, recovery.failed
258-
);
255+
if !recovery.is_empty() {
256+
println!(
257+
"Recovered {} operations, {} compensated, {} skipped, {} failed",
258+
recovery.recovered, recovery.compensated, recovery.skipped, recovery.failed
259+
);
260+
}
259261
}
260262

261263
match &args.command {

crates/cdk/examples/wallet.rs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,12 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
2828

2929
// Recover from incomplete operations (required after wallet creation)
3030
let recovery: RecoveryReport = wallet.recover_incomplete_sagas().await?;
31-
println!(
32-
"Recovered {} operations, {} compensated, {} skipped, {} failed",
33-
recovery.recovered, recovery.compensated, recovery.skipped, recovery.failed
34-
);
31+
if !recovery.is_empty() {
32+
println!(
33+
"Recovered {} operations, {} compensated, {} skipped, {} failed",
34+
recovery.recovered, recovery.compensated, recovery.skipped, recovery.failed
35+
);
36+
}
3537

3638
// Check and mint pending mint quotes (optional, requires network)
3739
let minted = wallet.mint_unissued_quotes().await?;

crates/cdk/src/wallet/recovery.rs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,13 @@ pub struct RecoveryReport {
4949
pub failed: usize,
5050
}
5151

52+
impl RecoveryReport {
53+
/// Returns true if no operations were recovered, compensated, skipped, or failed.
54+
pub fn is_empty(&self) -> bool {
55+
self.recovered == 0 && self.compensated == 0 && self.skipped == 0 && self.failed == 0
56+
}
57+
}
58+
5259
/// Result of a saga recovery operation.
5360
///
5461
/// Used by individual saga resume functions to indicate the outcome.

0 commit comments

Comments
 (0)