From 681f622ef8026ec93381bfb43e421bba9041b680 Mon Sep 17 00:00:00 2001 From: thePR0M3TH3AN <53631862+PR0M3TH3AN@users.noreply.github.com> Date: Tue, 21 Jul 2026 21:28:38 -0400 Subject: [PATCH] Expand built-in vault/discovery relay lists for redundancy relay.nostr.band (shared by both lists) is currently unreachable, and publishAndVerify() enforces a fixed minAcks/minReadbacks=2 floor regardless of relay count -- so a 3-relay vault list had zero margin the moment one relay went down, surfacing as "Registration did not reach the required relay acknowledgement and readback quorum." Add nostr.wine and relay.snort.social to the vault list, and nostr-pub.wellorder.net to discovery, so losing any single relay no longer risks failing registration. Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_01DY9UMTuF43Ekc2U4E1eDwX --- packages/core/src/nostr/bootstrap.ts | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/packages/core/src/nostr/bootstrap.ts b/packages/core/src/nostr/bootstrap.ts index 0317535..922e58a 100644 --- a/packages/core/src/nostr/bootstrap.ts +++ b/packages/core/src/nostr/bootstrap.ts @@ -17,15 +17,24 @@ import { D_TAG_BOOTSTRAP_RELAYS, KIND_APP_DATA } from "./kinds.js"; export const MAINTAINER_PUBLIC_KEY_HEX = "0000000000000000000000000000000000000000000000000000000000000000".slice(0, 64); +// §15.6's publishAndVerify enforces a fixed floor (minAcks/minReadbacks = 2) +// regardless of how many relays are configured, so this list needs enough +// healthy redundancy that losing any one relay still clears that floor +// comfortably -- a 3-relay list has zero margin the moment one relay is +// unreachable, which is exactly what "add more vault relays" (the +// registration failure message) is telling operators to fix. export const BUILTIN_VAULT_RELAYS: readonly string[] = [ "wss://relay.damus.io", "wss://nos.lol", - "wss://relay.nostr.band" + "wss://relay.nostr.band", + "wss://nostr.wine", + "wss://relay.snort.social" ]; export const BUILTIN_DISCOVERY_RELAYS: readonly string[] = [ "wss://purplepag.es", - "wss://relay.nostr.band" + "wss://relay.nostr.band", + "wss://nostr-pub.wellorder.net" ]; /** Well-known static HTTPS fallback URLs for the signed relay-list document (§19.1). */