Conversation
|
Caution Review failedThe pull request is closed. WalkthroughThis PR adds comprehensive logging infrastructure for activation operations across the Komodo DeFi SDK. It introduces activation parameter logging in RPC clients, extends ActivationRpcData with min/max connected fields, and embeds debug logging throughout protocol-specific activation strategies for observability. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes
Possibly related PRs
Suggested labels
Suggested reviewers
Poem
✨ Finishing touches🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (13)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull Request Overview
This PR adds debug logging for coin activation operations and introduces configuration for controlling electrum server connections. The changes enhance observability of activation processes and provide more control over server connectivity.
- Adds comprehensive debug logging across all activation strategy implementations
- Introduces
min_connectedandmax_connectedparameters for electrum server configuration - Implements activation parameter logging in API client layers
- Adds test infrastructure for health check functionality
Reviewed Changes
Copilot reviewed 13 out of 13 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| zhtlc_activation_strategy.dart | Adds debug logging for ZHTLC coin activation parameters |
| utxo_activation_strategy.dart | Adds debug logging for UTXO/Electrum activation with task tracking |
| tendermint_activation_strategy.dart | Adds debug logging for Tendermint platform activation |
| qtum_activation_strategy.dart | Adds debug logging for QTUM coin activation |
| eth_with_tokens_activation_strategy.dart | Adds debug logging for ETH platform activation with token support |
| eth_task_activation_strategy.dart | Adds debug logging for task-based ETH activation |
| erc20_activation_strategy.dart | Adds debug logging for ERC20 token activation |
| custom_erc20_activation_strategy.dart | Adds debug logging for custom ERC20 token activation |
| bch_activation_strategy.dart | Adds debug logging for BCH and SLP token activation |
| activation_params.dart | Adds min/max connected server configuration with validation |
| trezor_auth_service_test.dart | Adds test stub for ensureKdfHealthy method |
| kdf_api_client.dart | Implements activation parameter logging at API client level |
| komodo_defi_framework.dart | Implements activation parameter logging in framework layer |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| (forLightWallet ? 'electrum_servers' : 'servers'): electrum! | ||
| .map((e) => e.toJsonRequest()) | ||
| .toList(), | ||
| if (electrum != null) 'max_connected': (maxConnected ?? 1), |
There was a problem hiding this comment.
The max_connected parameter is being included whenever electrum is not null, but it should only be included when explicitly set. This could send default values even when not intended. Change condition to if (maxConnected != null) to only include when explicitly provided.
| if (electrum != null) 'max_connected': (maxConnected ?? 1), | |
| if (maxConnected != null) 'max_connected': maxConnected, |
| } | ||
| } catch (e) { | ||
| // Silently ignore logging errors | ||
| _logger.info('[ACTIVATION] Error logging parameters: $e'); |
There was a problem hiding this comment.
Error logging uses info level instead of warning or error level. Change to _logger.warning('[ACTIVATION] Error logging parameters: $e'); to properly indicate this is an error condition.
| _logger.info('[ACTIVATION] Error logging parameters: $e'); | |
| _logger.warning('[ACTIVATION] Error logging parameters: $e'); |
| } | ||
| } catch (e) { | ||
| // Silently ignore logging errors | ||
| _logger.fine('[ACTIVATION] Error logging parameters: $e'); |
There was a problem hiding this comment.
Error logging uses fine level instead of warning or error level. Change to _logger.warning('[ACTIVATION] Error logging parameters: $e'); to properly indicate this is an error condition.
| _logger.fine('[ACTIVATION] Error logging parameters: $e'); | |
| _logger.warning('[ACTIVATION] Error logging parameters: $e'); |
|
Visit the preview URL for this PR (updated for commit 17311fc): https://kdf-sdk--pr261-dev-7ni5xs9c.web.app (expires Sun, 02 Nov 2025 20:20:39 GMT) 🔥 via Firebase Hosting GitHub Action 🌎 Sign: 9c1b6e6c010cf0b965c455ba7a69c4aedafa8a1d |
|
Visit the preview URL for this PR (updated for commit 17311fc): https://komodo-playground--pr261-dev-528l63z8.web.app (expires Sun, 02 Nov 2025 20:21:15 GMT) 🔥 via Firebase Hosting GitHub Action 🌎 Sign: 2bfedd77fdea45b25ba7c784416e81f177aa5c47 |
logging
max conns
Summary by CodeRabbit
New Features
Tests