feat: enhance multisig recovery with split AWM support#251
Conversation
|
@claude review and get_issue the ticket on linear for more context |
|
Claude finished @danielpeng1's task —— View job Code Review for Split AWM Recovery Enhancement
SummaryThis PR implements a significant enhancement to the multisig recovery system by adding split AWM support - enabling two-phase recovery where user keys and backup keys can be managed by separate AWM instances. The implementation is well-architected and addresses both UTXO and EVM recovery flows with proper error handling and comprehensive testing. Key Strengths1. Excellent Architecture Design
2. Robust Error Handling
3. Comprehensive Test Coverage
Technical AnalysisAWM Recovery Handler (
|
Adds two-phase split-AWM recovery (user half-sign -> backup full-sign) for
recoveryandrecoveryConsolidations, for UTXO + EVM, local + external signing.multisigRecovery.ts: implementskeyToSign(user/backup) with runtime guards on the half-signed tx shape; external signing failures now throwBitgoApiResponseError(preserves upstream status) and reject EVM backup with a richhalfSignedobject (requires flattxHex).submitMultisigRecoveryJobgains asourcesparam; worker prefersawmBackupResponsewhen present, this is forward-compatible scaffolding.Tests
keyToSignisolation, half-signed-tx guards (400s).asyncEnabled(bridge not called).awmBackupResponsepreferred; malformed rejected. Utils:sourcesparam.testUtils:X-OSO-Sourceheader nock.Ticket: WCN-1082