feat(sdk-core): wire eddsaMPCv2Callbacks into generateWalletWithExternalSigner#9200
Conversation
7997d9a to
5a10bf9
Compare
5a10bf9 to
8cd823e
Compare
|
Claude finished @Marzooqa's task —— View job Code Review for EdDSA MPCv2 Callbacks IntegrationTodo List:
Review SummaryThis PR successfully implements EdDSA MPCv2 callback support in the external signer flow. The implementation is well-structured, includes comprehensive test coverage, and maintains backward compatibility while adding the new MPCv2 functionality. ✅ Strengths
|
8cd823e to
417f154
Compare
a6d8642 to
78ad370
Compare
417f154 to
53557cb
Compare
78ad370 to
7adb2e8
Compare
…nalSigner Add eddsaMPCv2Callbacks field to GenerateWalletWithExternalSignerOptions and add routing in generateMpcWalletWithExternalSigner to dispatch to EddsaMPCv2Utils.createKeychainsWithExternalSigner when the field is set. Changes: - iWallets.ts: add eddsaMPCv2Callbacks?: EddsaMPCv2KeyGenCallbacks to GenerateWalletWithExternalSignerOptions - wallets.ts: update hasMpcCallbacks to include eddsaMPCv2Callbacks; add an EdDSA MPCv2 branch that calls EddsaMPCv2Utils; guard against passing both eddsaMPCv2Callbacks and eddsaCallbacks simultaneously - walletsExternalSigner.ts: new test block covering routing to EddsaMPCv2Utils, mutual-exclusion rejection, no-callbacks rejection, and MPCv1 path unchanged verification Ticket: WCI-917 Session-Id: 23a5c77a-c909-407f-bf3e-a820c9e88aea Task-Id: 38b68db1-6599-4911-9635-d408663b0d82
53557cb to
6423c27
Compare
What
eddsaMPCv2Callbacks?: EddsaMPCv2KeyGenCallbackstoGenerateWalletWithExternalSignerOptionsiniWallets.tshasMpcCallbacksinwallets.tsto includeeddsaMPCv2CallbackssocreateKeychainCallback+ MPCv2 callbacks is rejectedgenerateMpcWalletWithExternalSigner: dispatches toEddsaMPCv2Utils.createKeychainsWithExternalSignerwheneddsaMPCv2Callbacksis set; rejects if botheddsaMPCv2CallbacksandeddsaCallbacksare provided; falls through to the existing MPCv1 path otherwiseEddsaMPCv2Utils, mutual-exclusion rejection, no-callbacks rejection, MPCv1 path unchangedWhy
EddsaMPCv2KeyGenCallbackstype (WCI-894) into the external signer flow so consumers can opt into MPCv2 by passingeddsaMPCv2CallbacksDependencies
wci-894-define-eddsa-mpcv2-keygen-callback-typescontains theEddsaMPCv2KeyGenCallbackstype definitions (WCI-894)EddsaMPCv2Utils.createKeychainsWithExternalSigneris added by WCI-916; the implementation uses anas anycast until that lands and the type annotation will resolve when these branches are merged togetherTest plan
walletsExternalSigner.tspassgenerateWalletWithExternalSigner - EdDSA MPCv2 TSSdescribe block (7 tests) all passeddsaMPCv2Callbacksroutes toEddsaMPCv2Utils.createKeychainsWithExternalSignerwith correct paramseddsaMPCv2Callbacks+eddsaCallbackstogether is rejectededdsaCallbacksstill routes to the MPCv1EddsaUtilspath (not MPCv2)createKeychainCallback+eddsaMPCv2Callbackstogether is rejectedTicket: WCI-917