From ea5a8486b9c296aa8a065268177563b8be875b32 Mon Sep 17 00:00:00 2001 From: Gigi Date: Thu, 16 Oct 2025 22:15:02 +0200 Subject: [PATCH] fix: don't call connect() again on restored bunker signer - fromBunkerURI() already calls connect() with permissions during login - Calling connect() again breaks the connection state - Just call open() to ensure subscription is active - This matches the pattern in applesauce examples which don't reconnect - Log final signer status including relays for debugging --- src/App.tsx | 26 ++++++++++---------------- 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/src/App.tsx b/src/App.tsx index 7ced5d0e..050779d2 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -248,7 +248,8 @@ function App() { }) try { - // Ensure the signer is listening for responses + // Just ensure the signer is listening for responses - don't call connect() again + // The fromBunkerURI already connected with permissions during login if (!nostrConnectAccount.signer.listening) { console.log('[bunker] Opening signer subscription...') await nostrConnectAccount.signer.open() @@ -260,25 +261,18 @@ function App() { console.log('[bunker] ✅ Signer already listening') } - // Reconnect with permissions if not already connected - if (!nostrConnectAccount.signer.isConnected) { - console.log('[bunker] Reconnecting with permissions...') - const permissions = getDefaultBunkerPermissions() - console.log('[bunker] Permissions:', permissions) - await nostrConnectAccount.signer.connect(undefined, permissions) - console.log('[bunker] ✅ Reconnected successfully, status:', { - listening: nostrConnectAccount.signer.listening, - isConnected: nostrConnectAccount.signer.isConnected - }) - } else { - console.log('[bunker] ✅ Already connected') - } + console.log('[bunker] Final signer status:', { + listening: nostrConnectAccount.signer.listening, + isConnected: nostrConnectAccount.signer.isConnected, + remote: nostrConnectAccount.signer.remote, + relays: nostrConnectAccount.signer.relays + }) // Mark this account as reconnected reconnectedAccounts.add(account.id) - console.log('[bunker] 🎉 Full reconnection complete') + console.log('[bunker] 🎉 Signer ready for signing') } catch (error) { - console.error('[bunker] ❌ Failed to reconnect:', error) + console.error('[bunker] ❌ Failed to open signer:', error) } } })