From bf3d82d2663e06631d00a64238336d539d34476f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Lohrer?= Date: Wed, 15 Apr 2026 15:12:30 +0200 Subject: [PATCH] spa(task 3 polish): config-konstanten immutable, klarere timeout-doku MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - FALLBACK_READ_RELAYS als `as const` tuple (kein mutables Array). - BOOTSTRAP_RELAY als erster Eintrag referenziert statt dupliziert. - Präzisere JSDoc zu HABLA_BASE (klarmacht, dass /a/ baked-in ist). - Timeout-Kommentare trennen soft (per-Relay) vs. hard (Page-Budget). Code-Quality-Nitpicks aus Task 3 Review adressiert. npm run check grün. Co-Authored-By: Claude Opus 4.6 (1M context) --- app/src/lib/nostr/config.ts | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/app/src/lib/nostr/config.ts b/app/src/lib/nostr/config.ts index 953cbe8..4cce17b 100644 --- a/app/src/lib/nostr/config.ts +++ b/app/src/lib/nostr/config.ts @@ -12,18 +12,26 @@ export const AUTHOR_PUBKEY_HEX = /** Bootstrap-Relay für das initiale Lesen von kind:10002 */ export const BOOTSTRAP_RELAY = 'wss://relay.damus.io'; -/** Fallback, falls kind:10002 nicht geladen werden kann */ +/** + * Fallback, falls kind:10002 nicht geladen werden kann. + * Bootstrap-Relay ist bewusst als erster Eintrag Teil der Liste — ein Ort der Wahrheit. + */ export const FALLBACK_READ_RELAYS = [ - 'wss://relay.damus.io', + BOOTSTRAP_RELAY, 'wss://nos.lol', 'wss://relay.primal.net', 'wss://relay.tchncs.de', 'wss://relay.edufeed.org', -]; +] as const; -/** Habla.news-Deep-Link-Basis (für Nutzer ohne JS oder wenn Events fehlen) */ +/** + * Habla.news-Route für Addressable Events — URL endet auf `/a/`, der + * vollständige Deep-Link wird durch Anhängen des `naddr1…`-Bech32 gebildet. + */ export const HABLA_BASE = 'https://habla.news/a/'; -/** Timeout-Werte in ms */ +/** Soft-Timeout: einzelne Relay-Abfrage darf nicht länger als diese Dauer blockieren. */ export const RELAY_TIMEOUT_MS = 8000; + +/** Hard-Timeout: Page-Budget, nach dem eine Route-Abfrage endgültig abbricht. */ export const RELAY_HARD_TIMEOUT_MS = 15000;