From 484e26fa15c9e216b3e7ff94263f77a0e706c459 Mon Sep 17 00:00:00 2001 From: thePR0M3TH3AN <53631862+PR0M3TH3AN@users.noreply.github.com> Date: Mon, 20 Oct 2025 08:51:43 -0400 Subject: [PATCH] Request nip44 permissions by default --- js/nostr.js | 6 ++++-- tests/nostr-login-permissions.test.mjs | 8 ++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/js/nostr.js b/js/nostr.js index 45c9e580..b3a85f16 100644 --- a/js/nostr.js +++ b/js/nostr.js @@ -166,14 +166,16 @@ const WATCH_HISTORY_REPUBLISH_JITTER = 0.25; const NIP07_PERMISSIONS_STORAGE_KEY = "bitvid:nip07:permissions"; export const DEFAULT_NIP07_PERMISSION_METHODS = Object.freeze([ + // Core auth + relay metadata "get_public_key", "sign_event", + "read_relays", + "write_relays", + // Encryption helpers — request both legacy NIP-04 and modern NIP-44 upfront "nip04.encrypt", "nip04.decrypt", "nip44.encrypt", "nip44.decrypt", - "read_relays", - "write_relays", ]); const viewEventPublishMemory = new Map(); diff --git a/tests/nostr-login-permissions.test.mjs b/tests/nostr-login-permissions.test.mjs index 18046989..779c3814 100644 --- a/tests/nostr-login-permissions.test.mjs +++ b/tests/nostr-login-permissions.test.mjs @@ -200,6 +200,10 @@ test("NIP-07 decrypt reuses cached extension permissions", async () => { storedSet.has("nip04.decrypt"), "stored permissions should include nip04.decrypt", ); + assert.ok( + storedSet.has("nip44.encrypt"), + "stored permissions should include nip44.encrypt", + ); assert.ok( storedSet.has("nip44.decrypt"), "stored permissions should include nip44.decrypt", @@ -213,6 +217,10 @@ test("NIP-07 decrypt reuses cached extension permissions", async () => { freshClient.extensionPermissionCache.has("nip04.decrypt"), "fresh client should hydrate nip04.decrypt from storage", ); + assert.ok( + freshClient.extensionPermissionCache.has("nip44.encrypt"), + "fresh client should hydrate nip44.encrypt from storage", + ); assert.ok( freshClient.extensionPermissionCache.has("nip44.decrypt"), "fresh client should hydrate nip44.decrypt from storage",