diff --git a/src/services/service.ts b/src/services/service.ts index a682949..76322cf 100755 --- a/src/services/service.ts +++ b/src/services/service.ts @@ -1715,6 +1715,11 @@ export default class Services { // Restaurer le device complet avec toutes les informations (birthday, last_scan, clés) this.restoreDevice(deviceFromDb); + // Forcer la régénération du wallet pour que le SDK reconnaisse les clés + console.log('🔧 Forcing wallet regeneration to update SDK keys...'); + const wallet = await this.sdkClient.dump_wallet(); + console.log('✅ Wallet regenerated with updated keys'); + // Vérifier que le birthday est bien préservé après restauration const deviceAfterRestore = this.dumpDeviceFromMemory(); if (deviceAfterRestore?.sp_wallet?.birthday !== deviceFromDb.sp_wallet.birthday) { @@ -2344,7 +2349,7 @@ export default class Services { } else { throw new Error(`Final save verification failed: expected last_scan ${this.currentBlockHeight}, got ${finalDevice?.sp_wallet?.last_scan}`); } - + // Request faucet tokens for new wallet console.log('🪙 Requesting faucet tokens for new wallet...'); try { @@ -2354,7 +2359,7 @@ export default class Services { console.warn('⚠️ Failed to request faucet tokens:', error); // Don't throw - this is not critical for wallet creation } - + console.log('✅ updateDeviceBlockHeight completed successfully for new device'); return; } catch (e) {