feat: migrate remaining sync decrypt/encrypt calls#8923
Conversation
de0b432 to
1c11e37
Compare
1c11e37 to
e106dc2
Compare
e106dc2 to
a52f1ae
Compare
vinhkhangtieu
left a comment
There was a problem hiding this comment.
migrate decrypt/encrypt call to async
|
Claude finished @bdesoky's task —— View job PR Analysis: Migrate Sync Decrypt/Encrypt Calls ✅I've completed a comprehensive analysis of this PR that migrates synchronous encryption/decryption calls to asynchronous versions across the codebase. Todo List:
Review SummaryOverall Assessment: This is a well-executed migration that systematically converts synchronous Key Strengths ✅
Areas of Excellence
Minor Observations
Code Quality
RecommendationAPPROVE ✅ This is a high-quality migration that:
The migration prepares the codebase for v2 encryption while maintaining stability for existing consumers. The approach is thorough, well-tested, and production-ready. Job Run: View run details |
Ticket: WCN-284
This pull request introduces a comprehensive migration from synchronous encryption and decryption methods to their asynchronous counterparts throughout the codebase, with a focus on improving support for v2 encryption. The changes affect key management, wallet operations, transaction verification, and API routes, ensuring better scalability and compatibility with modern cryptographic practices. Additionally, new async verification utilities are introduced, and related tests and error messages are updated accordingly.
Migration to Async Encryption/Decryption:
encryptanddecryptwithencryptAsyncanddecryptAsyncin wallet logic (lightning.ts,selfCustodialLightning.ts), UTXO coin and transaction verification, and Express API handlers to support v2 encryption and improve non-blocking behavior. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16]Async Key Verification Utilities:
verifyUserPublicKeyAsynctoverifyKey.tsand updated transaction and coin verification logic to use the new async method, while preserving the synchronous version for backward compatibility. [1] [2] [3] [4] [5] [6] [7]Refactoring and API Consistency:
Test and Error Message Updates:
Backward Compatibility and Deprecation:
These changes collectively modernize the cryptographic operations in the codebase, preparing it for future enhancements and improved security practices.